问题标签 [servlet-3.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java EE:在这种情况下使我的上下文属性线程安全是否明智?
在 Servlet 3.0 API 的帮助下,我正在为我的网站实现一个动态通知系统(如 Facebook)。我计划支持此功能的结构是:
- 在每个页面加载时,向服务器发送一个 XMLHTTP“get”请求
- 允许服务器从这些“get”请求创建 AsyncContext 对象,并将它们存储在由用户的网站 ID 键入的应用程序范围的地图中
- 每当用户参与产生通知的操作时,查询应用程序范围的地图以获取用户朋友的 ID,并使用存储在那里的 AsyncContext 对象,将通知发送给每个朋友。
- 每个朋友都会收到通知。
我的问题是:是否有必要使此地图成为线程安全的?在最坏的情况下,代表“通知发送用户”的函数会将通知发送到地图中过时的异步上下文,或者是因为它对应的用户当前正在切换页面并且尚未发送新的 XMLHTTP 请求,或已注销。
然而,在每次页面加载时,我也有代码来检索数据库中比“上次检查日期”更新的所有通知,因此在页面加载时,通知用户不依赖于动态通知系统。因此,如果用户正在切换页面,他仍然会收到通知(显然,如果用户退出,通知的概念是不相关的)。
鉴于此信息,是否有任何场景需要地图是线程安全的?
java - Servlet 3.0:无法发送异步响应?
我无法为用户建立 AsyncContexts 并使用它们向他们推送通知。在页面加载时,我有一些 jQuery 代码来发送请求:
在“TestServlet”中,我在 doPost 方法中有以下代码:
但是,根据 Opera Dragonfly(一种调试工具,如 Firebug),似乎服务器在请求发送后大约 30000 毫秒发送了 HTTP 500 响应。
使用 userAsyncContext.getResponse().getWriter().print(SOME_JSON) 创建并在 HTTP 500 响应之前发送的任何响应都不会被浏览器接收,我不知道为什么。仅当处理 AsyncContext 的“if”语句中的所有代码都不存在时,浏览器才会接收使用常规响应对象发送响应 (response.print(SOME_JSON))。
有人可以帮我吗?我有一种感觉,这是由于我对异步 API 的工作原理有误解。我认为我可以将这些 AsyncContexts 存储在全局映射中,然后检索它们并使用它们的响应对象将内容推送给客户端。但是,似乎 AsyncContexts 不能写回客户端。
任何帮助将不胜感激。
java - Servlet 安全注解错误
我已经使用编程方法编写了登录页面,但是当代码具有角色时它不会成功
网页.xml:
glassfish.web.xml :
问题:@ServletSecurity(@HttpConstraint(transportGuarantee= ServletSecurity.TransportGuarantee.NONE, rolesAllowed={"User"}))
- 为什么当我写了rolesAllowed 时,它显示了内部服务器错误HTTP 500 状态消息?
服务器日志:
- 为什么当我有 TransportGuarantee.CONFIDENTIAL 时,它说 SSL 错误?
服务器日志
请帮忙。
谢谢。
jetty - Jetty Maven Plugin 8.0.0.M3 是否支持所有 Servlet 3?
我的 web.xml 中有以下内容:
然而,根据 OWASP 的 Zed 攻击代理 (https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project),cookie 仍然由 Spring Security 设置,没有 httpOnly 或安全标志。
如果我在 Tomcat 7 中部署相同的应用程序,它似乎会遵守 web.xml 中的这些设置。
java - 使用 servlet 3.0 的 JBoss 6 的会话安全功能存在问题
我们将应用程序从 JBoss 5 迁移到 JBoss6,其中一个主要原因是利用了 servlet 3.0 的新特性。除了 JBoss 6 和 servlet 3.0 的一项新特性之外,一切都运行良好:将会话 cookie 设置为仅通过安全通道传输,即使请求是通过纯 HTTP 发出的。这对我们来说是一个非常重要的安全功能,通过添加
在 web.xml 中。这是我们 web.xml 的一部分:
当我们删除
一切正常。当它在那里时,即使在安全页面 (HTTPS) 或不安全页面 (HTTP) 上,也会为每个请求生成一个新的 jsessionid。此外,登录不起作用,因为在使用安全凭据登录后,用户被重定向回登录页面。
我想这可能也是 Tomcat 7 的一个问题,因为它也使用 servlet 3.0 规范。任何建议将不胜感激。
问候
java - 我的服务器运行什么版本的 java Sevlets
看这里: http: //download.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getPart (java.lang.String )
它说支持来自 HttpServletRequest 的 getPart “自:Servlet 3.0”。
我怎么知道这是否适合我?是我正在运行的tomcat版本吗?如果是这样,我应该有什么版本?
servlets - Tomcat 7 的 @WebServlet 注释
在我的应用程序中,我有一个 servlet,它在web.xml中定义如下:
在使用 Tomcat 7 之后,我想使用@WebServlet
可以完成这项工作的注释。
这是我的做法:
它不起作用。有人可以告诉我我做错了什么吗?
jsf - FacesServlet Servlet 3.0 异步支持
JSF 2.0 中的 FacesServlet 是否支持 servlet 3.0 异步特性?
servlets - JBoss AS7:ServletContextListener#contextInitialized 在 Servlet 实例化后调用
我正在尝试在新的 JBoss AS7 (Everything) Final 上部署我的 web 服务(最初在 JBoss AS5 上运行)。
问题是我使用了 ServletContextListener 来初始化我的环境(fe 来初始化资源管理)。但是当我尝试在 JBoss AS 7 上部署 war 文件时,配置的 Servlet 在调用侦听器的 #contextInitialized-method 之前被实例化(因为找不到强制资源,所以会出现异常)。
我的听众:
我的 web.xml:
有人能解释一下为什么在 servlet 实例化之前没有调用监听器(也许有一个可能的解决方法)或者知道我做错了什么吗?PS.:我尝试将侦听器实现为 Servlet 并将启动时加载设置为 0,但 JBoss AS7 说我已经声明了在这种情况下我不想要的 servlet 映射。
谢谢你的帮助!
tomcat7 - Tomcat 7 - Servlet 3.0:常量池中的字节标记无效
- Tomcat 7.0.16
- Java 1.6.0_22
- CentOS 5.6
我刚刚将 web.xml 切换到 servlet 3.0(从之前运行 2.4 的应用程序),现在我看到以下错误(为 org.apache.tomcat.util 启用了精细日志记录):
更新:刚刚尝试过tomcat 7.0.19 - 结果相同