websocket+struts2的实现

amis 2014-08-29 04:57:15
在没有websocket之前,在web做进度条是比较麻烦的,现在有websocket就简单多了

背景:我用strsuts2做了一个很简单的web project。前台页面提交参数到后面的action中做处理。现在我想集成websocket到
后台的处理类。

问题1:如何在用strust2(extends ActionSupport)的同时,这个类也作为websocket的端点(@ServerEndpoint(value = "/websocket")
实时返回处理类的进度,给前台页作为参数,显示进度条。

问题2:如果直接将这2个东西集成在一起的话,会导致websocket无法处理来至/wsServlet的请求。因为strust2的过滤器包揽了所有的请求。如果用<constant name="struts.action.excludePattern" value="/wsServlet"></constant> 过滤掉不处理的url的话。那么这个作为strust2作为核心的处理的action又不起作用。头痛
...全文
753 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_16431461 2016-09-05
  • 打赏
  • 举报
回复
引用 9 楼 u012682006 的回复:
你也发现冲突了,问题就已经解决一半了,重新配置structs过滤器就行了,你可以在web.xml重重新定义structs,方法很多种给你一种简单明了的 <!-- Struts2配置 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.html</url-pattern> </filter-mapping> service 和 structs 不兼容已经不是一天两天的事情了~
可是这样做的话,websocket的方法里好像不能获取struct2里面存的session的值
爱谈 2015-12-23
  • 打赏
  • 举报
回复
你也发现冲突了,问题就已经解决一半了,重新配置structs过滤器就行了,你可以在web.xml重重新定义structs,方法很多种给你一种简单明了的 <!-- Struts2配置 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.html</url-pattern> </filter-mapping> service 和 structs 不兼容已经不是一天两天的事情了~
qq_20760647 2014-09-16
  • 打赏
  • 举报
回复
最近正在做Web,支持哈,顶
枫醉秋 2014-09-16
  • 打赏
  • 举报
回复
引用 5 楼 amis 的回复:
[quote=引用 4 楼 scqlmm 的回复:] [quote=引用 楼主 amis 的回复:] 在没有websocket之前,在web做进度条是比较麻烦的,现在有websocket就简单多了 背景:我用strsuts2做了一个很简单的web project。前台页面提交参数到后面的action中做处理。现在我想集成websocket到 后台的处理类。 问题1:如何在用strust2(extends ActionSupport)的同时,这个类也作为websocket的端点(@ServerEndpoint(value = "/websocket") 实时返回处理类的进度,给前台页作为参数,显示进度条。 问题2:如果直接将这2个东西集成在一起的话,会导致websocket无法处理来至/wsServlet的请求。因为strust2的过滤器包揽了所有的请求。如果用<constant name="struts.action.excludePattern" value="/wsServlet"></constant> 过滤掉不处理的url的话。那么这个作为strust2作为核心的处理的action又不起作用。头痛
现在js插件那么多,没必要使用websocket的[/quote] ----------------------------------------------------------------------------- 求指引[/quote] 像jQuery UI http://jqueryui.com/progressbar/ZL可以参照一下
枫醉秋 2014-09-16
  • 打赏
  • 举报
回复
况且websocket现在支持的还不是很全面,慎重考虑一下
amis 2014-09-16
  • 打赏
  • 举报
回复
引用 4 楼 scqlmm 的回复:
[quote=引用 楼主 amis 的回复:] 在没有websocket之前,在web做进度条是比较麻烦的,现在有websocket就简单多了 背景:我用strsuts2做了一个很简单的web project。前台页面提交参数到后面的action中做处理。现在我想集成websocket到 后台的处理类。 问题1:如何在用strust2(extends ActionSupport)的同时,这个类也作为websocket的端点(@ServerEndpoint(value = "/websocket") 实时返回处理类的进度,给前台页作为参数,显示进度条。 问题2:如果直接将这2个东西集成在一起的话,会导致websocket无法处理来至/wsServlet的请求。因为strust2的过滤器包揽了所有的请求。如果用<constant name="struts.action.excludePattern" value="/wsServlet"></constant> 过滤掉不处理的url的话。那么这个作为strust2作为核心的处理的action又不起作用。头痛
现在js插件那么多,没必要使用websocket的[/quote] ----------------------------------------------------------------------------- 求指引
枫醉秋 2014-09-16
  • 打赏
  • 举报
回复
引用 楼主 amis 的回复:
在没有websocket之前,在web做进度条是比较麻烦的,现在有websocket就简单多了 背景:我用strsuts2做了一个很简单的web project。前台页面提交参数到后面的action中做处理。现在我想集成websocket到 后台的处理类。 问题1:如何在用strust2(extends ActionSupport)的同时,这个类也作为websocket的端点(@ServerEndpoint(value = "/websocket") 实时返回处理类的进度,给前台页作为参数,显示进度条。 问题2:如果直接将这2个东西集成在一起的话,会导致websocket无法处理来至/wsServlet的请求。因为strust2的过滤器包揽了所有的请求。如果用<constant name="struts.action.excludePattern" value="/wsServlet"></constant> 过滤掉不处理的url的话。那么这个作为strust2作为核心的处理的action又不起作用。头痛
现在js插件那么多,没必要使用websocket的
amis 2014-09-16
  • 打赏
  • 举报
回复
到底能不能做到的啊?
amis 2014-09-03
  • 打赏
  • 举报
回复
upupupupupupupup
amis 2014-08-30
  • 打赏
  • 举报
回复
顶上去啊不要沉,不一定是具体做法,思路也可以的

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