java为什么Camel Servlet映射需要在url的末尾加一个斜杠?
我有一个使用驼峰路由的web应用程序,我的问题是关于web xml中的servlet映射(见下文)。一般来说,我在route builder中定义了许多不同的路线,例如如下所示:
from(“servlet://?matchOnUriPrefix=true&;servletName=camelErrorServlet”)
还有一个“通用”入口点,除了这些更具体的路线外,还应包括其他所有内容:
from(“servlet://?matchOnUriPrefix=true”)
我的问题是,我的servlet可以通过以下url访问:
http://my.url/redirect/back/?param1=value1¶m2=value2
但此url导致找不到404:
http://my.url/redirect/back?param1=value1¶m2=value2
对我来说,使用带有“/”的所有URL似乎不常见,甚至是错误的结尾 有人能帮我解决这件事吗?我欣赏每一个想法。 提前谢谢!!:-)
<servlet-mapping>
<servlet-name>CamelRedirectBackServlet</servlet-name>
<url-pattern>/redirect/back/*</url-pattern>
<url-pattern>/redirect/back</url-pattern>
</servlet-mapping>
<!-- Camel redirect error servlet -->
<servlet>
<servlet-name>CamelRedirectErrorServlet</servlet-name>
<servlet-class>org.apache.camel.component.servlet.CamelHttpTransportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Camel redirect error servlet mapping -->
<servlet-mapping>
<servlet-name>CamelRedirectErrorServlet</servlet-name>
<url-pattern>/redirect/error/*</url-pattern>
<url-pattern>/redirect/error</url-pattern>
</servlet-mapping>
<!-- Camel servlet mapping -->
<servlet-mapping>
<servlet-name>CamelServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
共 (0) 个答案