Wie kann ich die Karte ein spring-controller eine url mit .jsp-Erweiterung?

Wir sind in den Prozess der Migration von jsp-Anwendung auf Spring-MVC. Aus verschiedenen Gründen können wir nicht ändern, die Verlängerung der bestehenden Seiten. (ruft zur Anmeldung auf.jsp müssen behandelt, die durch eine Feder controller, verwenden Sie eine jsp-Datei als view).

Wir tun dies iterativ, so dass einige Seiten brauchen, um zu bleiben jsp-Dateien (Anrufe begrüßen zu dürfen.jsp werden nicht behandelt, die von einem controller).

Zu tun, dass ich gemappt sowohl die DispatcherDervlet und die HandlerMapping zu *.jsp und konfiguriert die JstlView in der standard-Weg.

Leider, wenn ich navigieren Sie zu " //login.jsp bekomme ich eine Fehlermeldung

<No mapping found for HTTP request with URI [/<context>/WEB-INF/jsp/login.jsp] in DispatcherServlet with name 'spring'>

Es funktioniert alles, wenn ich eine änderung .jsp auf eine andere Erweiterung in DispatcherServlet und HandlerMapping.

web.xml:

<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>*.jsp</url-pattern>
</servlet-mapping>

spring-servlet.xml:

<!-- View resolver -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>

<!-- URL Mapping -->
<bean id="publicUrlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="urlMap">
        <map>
            <entry key="/login.jsp" value-ref="loginController"/>
        </map>
    </property>
</bean>

Vielen Dank.

UPDATE: ich habe gerade verifiziert, dass, wenn ich benennen meine .jsp-Dateien auf etwas anderes.jst) und aktualisieren Sie den viewResolver entsprechend, als es funktioniert alles. Offenbar, wenn die Sicht gelöst, um eine Datei mit der Erweiterung .jsp, spring, versucht uns die Sicht zu einem anderen controller.

Schreibe einen Kommentar