[Java EE] Przesylanie obiektow

0

Witam

Mam prosty projekt klient-serwer na bazie JAX-WS.
Usluga sieciowa posiada metody:

    @WebMethod
    public Object getData(){
        return (Object)new Dane();
    }

    @WebMethod
    public String getString(){
        return "Zwracam String";
    }

Natomiast aplikacja clienta:

public static void main(String[] args) {
        // TODO code application logic here


        try { // Call Web Service Operation
            testdanych.endpoint.MainService service = new testdanych.endpoint.MainService();
            testdanych.endpoint.Main port = service.getMainPort();
            // TODO process result here
            java.lang.Object result = port.getData();
            //System.out.println("Result = "+result);
        } catch (Exception ex) {
            ex.printStackTrace();
            // TODO handle custom exceptions here
        }


        try { // Call Web Service Operation
            testdanych.endpoint.MainService service = new testdanych.endpoint.MainService();
            testdanych.endpoint.Main port = service.getMainPort();
            // TODO process result here
            java.lang.String result = port.getString();
            System.out.println("Result = "+result);
        } catch (Exception ex) {
            // TODO handle custom exceptions here
        }


    }

Wszystko dobrze dziala dla pobierania Stringu. Natomiast przy pobieraniu Object notabeme jest to objekt typu Data (ktory zostal zdefiniowany w osobnym pliku) pojawia sie wyjatek:

com.sun.xml.internal.ws.server.UnsupportedMediaException: Unsupported Content-Type: text/html;charset=utf-8 Supported ones are: [text/xml]
        at com.sun.xml.internal.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:116)
        at com.sun.xml.internal.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:280)
        at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:158)
        at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:74)
        at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:581)
        at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:540)
        at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:525)
        at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:422)
        at com.sun.xml.internal.ws.client.Stub.process(Stub.java:235)
        at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:120)
        at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:230)
        at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:210)
        at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:103)
        at $Proxy28.getData(Unknown Source)
        at testdanychclient.Main.main(Main.java:25)

Jesli zamiast new Data() dam new Object() to dalej wyskakuje ten sam wyjatek a przeciez Object zgodnie z: http://java.sun.com/javaee/5/docs/tutorial/doc/bnazq.html#bnazs objekty Object mozna przesylac wiec w czym jest problem?

0

Generalnie wiem ze chodzi o to, ze moj Content-Type to text/html a wymagany jest text/xml. Pytanie tylko gdzie to zmienic bo nie mam zielonego pojecia i nie moge nigdzie tego znalezc:/
Uzywam NetBeans 6.7

0

a ten obiekt jest serializowany ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1