Juni 20th, 2006

Webservices mit JBoss Web Services

Posted by frank in Java, J2EE

Wie bereits beim Release des JBoss 4.0.4 GA erwähnt, können jetzt Webservices mit Hilfe von Annotations erstellt werden. Dies möchte ich hier am Beispiel eines POJO-Webservices zeigen.
Dazu erstellen wir uns einfach eine Klasse, welche die Logik des Webservices enthält.

package com.it_blogger.webservices;

import javax.jws.WebMethod;

import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;

@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)
public class TestWebservice {

    @WebMethod
    public String hello(String name) {
        return “Hello “+name+“!”;
    }
}

Dieser Klasse geben wir einfach die Annotation @WebService mit und zudem jeder öffentlich zugänglichen Methode noch @WebMethod. Damit sind wir mit dem Webservice schon fertig. Jetzt muss das Ganze noch gepackt werden. Dazu wird die Klasse einfach wie ein Servlet in einer WAR-Datei deployed. Die web.xml kann z.B. so aussehen:

<?xml version=”1.0″?>
<web-app xmlns=http://java.sun.com/xml/ns/j2ee

    xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
    xsi:schemaLocation=http://java.sun.com/xml/ns/j2ee

                    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd

    version=2.4>

    <servlet>
        <servlet-name>TestWebservice</servlet-name>
        <servlet-class>
            com.it_blogger.webservices.TestWebservice
        </servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>TestWebservice</servlet-name>

        <url-pattern>/TestWebservice</url-pattern>
    </servlet-mapping>

</web-app>

Jetzt kann unter http://localhost:8080/jbossws/ der Link für den entsprechenden Webservice abgerufen werden.
Die WAR-Datei kann zudem um eine JBoss-Web.Xml erweitert werden, um den Webservice auf einem bestimmten VirtualHost zu deployen. Leider wird in der WSDL-Datei der Endpunkt derzeit noch nicht dynamisch angepasst. Die jboss-web.xml, welche ebenfalls in das WEB-INF-Verzeichnis der WAR-Datei muss, sieht dann entsprechend so aus:

<?xml version=”1.0″ encoding=“UTF-8″?>
<jboss-web>
        <context-root>/</context-root>

        <virtual-host>webservices.it-blogger.com</virtual-host>
</jboss-web>
Juni 13th, 2006

JAAS Context erstellen - Login auf Client-Seite

Posted by frank in Java, J2EE
Juni 2nd, 2006

Transaktionen in SessionBeans steuern

Posted by frank in Java, J2EE
Juni 1st, 2006

@EJB Bean Injection

Posted by frank in Java, J2EE
Juni 1st, 2006

Timer in SessionBeans

Posted by frank in Java, J2EE
Mai 31st, 2006

EJB3, EntityBeans und Hibernate Annotations

Posted by frank in Java, J2EE, Hibernate
Mai 31st, 2006

Clustered Singletons und Farm-Deployment

Posted by frank in Java, J2EE
Mai 30th, 2006

ActivationConfig bei MessageDrivenBeans

Posted by frank in Java, J2EE
Mai 30th, 2006

JBoss 4.0.4 und Interceptors

Posted by frank in Java, J2EE
Mai 15th, 2006

JBoss 4.0.4 GA veröffentlicht

Posted by frank in Java, J2EE
« Vorherige SeiteNächste Seite »