0

我正在编写一个 Struts 动作类,我从中生成一些 HTML 内容并将其添加到 ActionForm 中的一个字段中。如何在 JSP 文件中显示它。

4

2 回答 2

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 文件上,并减轻这种负担。

于 2012-04-18T07:21:44.937 回答
0

使用 JSP EL。

在行动中:

actionForm.setMyHtmlString(someHtml);

在 JSP 中:

Here is the HTML : ${fooBarActionForm.myHtmlString}

Struts 将操作表单存储为请求或会话属性。此属性的名称是在 struts-config.xml 文件中赋予操作表单的名称。

于 2012-04-18T07:01:19.313 回答