Problemas com JAX-WS

4 respostas
kleins

Pessoal.

Existe alguma diferença na pratica entre retornar um List e um List em um Webservice ?

Afeta a performance ou a aplicação cliente ?

abs

4 Respostas

rodrigoK

Até onde sei pro webservice não muda nada, a diferença é que com Generics você esta dizendo que a List será daquele tipo de objeto, mas performáticamente não sei se tem diferença real.

Abraços,

agostinho

nao afeta a perfomance de forma nenhuma. quando o codigo eh compilado, o generic vai ser apagado do byte code, por causa da compatilibidade retroativa…ou seja…da no mesmo…

Rafael_Nunes

E teoricamente nem um List você deveria retornar, como fica quando o seu cliente não tiver um objeto equivalente para mapear?

kleins

Valeuuu…

E eu retornaria oque ? Um Object[] ?

Ando tendo um outro problema… no codigo abaixo que estou usando pra teste.

@WebMethod(operationName = "getS")
    public List getS() {
        //TODO grava o seu código de implementação aqui:
 
        
        TransactW tw1 = new TransactW();
        tw1.setId(1);
        tw1.setCliente("ssddfsfsdfsd");
        tw1.setIum("XXXXXXXXX");
        
        TransactW tw2 = new TransactW();
          tw2.setId(2);
        tw2.setCliente("AAAAAPbbbcbr");
        tw2.setIum("XXXXXXXXXZZZZZ");
        
        TransactW tw3 = new TransactW();
          tw1.setId(3);
        tw1.setCliente("333333Psdfdsf");
        tw1.setIum("XXXXXXXXX33333");
        
        
        List l1 = new ArrayList();
        
        l1.add(tw1);
        l1.add(tw2);
        l1.add(tw3);
        
        
        return l1;
    }

Está me dando a seguinte Exception (abaixo)…

Alguma dica ?? Valeuuuu

Caused by: javax.xml.bind.JAXBException: class demo.TransactW nor any of its super class is known to this context.
Service invocation threw an exception with message : null; Refer to the server log for more details

Exceptions details : java.lang.reflect.InvocationTargetException
javax.servlet.ServletException: java.lang.reflect.InvocationTargetException at com.sun.enterprise.webservice.monitoring.WebServiceTesterServlet.doPost(WebServiceTesterServlet.java:345) at com.sun.enterprise.webservice.monitoring.WebServiceTesterServlet.invoke(WebServiceTesterServlet.java:121) at com.sun.enterprise.webservice.JAXWSServlet.doPost(JAXWSServlet.java:148) at javax.servlet.http.HttpServlet.service(HttpServlet.java:738) at javax.servlet.http.HttpServlet.service(HttpServlet.java:831) at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198) at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214) at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265) at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.enterprise.webservice.monitoring.WebServiceTesterServlet.doPost(WebServiceTesterServlet.java:316) ... 35 more Caused by: com.sun.xml.ws.server.UnsupportedMediaException: Unsupported Content-Type: text/html;charset=utf-8 Supported ones are: [text/xml] at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:130) at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:294) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:173) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:88) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436) at com.sun.xml.ws.client.Stub.process(Stub.java:248) at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:134) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:244) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:224) at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:117) at $Proxy128.getS(Unknown Source) ... 40 more
Criado 3 de setembro de 2008
Ultima resposta 3 de set. de 2008
Respostas 4
Participantes 4