Java 如何使用OGNL调用操作方法
如何使用OGNL调用操作方法Java 如何使用OGNL调用操作方法,java,jsp,struts2,ognl,struts2-interceptors,Java,Jsp,Struts2,Ognl,Struts2 Interceptors,如何使用OGNL调用操作方法 helloAction.java 公共字符串getQuote() { 返回“不要想,只要做”; } success.jsp quote(): struts.xml 未调用此quote()方法。我正在使用xwork-2.0.1.jar和ognl-2.6.11.jar 未调用此quote()方法。我正在使用xwork-2.0.1.jar和ognl-2.6.11.jar 你在行动中没有那种方法。如果您创建它: public String quote() { 并使用
helloAction.java
公共字符串getQuote()
{
返回“不要想,只要做”;
}
success.jsp
quote():
struts.xml
未调用此quote()
方法。我正在使用xwork-2.0.1.jar和ognl-2.6.11.jar
未调用此quote()方法。我正在使用xwork-2.0.1.jar和ognl-2.6.11.jar
你在行动中没有那种方法。如果您创建它:
public String quote() {
并使用普通OGNL方法调用语法:
<s:property value="%{quote()}" />
然后根据需要调用它
有关详细信息和语法,请阅读
未调用此quote()方法。我正在使用xwork-2.0.1.jar和ognl-2.6.11.jar
你在行动中没有那种方法。如果您创建它:
public String quote() {
并使用普通OGNL方法调用语法:
<s:property value="%{quote()}" />
然后根据需要调用它
有关详细信息和语法,您可以阅读。您的原始语法几乎是正确的–只需去掉括号
<s:property value="%{quote}" />
当函数不带参数时,最好使用JavaBean约定。您的原始语法几乎是正确的–只需去掉参数即可
<s:property value="%{quote}" />
当函数不带参数时,JavaBean约定是首选。应该是,不是我,我一般认为它应该是JSP中的首选实践,因为这种机制总是可用的。但“首选”的纳粹分子可能想要联系。您有struts文档的写权限吗?你只需要添加一个这样的文档,然后把链接放在这里,那会很有趣。@Quaternion我曾经有人责怪我提供了一个书中没有的观点,所以我把它放在我的书中,这样我就可以引用我自己了。我必须读完那本书,这样我才能引用更多;)@RomanC不,问题是如何调用一个特定的操作方法,它不需要使用方法调用语法,因为它是一个getter。@DaveNewton您最好阅读这个问题,如何调用一个操作方法,然后不调用这个quote()方法。你知道它应该调用哪个方法吗?如果它使用属性名来调用堆栈中某个bean上的getter,那么它不会调用OGNL中的方法。OGNL有一个用于调用对象上的方法的语法method()
。它不是我,我一般认为它应该是JSP中的首选实践,因为这种机制总是可用的。但“首选”的纳粹分子可能想要联系。您有struts文档的写权限吗?你只需要添加一个这样的文档,然后把链接放在这里,那会很有趣。@Quaternion我曾经有人责怪我提供了一个书中没有的观点,所以我把它放在我的书中,这样我就可以引用我自己了。我必须读完那本书,这样我才能引用更多;)@RomanC不,问题是如何调用一个特定的操作方法,它不需要使用方法调用语法,因为它是一个getter。@DaveNewton您最好阅读这个问题,如何调用一个操作方法,然后不调用这个quote()方法。你知道它应该调用哪个方法吗?如果它使用属性名来调用堆栈中某个bean上的getter,那么它不会调用OGNL中的方法。OGNL有一个用于调用对象上的方法的语法method()
。对我来说不起作用。调用%{XXX}
和调用${XXX}
是否相同?这不一样。看看你们是否需要知道区别。对我来说不起作用。调用%{XXX}
和调用${XXX}
是否相同?这不一样。看看你们是否需要知道区别。