如何解决如何在服务器和Weld / CDI上结合GWTRPC?
| GWT与CDI(接缝/焊缝)集成下的问题并没有引起足够的重视,因此我尝试了第二次。在服务器端,我想使用Weld / CDI(我现在正在使用Guice)。在Guice中,我有一个RemoteServiceServlet的子类,该子类在一个模块中命名,该模块本身在Guiceservletcontextlistener中激活。是否有人编写过某个类来注册RemoteServiceServlet,以便GWT RPC端点从Weld获取实例?解决方法
如果使用CDI(作为EE6容器的一部分),则可以使用@WebServlet注释GWT RemoteServiceServlet,它们将成为CDI bean。 @Inject可以在它们上工作,甚至@PersistenceContext和@Resource等其他东西,如果配置正确(EE服务器不需要任何配置,对于其他Web容器,请参阅Weld文档,它们需要在web.xml中配置一些侦听器)。我多次使用这种架构。
您在另一个问题中提到的内容(\“显然CDI不适用于从javax.servlet.Servlet派生的类。\”)不再是正确的,正如评论者还指出的那样,该问题已在1.1。
我现在看到的唯一问题是,如果我尝试向@WebServlet添加拦截器,则加载将失败,因为GWT RemoteServiceServlet声明了一些最终方法(getSerializationPolicy),因此无法对其进行代理。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。