K
Kehoan
Gast
Mein Webservice (Axis2 v 1.3) dient als Middleware zwischen einem SAP -und einem Java-System. Der Datentransfer erfolgt, indem ein SAP-Client eine WSDL-Operation meines Webservices aufruft. Diese WSDL-Operation startet wiederum ein RMI-Client, der Daten vom Server des Java-Systems anfragt. Ist der RMI-Anfrage erfolgreich, werden die Daten über ein Rückgabewert der WSDL-Operation an den SAP-Client zurück gegeben.
Zu der Aufgabenstellung habe ich zwei Probleme:
1. Die Sourcen des RMI-Clients sind im Webservice im aar-Archive eingebunden. Wird der Webservice deployed und ausgeführt, werden diese Sourcen (als Jar-Files) nicht erkannt. Das Problem ist, dass man diese Sourcen im Server (tomcat) im Axis Order unter lib nochmal kopieren muss. Damit hätte ich kein Problem, jedoch kommt es zu Konflikten, da ich für mein RMI-Client zwei Liberies benutze, die im Axis Ordner schon vorhanden sind, jedoch in unterschiedlichen Versionen. Wie bringe ich dazu, dass der tomcat meine Liberies im aar-Archive bentutzt? Das ganze soll irgendwie mit classLoader funktionieren?
2. Kann man eigentlich eine Funktion im Webservice einbauen, der beim Deployment aufgerufen wird, z.b. die main-Funktion? Ich möchte, dass mein RMI-Client nur beim Deployen einmal über eine Funktion gestartet wird.
Bitte um Hilfe!
Zu der Aufgabenstellung habe ich zwei Probleme:
1. Die Sourcen des RMI-Clients sind im Webservice im aar-Archive eingebunden. Wird der Webservice deployed und ausgeführt, werden diese Sourcen (als Jar-Files) nicht erkannt. Das Problem ist, dass man diese Sourcen im Server (tomcat) im Axis Order unter lib nochmal kopieren muss. Damit hätte ich kein Problem, jedoch kommt es zu Konflikten, da ich für mein RMI-Client zwei Liberies benutze, die im Axis Ordner schon vorhanden sind, jedoch in unterschiedlichen Versionen. Wie bringe ich dazu, dass der tomcat meine Liberies im aar-Archive bentutzt? Das ganze soll irgendwie mit classLoader funktionieren?
2. Kann man eigentlich eine Funktion im Webservice einbauen, der beim Deployment aufgerufen wird, z.b. die main-Funktion? Ich möchte, dass mein RMI-Client nur beim Deployen einmal über eine Funktion gestartet wird.
Bitte um Hilfe!