问题标签 [tomcat9]

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 回答
99 浏览

apache - Apache Tomcat 服务器中用户定义的 Webapp 类加载器

我有一个要求,我需要使用自定义类加载器加载我的 Web 应用程序。从文档中,我可以看出 Webapp 类加载器处理从 /WEB-INF/lib 和 /WEB-INF/classes 加载类。有没有办法用用户定义的来覆盖这个类加载器?

0 投票
1 回答
529 浏览

jsf - 在 Tomcat 9.0.2 上使用 jsf 2.3.3 时出现 StringIndexOutOfBoundsException

我正在尝试在带有 Spring Boot 的 Tomcat 9.0.2 上使用最新的 jsf 2.3.3:

第一个问题是应用程序在我添加 cdi-api jar 之前不会启动:

1-因为我使用的是 Spring,我认为我不需要 cdi-api jar,所以有没有办法让它在不使用这个 jar 的情况下工作,因为如果我删除它,我会得到一个找不到类的异常javax/enterprise/context/spi/Contextual:

2-当我运行应用程序并尝试打开任何网页时,出现以下异常:

我该如何解决这个错误?

0 投票
2 回答
6510 浏览

haproxy - HA Proxy support for HTTP/2 backend servers in http mode

I have a tomcat 9.0.2 server supporting HTTP/2 and running on TLS1.2. Below is the connector configuration in server.xml

I am using HA Proxy 1.8 and configuration is like below

Since, I have multiple backends based on host, I cannot use TCP mode and do pass through HTTP/2 SSL termination

Is there a way I can have HTTP/2 termination in backend mode http ?

0 投票
1 回答
254 浏览

java - 在tomcat 9中解析路径

我有这段代码:

Paths.get("conf/app.properties").toAbsolutePath()

当我在 Tomcat 7 中运行它时,它会正确解析为相对目录,使用$CATALINA_HOME. 但是当我在 Tomcat 9 中运行它时,它会“解决”/conf/app.properties显然不存在的问题。如何让 Tomcat 9 正确解析路径?

0 投票
4 回答
18394 浏览

java - Eclipse 不可逆 Dynamic Web Module 4.0 选择;Tomcat 9 不支持

我在带有 Java 8 的 Windows 10 上使用 Eclipse Oxygen.2 (4.7.2)。我有一个使用 Tomcat 在 Eclipse 中运行的多面项目。我一直在使用 Tomcat 8.5,但在一个新系统上我升级到了 Tomcat 9。当然,我在 Eclipse 中删除了 Tomcat 8.5 服务器和服务器运行时,并重新添加了一个 Tomcat 9 服务器运行时。

在 Eclipse 中添加 Tomcat 9 服务器之前,我验证了我的项目的项目方面。我看到动态 Web 模块设置为“3.1”,但现在“4.0”可用。我更改为“4.0”,认为这可以让我访问更新的 API。

然后我尝试添加 Tomcat 9 服务器。在此过程中,在“添加和删除”中,它会询问我要添加哪些项目以配置服务器。我选择了我的 Web 项目,但 Eclipse 说:“Tomcat 9.0 版仅支持 J2EE 1.2、1.3、1.4 和 Java EE 5、6、7 和 8 Web 模块”。

现在据我所知,这正是我正在使用的。但我唯一改变的是动态 Web 模块。所以我回到我的项目配置并尝试将“Dynamic Web Module”改回“3.1”。日食告诉我:

无法将项目方面动态 Web 模块的版本更改为 3.1。

嗯...所以我将其删除。我取消选中“动态 Web 模块”旁边的框,Eclipse 告诉我:

无法卸载 Dynamic Web Module 4.0。

嗯,那是一壶好鱼。我无法将我的项目部署到 Tomcat,显然是因为动态 Web 模块。我无法将动态 Web 模块改回原来的样子。我该怎么办?问题出在哪里?

我打开了Eclipse Bug 530844看看我是否能得到这种行为的一些原因。

