我正在将我的应用程序从Struts-1迁移到Struts-2。
下面的代码使用Struts-1 iterate标记遍历集合"myFormBeanCollection“。
这里的myFormBean是表单bean,myFormBeanCollection是myFormBean的一个属性,它的类型是ArrayList,这个列表包含"com.xyz.SomeClass“类型的对象。
接下来是一个scriptlet元素,然后是一些bean:write...
在scriptlet代码中: getDate()方法在"com.xyz.SomeClass“中定义。
<logic:iterate name="myFormBean" property= "myFormBeanCollection" id="someId" type="com.xyz.SomeClass">
<%
String startDate = dateFormat.format(someId.getDate());
%>
<td width="13%" align="center">
<%=startDate%>
</td>
<td width="8%" align="center">
<bean:write name="someId" property="prop_1" />
</td>
</logic:iterate>如何将这段特定的代码迁移到Struts-2。
我尝试使用Struts2迭代器标记。
但无法成功编写scriptlet。不确定如何调用脚本小程序中的"getDate()“方法,就像上面的代码(Struts1)一样。
<s:iterator value="myFormBean.myFormBeanCollection">
<%
String startDate = dateFormat.format(""); // Not sure on how to call "getDate()" method as how it was done in above code(Struts-1).
%>
<s:property value="countryName" />,
</s:iterator>任何帮助都将不胜感激。
谢谢,Sunil
发布于 2018-06-29 18:46:39
你不会的,你会用the tag
<s:date name="date" format="whatever" />公平地说,您也不需要在原始版本中使用scriptlet --在JSP中使用Java所做的工作越少越好:只使用HTML和标记。
与其盲目地重写,不如尝试进行结构和技术上的改进。
https://stackoverflow.com/questions/51096170
复制相似问题