浏览 11653 次
锁定老帖子 主题:Struts2 返回 XML
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-12-17
但是项目用的是Struts2,又不想用Servlet,于是上网找Struts2返回XML的方法,有幸在某国外Blog的找到一篇此类文章,经本人亲自测试成功,现贴出与广大博友分享。 郁闷一:JavaEye的用密码是怎么管理的 我每次登陆都要找回一次密码,找回后的第一件事是将密码改为132456789,是不是密码不充许设为简单数字,但是也没提示。 郁闷二:XML代码贴出后没法看,这次也不贴了,附件中有完整打包源代码,也可做为Struts2入门Demo,经测试在Struts2.0.8和Struts2.0.11下均可正常运行,只需替换相应的jar包。 关于本例的几点说明: 1.Struts2的请求后缀设定为*.test 2.在Struts2官方文档中只介绍了使用xsl模板返回XML,本例使用XSLT result,但是没有使用XSL模板文件 3.本例中共有四个Action 分别为:mainAction,mainAction_1,mainAction_2,mainAction_3,其中第一个没有指定“exposedValue”参数;其它三个分别显示了指定不同数据类型和多种数据类型时的返回XML情况 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-12-18
非常感谢您的分享!@
|
|
返回顶楼 | |
发表时间:2007-12-18
我下载下来之后发现mainAction_1,mainAction_2,mainAction_3
不存在啊 |
|
返回顶楼 | |
发表时间:2007-12-18
xiquwgugou 写道 我下载下来之后发现mainAction_1,mainAction_2,mainAction_3 有的 在src 目录下的 struts.xml 里面配置的
不存在啊 |
|
返回顶楼 | |
发表时间:2008-02-01
hanyoud 写道 关于本例的几点说明: 1.Struts2的请求后缀设定为*.test 2.在Struts2官方文档中只介绍了使用xsl模板返回XML,本例使用XSLT result,但是没有使用XSL模板文件 3.本例中共有四个Action 分别为:mainAction,mainAction_1,mainAction_2,mainAction_3,其中第一个没有指定“exposedValue”参数;其它三个分别显示了指定不同数据类型和多种数据类型时的返回XML情况 ---------------------------------------------------------------- 你是不是发错了...你那里写着完整的 可是我发布以后就一个..页面可以显示 我现在需要 一个二级联动的例子 ....希望你吧代码传完整 谢谢... |
|
返回顶楼 | |
发表时间:2008-02-17
有问题没成功 问题和官方的showcase例子一样 返回个xml就这么难啊... (初学还没看源代码...)
到现在我还是 PrintWriter pw = null; HttpServletResponse response = ServletActionContext.getResponse(); //取response对象 response.setContentType("text/xml;charset=utf-8"); response.setHeader("Cache-Control","no-cache"); pw = response.getWriter(); pw.print("<root>"); pw.print("<msg>sssss</msg>"); pw.print("</root>"); pw.close(); pw = null; return null; 真不爽.... 有知道的给回个... |
|
返回顶楼 | |
发表时间:2008-03-02
<result type="freeMarker">option.ftl</reslut>
可以很简单的实现啊 |
|
返回顶楼 | |
发表时间:2008-11-19
此代码实现还是会出现乱码问题,在返回时还需要设置如下:
public String methodOne() throws Exception { HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("text/xml;charset=UTF-8"); response.setHeader("Cache-Control", "no-cache"); return SUCCESS; } 这样,才可以安心的返回,这个用户的系统和浏览器的语言相关的。 |
|
返回顶楼 | |