Für ein Web-Service-Projekt teilen, ich brauche zwei API-Versionen eines Java EE Web auf meinem Webserver beiServlets in separaten WARs - teilweise ihren Kontextstamm
example.com/myservice/v1
undexample.com/myservice/v2
installieren
Der sicherste Weg, die verschiedenen Versionen zu trennen, scheint die Bereitstellung in verschiedenen WAR-Dateien zu sein, eine für v1
und eine für v2
.
I erstellt und bereitgestellt zwei JBoss 6 Java EE 6 Web Profile-Anwendungen mit diesen Einträgen in Jboss-web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<context-root>/test/v1</context-root>
</jboss-web>
und
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<context-root>/test/v2</context-root>
</jboss-web>
Beide eingesetzt Krieg Dateien und lief ohne Fehler . JBoss beschwerte sich nicht, dass sie den gleichen Wurzelkontextteil /test
verwenden.
Ist dies ein Standardverhalten eines Servlet-Containers (angegeben) oder nur ein JBoss-Feature und nicht garantiert tragbar?
Danke für Ihre Antwort, zitiert aus einem Link in der angenommenen Antwort von Larry0ua. Ich kann noch nicht upvote, aber werde später tun. Ich habe nicht erwartet, dass JBoss sich beschweren würde - tatsächlich war ich froh, dass JBoss die zwei sich teilweise überschneidenden Kontextwurzeln akzeptiert. – mjn42