【问题标题】:Invoking a parameterized method from Struts2 tag从 Struts2 标签调用参数化方法
【发布时间】:2014-04-02 22:48:58
【问题描述】:

//动作类代码:

public class SAStandAloneTables extends ActionSupport {

  public Object getValue(String pStr) {

    return "xyz";
  }

}

我正在尝试从 JSP 文件中的 Struts2 textField 标记的 name 属性调用 getValue(String) 方法(在我的 Struts2 Action 类中编写)。此方法接受 String 作为参数。我知道如何调用没有来自 Struts2 标记的任何参数的方法。但在这种情况下需要帮助。请帮我写出正确的 OGNL 表达式。抱歉,我无法在此处发布 JSP 代码。

【问题讨论】:

  • 请提供方法签名,以便提供工作示例。一般来说:'foo(6)' 和 'bar("my_name")' 是有效的表达式,但其他表达式可能更复杂。请考虑动作类应该编组和消化所需的信息,尽量在那里有大部分逻辑。如果您发现最初令人不快记住多个动作可以映射到单个动作类(并且可以提供不同的执行方法),那么应该提供足够的方法重用,同时仍然允许对特定视图进行独特的修改。
  • 带参数调用和不带参数一样,只需要传递即可。 :) 但是,如果没有您提供的任何代码,我们将无法帮助您。
  • 感谢您对我的问题表现出兴趣。我在我的问题中添加了代码。请看一看。

标签: struts2


【解决方案1】:

您可以通过以下方式调用您的操作:

<s:textfield name="%{getFieldName('txtName')}" value="amit Kumar" id="firstName">
</s:textfield>

和类似的方法

public Object getFieldName(String param){
    System.out.println("here1 .");
    return param;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-28
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 2012-12-23
    • 2012-12-07
    相关资源
    最近更新 更多