如何在jsp中的java函数中传递Struts2属性标签作为参数?

xqnpmsa8  于 2022-12-16  发布在  Java
关注(0)|答案(3)|浏览(171)

我在jsp中将Struts2属性标记作为java函数中的参数传递时遇到了问题。我正在从jsp中调用一个类似这样的java函数,

<s:if test="%{DoSomething()}">

DoSomething()函数在Action类中,并且为迭代器中的每个记录调用。
问题是我想在函数DoSomething中传递这个属性<s:property value="userId"/>作为java字符串,如下所示。

<s:if test="%{DoSomething("<s:property value="userId">/)}">

有没有人能指导我,我怎么能做到这一点。我睁大眼睛,但没有发现任何东西。

5f0d552i

5f0d552i1#

<s:if test="%{DoSomething(userId)}">
6rqinv9w

6rqinv9w2#

很可能你不需要像这样传递一个参数。你正在尝试从你的action类调用一个方法DoSomething。你想在你的action类中传递一个参数给这个方法。userId必须已经存在于你的action类中,否则你不能通过s:property标签得到它。你可以在你的action类的DoSomething方法中使用这个userId变量。

uqxowvwt

uqxowvwt3#

不能将Struts2标记用于另一个Struts2标记,可以使用表达式语言,先使用<s:set name="userId" value="userId" />,然后使用${userId}

相关问题