我有一个现有的网络应用程序,它使用Struts进行前进...
我正在尝试创建这个现有网络应用程序的移动版本(主要是UI设计会有所不同)。
现在这个应用程序正在使用Struts 2进行前进动作..
我的问题是我可以将此Struts XML扩展为基于桌面/移动设备的重定向。 例如假设我有desktop.jsp和mobile.jsp ......现在我在服务器级别检测用户的来源并在会话中获取该信息。我可以更新我的stuts-config XML,这样我就是唯一的东西需要改变的是基于用户来自何处的“转发”JSP URL? 我期待Action没有变化......只有JSP的前向URL。
请注意,这个问题不是关于“如何检测”,而是更多关于我们检测到浏览器并从服务器获取该信息后采取的方法。
谢谢。
答案 0 :(得分:0)
您可以将请求转发给另一个操作,该操作将处理要加载的移动特定数据,并且可能会产生不同的结果。一个结果指向desktop.jsp其他指向mobile.jsp。 样品:
public String execute(){ 如果(isMobile()) 返回“移动”; 否则返回“桌面”; }
答案 1 :(得分:0)
更好的选择是始终在此处添加Filter
。并且如何发现你知道它。
跟踪标题的所有请求检查,以确定它是否来自移动设备?并根据它提出要求。