问题标签 [servlet-container]

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 投票
0 回答
57 浏览

jsp - 了解“网络交易”的全过程

我正在做一些研究以了解“网络事务”的漏洞图像:从客户端到服务器的请求,然后是从服务器到客户端的响应。

我所阅读的技术有:servlets container、servlet、JSP。

我在以下步骤中总结了我所理解的内容:

  1. 客户端发送 HTTP 请求
  2. HTTP 服务器接收它并将其传输到 servlet 容器
  3. servlet 容器为此 HTTP 请求创建两个对象:HttpServletRequest 和 HttpServletResponse
  4. 一个 servlet 实例化一个 Bean 并初始化它的属性:

SomeBean someBean = new SomeBean() someBean.setProp("value")

  1. servlet 将请求中的 bean 作为属性存储: request.setAttribute("bean", someBean)
  2. servlet 将请求传输到 JSP 文件:

    this.getServletContext().getRequestDispatcher( "/WEB-INF/JSPFile.jsp").forward( request, response );

  3. JSPFile 使用 servlet 发送的信息:

    package.SomeBean someBean = (package.SomeBean) request.getAttribute("bean"); out.println( someBean.getProp());

  4. JSPFile 由 servlet 容器转换为 servlet 并发送到客户端

问题:如果我错了,请纠正我,我想了解整个过程。

0 投票
1 回答
271 浏览

java - 会话对象的范围

1)

正如这里提到的,

HttpSession对象必须在应用程序(或 servlet 上下文)级别限定范围,其中 context 是,

ServletContext context = request.getServletContext();

2)

HttpSession对象是在每个浏览器会话中创建的,在 Tomcat 内存中。

-------------------------------------------------- ---------------

我无法将以上两点联系起来。

应用程序是不同 servlet 的集合。servlet 从每个浏览器的每个连接生成一个线程。每个 jsp/servlet 都指向浏览器指向的会话对象的一个​​版本。


每个浏览器创建的会话对象如何在 Web 应用程序级别限定范围?

0 投票
1 回答
990 浏览

java - ServletContainerInitializer 不工作

我正在编写一个程序来测试 ServletContainerInitializer。问题是 ServletContainerInitializer 本身工作正常,并且打印了 ServletContainerInitializer.onStartup 被称为“ssd”但是 ServletContext.addServlet 没有注册我的 servlet,因此没有调用 init 方法。请检查下面的日志

0 投票
1 回答
208 浏览

eclipse - 运行我的 servlet 页面时出现 HTTP 错误 404,意味着使用 JSP 和 servlet 从数据库下载 Long BLOB 文件

这是我的 JSP 页面,它显示一个表格并重定向到 servlet 的 url。单击“保存”按钮时收到的错误是“HTTP 状态 404-未找到”。PS。我还制作了另一个jsp,它是使用doPost上传文件的servlet,它工作得很好,但只有项目的这一部分已经困扰了我近一个星期了!

我的 servlet 页面,

控制台显示以下内容,但我仍然必须通过它找到任何错误。

下面给出了新错误 HTTP Status 500 Internal Server Error 的堆栈跟踪,但首先我提到了运行代码时 chrome 中给出的堆栈跟踪部分

0 投票
1 回答
1027 浏览

cdi - 无法在 servlet 容器中使用带有 jsf 2.3 的 bean

不久前我开始测试 JSF 2.3。但我无法让最重要的功能之一发挥作用。ManagedBeans 的使用。我尝试了很多,使用不同的 servlet 容器(Tomcat 8&9,Jetty 9.2)。但没有任何帮助。希望有人能看到我在资源上的失败。这令人沮丧。我进行了调试,但从未到达过 bean。primefaces 组件工作正常(primefaces 库不是原因)。但我从来没有得到 bean 数据。PS。我正在使用 myfaces,但使用 mojarra 我遇到了同样的问题。

我的豆子:

我的配置bean:

我的小脸:

我的 web.xml:

我的 build.gradle:

豆类.xml:

面孔-config.xml:

0 投票
0 回答
135 浏览

rest - 使用 Postman 在 Rest API 中找不到 ServletContainer 类的 HTTP 500 错误

我对使用 Restful Web 服务非常陌生。我正在尝试使用 Tutorialspoint UserManagement 示例中的 Postman 从 Eclipse 运行一个简单的 Restful API。

我已经使用 Eclipse 创建了一个 WAR 文件,并将 war 文件部署到 servlet 容器中,根据我从以下链接说明中找到的将 war 文件部署到 tomcat中的内容,您将 war 文件复制粘贴到 apache tomcat 中的 webapp 文件夹中8.0.49 文件夹将以下链接粘贴到您的网络浏览器或 Postman http://localhost:8080/RestAPI_UserManagement/rest/UserService/user中。 在此处输入图像描述

