Весна и / * шаблон URL - PullRequest
       4

Весна и / * шаблон URL

3 голосов
/ 27 октября 2011

У нас есть URL-шаблон "/ *", и запросы поступают на наш контроллер, но мы всегда получаем 404. Вот наш web.xml

<servlet>
    <servlet-name>bro</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:mo/config/mo-spring.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>bro</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

mo-spring.xml:

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="suffix" value=".jsp"/>
</bean>

<mvc:resources mapping="/css/**" location="/css/" /> 
<mvc:resources mapping="/images/**" location="/images/" /> 
<mvc:resources mapping="/js/**" location="/js/" />
<mvc:resources mapping="/views/" location="/views/" />

Немного о контроллере:

@RequestMapping(value="/signon", method=RequestMethod.GET)
public String signon(HttpServletRequest request) {
            ...
    return "/WEB-INF/index";
}

Если я использую / xxx / * в качестве URL-шаблона в моем web.xml, все работает как положено, но у нас есть додзеприложение, которое мы действительно не хотим изменять, которое хочет общаться с / *, а не с / xxx / *

1 Ответ

2 голосов
/ 27 октября 2011

В качестве имени сервлета у вас есть bro, но в качестве имени сервлета для сопоставления URL-адресов в server.xml

указывается brio.

Если проблема не в этом, и вы хотите, чтобы ваше приложение отвечало на http://yourserver/* вместо http://yourserver/yourcontext/*, то вам нужно развернуть веб-приложение в качестве корневого веб-приложения для сервера. Вот вопрос, касающийся такой конфигурации в tomcat Tomcat 6: Как изменить приложение ROOT

edit : скопировано из моего комментария - если вы отображаете DispatcherServlet в root в своем веб-приложении, вам потребуется конфигурация сервлета по умолчанию, упомянутая в http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/htmlsingle/spring-framework-reference.html#mvc-default-servlet-handler

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...