我有一個Camel應用程式,它使用一個servlet來暴露一個REST API。我在使用SpringBoot和Camel。在構建WAR后,我可以使用java -jar來運行它,而且運行良好。
java.lang.ClassCastException: class org.apache.camel.component.servlet.CamelHttpTransportServlet不能被投到class jakarta.servlet.Servlet (org.apache.camel.component. servlet.CamelHttpTransportServlet在loader org.apache.catalina.loader.ParallelWebappClassLoader @4f2613d1的未命名module中;jakarta.servlet.Servlet在loader java.net.URLClassLoader @520a3426的未命名module中)
這是我的web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>CamelServlet</servlet-name>
<servlet-class>
org.apache.camel.component.servlet.CamelHttpTransportServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>SpringApplicationContext</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- Camel servlet mapping -->
<servlet-mapping>
<servlet-name>CamelServlet</servlet-name>
<url-pattern>/srv/*</url-pattern>
</servlet-mapping>
</web-app>
我使用Tomcat 10.0.10和Camel 3.8
。希望能得到任何幫助。
uj5u.com熱心網友回復:
使用Tomcat 9解決了這個問題
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/319427.html
標籤:
