如何在JSTL中调​​用java方法?

时间:2014-08-08 08:03:52

标签: java jstl method-call

这可能是重复的问题。

我只想调用不是getter或setter方法的方法。 xyz类的makeCall(someObj," stringvalue")。

Java Class

Class XYZ{

    public String makeCall("someValue1","stringValue2"){

    //some logic here

    }
}

JSTL

<jsp:userBean id="xyz" class="com.XYZ"/>
${xyz.makeCall("hello","Friend")}

3 个答案:

答案 0 :(得分:3)

只需使用<jsp:useBean>创建该类的对象,然后使用JavaServer Pages Standard Tag LibraryExpression Language调用该方法,该方法更易于使用且不易出错。

示例代码:

<jsp:useBean id="test" class="com.x.y.z.XYZ"/>

${test.methodXYZ(object,"myString")}

详细了解可能对您有帮助的Implicit Objects

答案 1 :(得分:1)

试试这个:

<c:out value="${XYZbean.makeCall(someObjBean, 'value')}" />

答案 2 :(得分:1)

要解决此问题,我们需要创建您自己的标记。 (在.tld文件中)

并且需要为此标记编写一个java类。

在此之后,您可以在您自己的类中调用方法,并将结果设置为pageCotext以在jsp上对其进行检索。