但不断得到一个

Postman 中的 HTTP 500 错误,

在 Eclipse 控制台中,我收到以下错误

我在我的项目文件夹中编写了以下代码(POJO 类、Rest API 和实现 Rest API 的业务逻辑)。这里是实现 Rest API 和 web.xml 的业务登录。

用户服务.java

web.xml

这是我的项目的文件结构。我已将所有 Jersey 库下载到我项目的 /Webcontent/WEB-INF/lib 路径中。 在此处输入图像描述

这是我的 catalina.out tomcat 日志。

基于这个我的 catalina.out tomcat 日志,它说缺少一些变量。但我不确定那是什么,以及如何设置它。请帮忙...

0 投票
0 回答
569 浏览

java - Tomcat 服务器架构 - Web 容器 vs. Servlet 容器 vs. Servlet 引擎 vs. JSP 引擎

在关闭或否决这个问题之前,请阅读它。

我在互联网上进行了相当大的研究,并浏览了来自 O'Reilly、Apress、PACKT 的 5 本流行书籍,包括两者——关于 Servlet API 的书籍和关于 Tomcat 服务器的书籍。我在这里也找不到任何有价值的东西。

对我来说,重点是在我的脑海中明确定义Tomcat 架构在一个较低的级别和 Servlet Container 的共存。我使用 Java 已经快十年了,所以,我不是在研究基础知识,而是在这里研究一些架构点。Servlet Engine我正在寻找、Servlet ContainerWeb ContainerJSP Container和组件之间的清晰定义和区别CatalinaJasper

我可以找到一些资源,但老实说,它们是直截了当的,并且在某种程度上并不普遍,不同的文章、讲座和书籍对Tomcat 架构的定义不同。

一位讲师说,Tomcat 实例是一个 Web 服务器,它包含分层组织的不同容器组件 - 从 Web Container 开始,Web Container 又包含 Servlet 和 JSP 容器(分别为 Catalina 和 Jasper);

Apress 的 Apache Tomcat 7 定义了 Tomcat 架构,如下所示: 在此处输入图像描述

名牌大学的一些讲师表示,Web ContainerServlet Container的完全一样,只是同义词;

另一所非常受欢迎的大学的另一位讲师表示,这Web Container是一个根元素,它包含子组件Servlet Container/EngineJSP Container/Engine.

我可以继续使用来自不同来源的繁琐和矛盾的定义。我只想对 Tomcat 架构有一个非常清晰的了解,那里有哪些组件,哪些术语是同义词(如果有的话)以及它们如何'是从建筑的角度出发的。

也许有什么好书或参考资料?...任何有价值的答案将不胜感激。我真的在为此挖掘,但仍然找不到任何东西。

0 投票
1 回答
996 浏览

jakarta-ee - 得到错误 WFLYCTL0013: Operation ("deploy") failed because the class org.glassfish.jersey.servlet.ServletContainer can not be found

我希望有人可以帮助我解决我的问题。

目前我正在尝试在 Wildfly 16 服务器上部署 Java EE 项目。但是,部署中止并显示以下错误消息:

据我所知,我没有相应的依赖。或者如果我想在 wildfly 上部署我的 web 服务,我是否必须选择另一个 jaxb 实现?

我是否必须更改默认配置(domain.xml,...)中的任何内容?或者还有什么可以用来解决这个问题?

0 投票
2 回答
1092 浏览

spring-boot - aws serverless spring boot 设置失败

这是我下面的设置,

每次当我尝试使用命令从本地控制台调用我的 lambda -“无服务器调用本地 -f hello”时,我都会遇到异常,

Ĵ

在行 - “handler = SpringBootLambdaContainerHandler.getAwsProxyHandler(Application.class);”

请帮我解决这个问题,我尝试了各种使用 aws lambda 进行引导设置的方法,但每次都失败了。请帮助我解决此问题或以任何其他方式帮助我进行设置。谢谢。

0 投票
0 回答
231 浏览

java - 使用 CDI 和 Jax-RS 启动独立 Jetty 服务器时出错

我试图让以下项目在独立的 Jetty 实例中运行:
https
://github.com/stilkov/jetty-weld-jersey-sample 运行提到的 Maven 目标 jetty:run 按预期工作。

我正在使用 Jetty_9_4_28_v20200408(提到的项目使用不同的版本 - 我测试了更新 pom.xml 中提到的 Jetty 版本,我仍然能够运行 jetty:run)。我修改了 pom.xml 以反映独立服务器所需的更改:

但是,这会导致启动时出现以下错误(从 IntelliJ 启动 Jetty):

如果我开始激活更多的 Jetty 模块,我可能会遇到不同的错误,但我的直觉认为这可能不是必需的。

注意:在日志中,我介绍了 $PROJECT_DIR 用于匿名化。