Mittwoch, 10. Februar 2010

Tutorial 4: Web Serivce deployen

Zunächst benötigen wir einen Web Service mit der entsprechenden "Hello World" Geschäftslogik. Dazu legen wir zunächst ein neues Projekt in der gleichen Anwendung (File|new|Projects|Generic Project) an. In diesem erstellen wir eine einfach Java-Klasse:


Diese bekommen wir z.B. via rechter Maus (RMB = Right Mouse Button) auf dem Projekt, dann New|Java|Java Class.



Diese bekommt dann die Methode sayHello mit der entsprechenden "Geschäftslogik", idealerweise in der jeweiligen Landessprache. Für alle Norddeutschen z.B.:

  public String sayHello(String s)
  {
    return "Moin, moin " + s;
  }

Um diese Klasse mit den benötigten Annotationen für den Web Service zu versehen, bietet der JDeveloper wieder einen entsprechenden Wizard an:


Per RMB auf der Java-Klasse kann die Funktion 'Create Web Service...' ausgewählt werden. 


Die Vorgabe 'Java EE 1.5 with support for JAX-WS Annotations' ist genau richtig


Hier kann man die default-Werte bestätigen und die gewünschte Methode auswählen. Sollte die Methode nicht auswählbar sein, so kann man die Zeile trotzdem aktivieren und den JDeveloper über den Knopf 'Why Not?' nach dem Grund fragen.


Als Ergebnis bekommen wir einen fertigen Webservice vom JDeveloper geliefert, der so direkt ausführbar ist. Dazu wählen wir z.B. direkt auf dem Source-Code via RMB die Funktion 'Run' (grüner Pfeil).


Als Ergebnis erscheint der Web Service Testclient des JDeveloper. Hierin kann man jetzt das Argument (z.B. einen Namen) eingeben und via Send Request den Webservice direkt aufrufen. Das Ergebnis erscheint dann auf der rechten Seite.


Wer es genau wissen möchte, klickt unten auf den Reiter HTTP Content und kann sich die übertragene SOAP-Message im Detail ansehen.


WSDL gehört nicht gerade zu den lesbarsten Dialekten, daher ist an dieser Stelle auch der eingebaute WSDL-Browser nützlich.


Das Deployment auf den externen WLS läuft dann genau wie bei dem vorherigen Beispiel mit dem Servlet ab.


Wenn alles geklappt hat, taucht der Web Service in den Deployments des WLS auf. Hier kann man die Baumstruktur aufklappen, bis der eigentliche Service angezeigt wird.


Klickt man diesen an, kann man auf dem Reiter 'Testing' den 'Test Client' auswählen.


Hier lässt sich, genau wie im JDeveloper, der Parameter für den Web Service Aufruf eingeben und der Web Service aufrufen.


Auch der Web Service Tester des WLS zeigt die übertragenen SOAP Messages übersichtlich an. Dieses Beispiel sollte zeigen, wie einfach es ist, aus einem vorhandenen Java Code mit dem JDeveloper einen Web Service zu erzeugen und diesen auf dem Web Logic Server auszuführen.

Keine Kommentare:

Kommentar veröffentlichen