有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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&param2=value2

但此url导致找不到404:

http://my.url/redirect/back?param1=value1&param2=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) 个答案