0 投票
1 回答
407 浏览

spring-boot - Tomcat 无法与 Artemis MQ 通信

我想使用 JMS 安排消息延迟。为此,我将 JMS 2.0 与 Artemis MQ 一起使用,并且消息已在编译时成功调度,但是当我将其部署在 Tomcat 中并尝试延迟发送消息时,它会显示:

java.lang.IllegalStateException:setDeliveryDelay 需要 JMS 2.0

我猜测 Tomcat 无法与我设置的 Artemis 服务器正常通信。所以我在我的系统中设置了两台服务器:Tomcat 和 Artemis。是因为Tomcat无法与Artemis通信吗?如果是这样,那么为什么我的 spring boot 内置 Tomcat 服务器会检测到 Artemis 而我的独立 Tomcat 却没有呢?

我的 JMS 消息发送器的源代码是:

pom.xml的是:

application.properties的是:

0 投票
1 回答
2170 浏览

debugging - SSL 握手调试不再适用于 Apache Tomcat/9.0.0.M22

我必须在 Tomcat(操作系统:MS Windows)上调试 SSL 握手,所以我按照 web 中的说明使用 setenv.bat 中的以下行启用它:

设置“JAVA_OPTS=%JAVA_OPTS%-Djavax.net.debug=ssl”

使用 Apache Tomcat/9.0.0.M21 一切正常,当我用浏览器打开页面时,我可以在命令行上看到握手。

使用 Apache Tomcat/9.0.0.M22 我只能看到启动时正在加载哪些证书,但之后当我通过浏览器调用服务器时,命令行上不再生成输出。

我能发现的唯一区别是协议处理程序在这些版本之间是不同的:

  • Apache Tomcat/9.0.0.M21 使用 ProtocolHandler ["https-jsse-nio-8083"]
  • Apache Tomcat/9.0.0.M22 使用 ProtocolHandler ["https-openssl-nio-8083"]

我还需要做些什么来启用 ssl 握手调试吗?

这是我在 server.xml 中配置的连接器:

0 投票
1 回答
82 浏览

jdbc - PostgreSQL JDBC ResultSet 在单表扫描中具有 4 倍的预期行数

我正在运行带有 PostgreSQL 10.2 数据库的 Tomcat 9.0,使用配置了 org.postgresql.Driver 的 Tomcat JDBC 池。

我有以下简单查询,它扫描一个小的参考表以获取值:

该表正好有 3 行,而 pgAdmin 查询工具返回相同的 3 行,而不管使用的是 DISTINCT 关键字。

我在以下代码中使用 SQL 将值添加到列表中(在我使用 putIfAbsent 和地图来绕过错误之前,目前不使用排名列)。

我正在查看列表的 JSON 输出以及打印的消息。虽然表格有 3 行,但我可以看到 12 个条目。它们按 3 个不明确的组排序,就好像查询按顺序重复了 4 次,返回到同一个 ResultSet。

知道是什么原因造成的以及如何解决吗?我的 JDBC 代码有问题吗?

0 投票
0 回答
375 浏览

java - 在 Tomcat 9 中更改 CSRF 过滤器的名称

默认情况下,tomcat CSRF 过滤器生成 ID,如

org.apache.catalina.filters.CSRF_NONCE=C6D6CB73AC793EC7BC55BADA791A5DE3

我想将名称从 org.apache.catalina.filters.CSRF_NONCE 更改为 MY_NONCE

0 投票
2 回答
166 浏览

spring - Spring+Hibernate - 获取 404 异常

我是 Spring 和 Hibernate 的新手,我想使用这些技术创建 Restful Web 服务。

调用 URL 时出现 404 异常http://localhost:8080/RakeshMavenProject/book

我已经创建了控制器、服务、Dao 类并在中提到了配置参数AppConfig.java

的代码server.xml

更新:我提到了我controller班级的代码

请任何人帮助我找到解决方案。