问题标签 [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.

0 投票
4 回答
9064 浏览

servlets - Servlet 3.0 中 AsyncContext.start(...) 的目的是什么?

Servlet API 说“AsyncContext.start”:

无效开始(java.lang.Runnable 运行)

使容器调度线程(可能来自托管线程池)以运行指定的 Runnable。容器可以将适当的上下文信息传播到 Runnable。

从这个描述中,不清楚当作业需要等待时它与优化线程使用的任务有何关系。

在“Servlet & JSP”中,Budi Kurniawan 给出了 Servlet 3.0 异步特性的示例,在他使用的地方AsyncContext.start,我将展示示例的简化版本:

在我遇到的大多数其他示例中,服务方法只是将 AsyncContext 存储在某处,并在其他地方进行处理(例如,由后台线程)。在此示例中,该作业看起来只是传递给另一个线程,该线程完成了请求。据我了解,现在它只是工作线程,浪费时间等待。

通过将工作(包括等待)从一个线程传递到另一个线程,您真的获得了一些东西吗?如果不是,那它的目的是AsyncContext.start(...)什么?

0 投票
1 回答
1149 浏览

jquery - 无法通过 jQuery POST 将参数传递给 Servlet

我正在使用 jQuery 发送 POST 请求:

我有一个简单的 servlet 来处理它:

但是 servlet 中的 requestMap 原来是空的。我究竟做错了什么?

编辑:忘了提到我从 JSF Facelet 页面调用这个脚本。不要问我为什么要手动发出 Ajax 请求,以及为什么要使用 servlet 来处理它们。说来话长。我知道这不是 JSF 的方式。

在@BalusC 回答之后,我尝试添加这样的 servlet 过滤器:

它奏效了!我不仅能够获得过滤器中的参数,而且还可以在 servlet 中访问它们!那么,有人能解释一下这是什么魔法吗?

0 投票
1 回答
5284 浏览

servlets - HttpServletRequest.getCookies(): 数组,为什么 isHttpOnly() 函数总是返回 false?

嗨,到目前为止,我正在尝试使用 httponly cookie 这是我编写的代码

印刷

请注意,我使用的是 JBoss 7,并且在 web.xml 配置中我已添加但我认为缺少某些内容

0 投票
1 回答
319 浏览

servlet-3.0 - 如何检测 AsyncContext 是否超时?

是否可以从AsyncContext中判断它是否已完成、超时或仍在等待完成?

我知道可以监听timeoutcomplete事件,但我不希望AsyncListener仅仅为了记录这些信息而定义 4 个监听器方法。

0 投票
2 回答
685 浏览

grails - Grails - Servlet 3.0 异步请求处理

我今天发现了 Servlet 3.0 异步工具。我已经阅读了它,并认为我理解了这个概念。

我想知道:这会对“标准”控制器的操作产生任何影响,还是应该将其保存以供 Web 服务或广泛的计算过程使用?

换句话说,将它用于所有控制器的动作,而不事先考虑动作方法的计算时间是不是一个坏主意?如果是,你能给我解释一下为什么吗?

先感谢您。

0 投票
1 回答
602 浏览

java - 以编程方式添加 Servlet 或过滤器有哪些优点或用例?

这个问题让我想知道,因为我没有看到使用 contextListener (据我所知运行一次)以编程方式添加 servlet 优于 DD 或 Annotations。我想知道一个常见的用例,它有助于以编程方式添加它们。

如果有一种方法可以在运行时(在应用程序运行期间)以编程方式添加 servlet,我可能会想到一些情况,但似乎只能通过 contextListener 或

来自 ServletContainerInitializer 实现的 onStartup 方法。

正如 Servlet 3.0 所述。

0 投票
3 回答
2282 浏览

java - 我需要 Web/JavaEE 容器中的一个线程来完成同一个 JVM 中的 AsyncContext objs

我需要 Web/JavaEE 容器中的线程来从外部源获取信息并在同一 JVM 中完成相应的 AsyncContext obj。

我希望有一个零延迟解决方案,因此排除了定期轮询或计时器。

我可以启动一个线程,但我相信它在 Web 容器中不受欢迎并且不可移植。Q1。是否可以在 Java EE 容器中可移植地运行线程?

Q2。如果我想在 Web 容器中运行一个线程,那么“最不邪恶”的方式是什么? 初始化上下文?执行服务?线程运行?

谢谢!

0 投票
3 回答
7919 浏览

security - How to use HttpServletRequest#login() programmatic login with SHA-256 configured security realm

i have read there, i am using glassfish 3.1.1 security realm configured with sha-256 digest algorithm. is there any tutorial about this ? maybe i am blethering, i am trying to login with this code:

result variable returns 1, but request.login(userName, password); method in if condition always throws servletexception.

0 投票
1 回答
404 浏览

jakarta-ee - AsyncContext.start() 的预期用例是什么?

有人刚刚指出 AsyncContext.start() 是一种从 Web 容器中启动线程的方法。我想知道将此调用添加到 Java EE 的预期用例是什么?

0 投票
0 回答
1395 浏览

java - Jetty 正确关闭异步 http 请求,并且不会留下可怕数量的睡眠线程

我的应用程序使用嵌入式 Jetty 作为 http 接口,它似乎在正常运行 2-3 周后挂起。经检查,有很多休眠线程,所以我用 jvisualvm 在本地运行它,然后用 pyplot 和一堆简单的 get 敲出来,发现线程的数量总是在增加,其中大部分都在休眠。

我的代码专门处理带有异步侦听器的异步上下文的异步请求,并且基本上间歇性地休眠,直到它找到由主应用程序填充的结果哈希结果。如果结果从未出现,则请求超时。

一位同事建议我可能没有正确关闭请求。是这样吗?我在下面附上了我的代码以供您批评(在 jvisualvm 情节之后)。谢谢!

虚拟机

码头服务器:

异步 HTTP 请求处理器: