在 Camel/Spring 应用程序中使用 Servlet 组件时,通常需要在 Servlet 组件启动后加载 Spring ApplicationContext。这可以通过使用 Spring 的 ContextLoaderServlet
而不是 ContextLoaderListener
来完成。在这种情况下,您需要在 CamelHttpTransportServlet 后启动 ContextLoaderServlet
,如下所示:
<web-app>
<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>
<web-app>
<web-app>
<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>
<web-app>
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow