我正在编写一个Struts动作类,我从中生成一些HTML内容并将其添加到ActionForm中的一个字段中。如何在JSP文件中显示它。
答案 0 :(得分:1)
我会考虑使用请求对象而不是修改ActionForm。您可以在JSP中使用逻辑和bean标记库,并尝试将HTML内容分开并将其全部放在JSP中。
例如,您可以在您的操作中使用:
request.setAttribute("message", "<STRONG>html message</STRONG>");
在你的JSP中有这样的东西:
<logic:present name="message">
<bean:write name="message" filter="false" />
</logic:present>
但我认为将html代码留给负责的JSP是更好的方法。一个动作必须做其他事情,并且是一个很好的设计,可以将这些任务分开。
请考虑以下行动:
request.setAttribute("message", "html message");
这适用于您的JSP:
<logic:present name="message">
<STRONG><bean:write name="message" /></STRONG>
</logic:present>
这样,您可以将所有html代码生成集中在JSP文件上,并释放该负担的行为。
答案 1 :(得分:0)
使用JSP EL。
在行动中:
actionForm.setMyHtmlString(someHtml);
在JSP中:
Here is the HTML : ${fooBarActionForm.myHtmlString}
操作表单由Struts存储为请求或会话属性。此属性的名称是struts-config.xml文件中为操作表单指定的名称。