1

我有一个使用 Tiles 的 Struts2 应用程序。如何在动作映射中获得多种结果类型?因为我需要将 de 输出设置为 JSON 数据,并同时设置 Tiles。我试过了:

<action
    name="home"
    class="com.deveto.struts.actions.HomeAction" >
    <result name="success" type="tiles,json">tiles.home</result>
</action>

但这不起作用

4

3 回答 3

5

据我所知,没有办法同时返回多个东西。一旦所有的瓷砖都完成了,浏览器只会期待一件事,要么是 JSON,要么是 HTML。

我可以想到两种方法来做到这一点:双重请求(每种结果类型一种)或使用一种生成另一种(获取 JSON 并使用 JavaScript 在客户端构造 HTML)。

你想要完成什么,你需要这两个结果?

于 2011-06-23T16:10:19.037 回答
2

为 Tiles+JSON 创建一个新的结果类型并使用它......你不能在一个结果标签中定义 2 个结果类型。

于 2011-06-23T15:15:16.697 回答
0

如果你有 2 个不同的结果呢?!

<result name="successJSON" type="json"/>

<result name="successTiles" type="tiles">tiles.home</result>

然后在您的服务器代码中,您只需路由到正确的吗?!

于 2011-06-23T14:54:35.147 回答