2016-09-27 2 views
1

Ich habe eine zugeordnete URL zu /foo.jsp, die zu einem Controller umleitet, aber es wird nicht von Frühjahr behandelt und gibt 404 zurück. Es scheint, dass die URL ignoriert und direkt an gesendet wird Kater. Ist es möglich, Feder zu machen?Umleiten einer URL-Endung mit ".jsp"

zu reproduzieren, von https://github.com/spring-projects/spring-boot/tree/1.4.x/spring-boot-samples/spring-boot-sample-tomcat7-jsp Ausgangs fügen Sie einfach:

@Configuration 
public class WebConfig extends WebMvcConfigurerAdapter { 
    @Override 
    public void addViewControllers(ViewControllerRegistry registry) { 
     registry.addRedirectViewController("/foo", "/").setStatusCode(HttpStatus.MOVED_PERMANENTLY); 
     registry.addRedirectViewController("/foo.html", "/").setStatusCode(HttpStatus.MOVED_PERMANENTLY); 
     registry.addRedirectViewController("/foo.jsp", "/").setStatusCode(HttpStatus.MOVED_PERMANENTLY); 
    } 
} 

Navigation Dann /foo und /foo.html funktioniert wie erwartet, aber /foo.jsp gibt ein 404

+1

Mit [UrlRewriteFilter] (http://tuckey.org/urlrewrite/) konnte ich eine jsp URL umleiten, aber das Federverhalten fühlt sich fehlerhaft an. –

Antwort

1

Möchten Sie einen viewResolver verwenden Sie die jsp Ansichten zu handhaben. Und trennen Sie HTML und JSP Ansichten anders mit this Technik.

+0

Wir sind dabei, jsp/scriptlets zu mvc zu migrieren, der ganze Punkt besteht darin, die referenzierte URL aufrecht zu erhalten, indem wir auf die neue umleiten –