2016-08-04 9 views
0

Ich habe die folgende Situation in einer Struts 1-Anwendung.Struts 1 mischen URL-Muster * .do mit regulären URLs web.xml

Die alte Funktionalität der Anwendung funktioniert mit Struts 1 und hat die folgende Servlet-Zuordnung (ich denke, es ist der Standard Weg, Dinge zu tun).

Ich schrieb einige neue Funktionen (Json Webservices) auch in Struts 1 mit Struts Actions.

Ich möchte, dass diese URLs ohne die Erweiterung .do verfügbar sind, aber die alten URLs sollten immer noch mit der Erweiterung * .do arbeiten.

Ich habe mehrere Dinge wie ein/url Muster versucht, aber das bricht das Laden von statischen Ressourcen.

Weiß jemand, wie man das macht?

Antwort

0

Ich habe dieses Problem auf andere Weise gelöst. Ich benutzte den Tuckey-URL-Rewriter, um mein Ziel zu erreichen.

http://www.tuckey.org/urlrewrite/

machte ich die rewriter

services/SOME? Parma1 = value1 & param2 = value2 zu severices.someService.do?parma1=value1 umleiten & param2 = value2

Die Konfiguration in urlrewrite.xml für diese sieht wie folgt aus

<urlrewrite use-context="true"> 
    <rule> 
     <from>^/services/someService$</from> 
     <to last="true">/someService.do?%{QUERY_STRING}</to> 
    </rule> 
</urlrewrite> 

Der Rest der Informationen kann in der Bedienungsanleitung gefunden werden.