Frage

Weiß jemand, ob es möglich ist, eine J2EE-Anwendung (von der Anwendung aus) neu zu starten?Wenn das so ist, wie?

Ich würde es gerne auf eine App-Server-agnostische Weise tun können, wenn es möglich ist.

Die Anwendung wird auf vielen verschiedenen App-Servern ausgeführt – im Grunde ganz nach Wunsch des Kunden.

Wenn dies nicht App-Server-unabhängig möglich ist, lohnt es sich für meine Zwecke wahrscheinlich nicht wirklich.Ich kann jederzeit einfach eine Meldung anzeigen, die den Benutzer darüber informiert, dass er die App manuell neu starten muss.

War es hilfreich?

Lösung

Ich würde vorschlagen, dass Sie wahrscheinlich keinen Appserver-unabhängigen Weg finden werden.Und obwohl ich nicht vorgebe, Ihre Anforderungen zu kennen, könnte ich ein Design in Frage stellen, das einen Neustart der Anwendung erfordert, anders als ein Installationsprogramm, das eine neue Version bereitstellt.Abschließend würde ich vorschlagen, dass „jeder“ Anwendungsserver für keinen trivialen Zweck funktioniert.Sie sollten über eine Liste der unterstützten App-Server und -Versionen verfügen, die in Ihren Versionshinweisen dokumentiert ist, damit Sie sie auf allen testen können und sich keine Gedanken über die Unterstützung von Clients auf einem nicht konformen Server/einer nicht konformen Version machen müssen.Aus Erfahrung gibt es immer subtile Unterschiede, beispielsweise zwischen Apache Tomcat und BEA WebLogic, und diese Unterschiede sind oft nicht dokumentiert und schwer zu bestimmen, bis man sie entdeckt.

Andere Tipps

Die meisten Anwendungsserver stellen eine JMX-Schnittstelle bereit, sodass Sie diese aufrufen können.

Ich würde vorschlagen, servicewrapper zum Verwalten des Anwendungsservers zu verwenden und dann dessen API-Methoden zum Anfordern eines Neustarts des Dienstes zu verwenden.Es wäre eine gewisse Konfiguration erforderlich und es ist schwer zu wissen, ob dies in Ihrer speziellen Umgebung funktionieren würde, aber das ist die einzige mir bekannte Lösung, die überhaupt einigermaßen serverübergreifend kompatibel ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top