将多个Spring MVC应用程序映射到Root Servlet

时间:2013-09-17 14:12:57

标签: java spring spring-mvc

我有多个Spring MVC应用程序要部署到同一台服务器但是遇到了麻烦。

在我的web.xml中,我映射了调度程序servlet:

<servlet>
    <servlet-name>appServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

但是,如果我在同一台服务器上有多个应用程序,则在尝试部署时会出现以下错误:

0000003f webapp W com.ibm.ws.webcontainer.webapp.WebApp initializeStaticFileHandler SRVE0278E: Error while adding servlet mapping --> /*.

如果我将映射更改为/test它可以正常工作,但我当然希望为所有请求映射调度程序servlet。

我做错了什么?

更新

希望根URI(即http://<server>/<contextroot>/*)下的所有请求,但是当多个应用程序执行此操作时遇到问题。

2 个答案:

答案 0 :(得分:3)

您似乎遇到了此错误:http://www-01.ibm.com/support/docview.wss?uid=swg1PK18713

按照建议,

  • 升级您的应用服务器或
  • 禁用文件服务

答案 1 :(得分:0)

  

如果我将映射更改为/ test它有效,但我当然想要   为所有请求映射的调度程序servlet。

在这种情况下,您应该替换:

<url-pattern>/test</url-pattern>

<url-pattern>/test/*</url-pattern>