如何使用struts创建相同接口的多个视图?

时间:2010-12-06 07:48:17

标签: struts2 struts mobile-website

基本上,我正在创建一个可通过移动设备和桌面访问的网站。所以我想创建2个视图。

我的操作代码保持不变。其他一切都是一样的。只是jsp改变了两者。我怎么能通过struts 1/2来做到这一点?

2 个答案:

答案 0 :(得分:4)

您还可以通过添加第三方jar “deli.jar”并使用其Profile,Workspace等类来检测请求网址的移动设备类型。在struts中,您可以通过在xhtml中进行移动用户查看页面,如下所示 <html:html xhtml="true"

但这仅支持启用了xhtml浏览器的手机。

希望这会对你有所帮助。

答案 1 :(得分:0)

您需要传入一个查询参数或标题中的某些内容,这些参数将在两个请求之间进行distingush。例如:http://yoursite.com/render.action?type=mobile

最后在你的行动中:

if ("mobile".equals(type)){
  return "mobile";
}else { 
  return ActionSupport.SUCCESS;
}

在你的struts中有一个新的结果类型

 <result name="success">/WEB-INF/jsp/somethign/web.jsp></result>
 <result name="success">/WEB-INF/jsp/somethign/mobile.jsp></result>