[jboss-user] [JBossWS] - help completely stuck trying to access an EJB3 WS - please h

wiggy do-not-reply at jboss.com
Sun Mar 30 21:11:19 EDT 2008


Could someone please help me - really confused about how get JBOSS WS working properly

trying to get a seam application exposed with web services.  Tried to write a simple WS test and came unstuck.  I need help as this is now holding me back and its doing my head in.  I have another developer stuck waiting for me to expose a service.

here goes.

1.  created an EAR based server.  Here is the webservice endpoint class in the wstest2-ejb project within the EAR.


  | package org.domain.wstest2.webservices;
  | 
  | import java.util.List;
  | 
  | import javax.ejb.Stateless;
  | import javax.jws.WebMethod;
  | import javax.jws.WebResult;
  | import javax.jws.WebService;
  | 
  | 
  | import org.jboss.seam.Component;
  | 
  | @Stateless (name="HelloService")
  | @WebService (
  | 	         name="HelloServiceWS", 
  | 	         serviceName="HelloService" )
  | public class HelloServiceBean implements HelloServiceRemote
  | {
  | 	@WebMethod (operationName="sayHello")
  | 	@WebResult (name="helloResult")
  | 	public String hello ()
  | 	{
  | 		return "hello World";
  | 	}
  | }
  | 
  | 

as it was going to be a seam based test - i created in the META-INF the following standard-jaxws-endpoint-config.xml


  | <?xml version="1.0" encoding="UTF-8"?>
  | <!-- webservice seam SOAP handler profile -->
  | <jaxws-config xmlns="urn:jboss:jaxws-config:2.0"
  | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  | xmlns:javaee="http://java.sun.com/xml/ns/javaee"
  | xsi:schemaLocation="urn:jboss:jaxws-config:2.0 jaxws-config_2_0.xsd">
  | 	<endpoint-config>
  | 		<config-name>Seam WebService Endpoint</config-name>
  | 		<pre-handler-chains>
  | 			<javaee:handler-chain>
  | 				<javaee:protocol-bindings>##SOAP11_HTTP</javaee:protocol-bindings>
  | 				<javaee:handler>
  | 					<javaee:handler-name>SOAP Request Handler</javaee:handler-name>
  | 					<javaee:handler-class>org.jboss.seam.webservice.SOAPRequestHandler</javaee:handler-class>
  | 				</javaee:handler>
  | 			</javaee:handler-chain>
  | 		</pre-handler-chains>
  | 	</endpoint-config>
  | </jaxws-config>
  | 

so far so good - deploy the EAR to jboss4.2.2.  checked the localhost:8080/jbossws and checked where the generated WSDL is stored 

heres what it gives me 


  | http://127.0.0.1:8080/wstest2-ear-wstest2-ejb/HelloService?wsdl 
  |  
  | 
  | 
  | heres is the generated WSDL 
  | 
  | 
  |   | 
  |   | 
  |   |  <definitions name="HelloService" targetNamespace="http://webservices.wstest2.domain.org/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://webservices.wstest2.domain.org/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  |   | - <types>
  |   | - <xs:schema targetNamespace="http://webservices.wstest2.domain.org/" version="1.0" xmlns:tns="http://webservices.wstest2.domain.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  |   |   <xs:element name="sayHello" type="tns:sayHello" /> 
  |   |   <xs:element name="sayHelloResponse" type="tns:sayHelloResponse" /> 
  |   | - <xs:complexType name="sayHello">
  |   |   <xs:sequence /> 
  |   |   </xs:complexType>
  |   | - <xs:complexType name="sayHelloResponse">
  |   | - <xs:sequence>
  |   |   <xs:element minOccurs="0" name="helloResult" type="xs:string" /> 
  |   |   </xs:sequence>
  |   |   </xs:complexType>
  |   |   </xs:schema>
  |   |   </types>
  |   | - <message name="HelloServiceWS_sayHelloResponse">
  |   |   <part element="tns:sayHelloResponse" name="sayHelloResponse" /> 
  |   |   </message>
  |   | - <message name="HelloServiceWS_sayHello">
  |   |   <part element="tns:sayHello" name="sayHello" /> 
  |   |   </message>
  |   | - <portType name="HelloServiceWS">
  |   | - <operation name="sayHello" parameterOrder="sayHello">
  |   |   <input message="tns:HelloServiceWS_sayHello" /> 
  |   |   <output message="tns:HelloServiceWS_sayHelloResponse" /> 
  |   |   </operation>
  |   |   </portType>
  |   | - <binding name="HelloServiceWSBinding" type="tns:HelloServiceWS">
  |   |   <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
  |   | - <operation name="sayHello">
  |   |   <soap:operation soapAction="" /> 
  |   | - <input>
  |   |   <soap:body use="literal" /> 
  |   |   </input>
  |   | - <output>
  |   |   <soap:body use="literal" /> 
  |   |   </output>
  |   |   </operation>
  |   |   </binding>
  |   | - <service name="HelloService">
  |   | - <port binding="tns:HelloServiceWSBinding" name="HelloServiceWSPort">
  |   |   <soap:address location="http://127.0.0.1:8080/wstest2-ear-wstest2-ejb/HelloService" /> 
  |   |   </port>
  |   |   </service>
  |   |   </definitions>
  |   | 
  | 
  | Then I got a little stuck.  I scouted round for stuff and entually got to the wsconsum.bat documentation to generate client artifacts.
  | 
  | can the wsconsume and generated the client stubs - and then imported them into my client project (I did this as an EJB3) so that i could use the dependency injection (or so i thought).
  | 
  | heres my EJB client 
  | 
  | 
  |   | package test;
  |   | 
  |   | import javax.ejb.Stateless;
  |   | import javax.xml.ws.WebServiceRef;
  |   | 
  |   | import org.domain.wstest2.webservices.*;
  |   | 
  |   | @Stateless
  |   | public class TestHelloBean implements TestHelloService, TestHelloServiceRemote 
  |   | {
  |   | 
  |   |                 //inject instance of generated service class from wsconsume
  |   | 	@WebServiceRef (HelloService.class)
  |   | 	private HelloService helloServiceEP;
  |   | 	
  |   | 	public String sayHello()
  |   | 	{
  |   |                                 //get WS from the End point
  |   | 		HelloServiceWS helloService = helloServiceEP.getHelloServiceWSPort();
  |   | 
  |   |                                 //call my simple method
  |   | 		String res = helloService.sayHello();
  |   | 		return res;
  |   | 		//return "hello";
  |   | 	}
  |   | }
  |   | 
  | 
  | I have a simple main method that does the ctx lookup to get a remote interface to my TestHelloBean  - this is run from the command line and i watch the error trace 
  | 
  | 
  |   | package test;
  |   | 
  |   | import java.util.Hashtable;
  |   | 
  |   | import javax.naming.InitialContext;
  |   | import org.domain.wstest2.webservices.*;
  |   | 
  |   | public class Test {
  |   | 
  |   | 	/**
  |   | 	 * @param args
  |   | 	 */
  |   | 	public static void main(String[] args) throws Exception
  |   | 	{
  |   | 
  |   | 		InitialContext ctx;
  |   | 		// TODO Auto-generated method stub
  |   | 
  |   | 		TestHelloServiceRemote test;
  |   | 
  |   | 		HelloService s = new HelloService();
  |   | 		HelloServiceWS  ws = s.getHelloServiceWSPort();
  |   | 		
  |   | 		
  |   | 			ctx = getInitialContext();
  |   | 
  |   | 			test = (TestHelloServiceRemote) ctx.lookup ("TestHelloBean/remote");
  |   | 			//String res = ws.sayHello();//test.sayHello();
  |   | 			String res = test.sayHello();			System.out.println ("test: returned " + res + " \n");
  |   | 
  |   | 	}
  |   | 
  |   | 	public static InitialContext getInitialContext() throws Exception
  |   | 	{
  |   | 	   Hashtable<String, String> props = getInitialContextProperties();
  |   | 	   return new InitialContext(props);
  |   | 	}
  |   | 
  |   | 	private static Hashtable<String,String> getInitialContextProperties()
  |   | 	{
  |   | 	   Hashtable <String, String> props = new Hashtable <String, String>();
  |   | 	   props.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
  |   | 	   props.put("java.naming.provider.url", "jnp://localhost:1099");
  |   | 	   props.put("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
  |   | 	   return props;
  |   | 	}
  |   | 
  |   | }
  |   | 
  |   | 
  | 
  | 
  | this gives me an error like this 
  | 
  | 
  | 
  |   | 
  |   | Exception in thread "main" javax.ejb.EJBException: javax.xml.ws.WebServiceException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:63)
  |   | 	at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
  |   | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:95)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
  |   | 	at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:304)
  |   | 	at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
  |   | 	at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
  |   | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:769)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:573)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:373)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:166)
  |   | Caused by: javax.xml.ws.WebServiceException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(ClientImpl.java:317)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:255)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:150)
  |   | 	at $Proxy144.sayHello(Unknown Source)
  |   | 	at test.TestHelloBean.sayHello(TestHelloBean.java:18)
  |   | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |   | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  |   | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  |   | 	at java.lang.reflect.Method.invoke(Unknown Source)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
  |   | 	at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
  |   | 	at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
  |   | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:95)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
  |   | 	at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:304)
  |   | 	at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
  |   | 	at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
  |   | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:769)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:573)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:373)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:166)
  |   | 	at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:163)
  |   | 	at org.jboss.remoting.Client.invoke(Client.java:1634)
  |   | 	at org.jboss.remoting.Client.invoke(Client.java:548)
  |   | 	at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
  |   | 	at $Proxy25.sayHello(Unknown Source)
  |   | 	at test.Test.main(Test.java:30)
  |   | 	at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:74)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
  |   | 	at $Proxy25.sayHello(Unknown Source)
  |   | 	at test.Test.main(Test.java:30)
  |   | Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at javax.xml.soap.SOAPMessage.setProperty(Unknown Source)
  |   | 	at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
  |   | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:161)
  |   | 	at org.jboss.ws.core.CommonSOAP11Binding.createMessage(CommonSOAP11Binding.java:59)
  |   | 	at org.jboss.ws.core.CommonSOAPBinding.bindRequestMessage(CommonSOAPBinding.java:156)
  |   | 	at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:289)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:243)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
  |   | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:150)
  |   | 	at $Proxy144.sayHello(Unknown Source)
  |   | 	at test.TestHelloBean.sayHello(TestHelloBean.java:18)
  |   | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |   | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  |   | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  |   | 	at java.lang.reflect.Method.invoke(Unknown Source)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
  |   | 	at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
  |   | 	at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
  |   | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:95)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
  |   | 	at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  |   | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |   | 	at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:304)
  |   | 	at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
  |   | 	at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
  |   | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:769)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:573)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:373)
  |   | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:166)
  |   | 
  | 
  | i've also tried this from the client (without the ejb lookup ) as follows (modified client)
  | 
  | 
  | 
  | 
  |   | 
  |   | 
  |   | ...
  |   | 		HelloService s = new HelloService();
  |   | 		HelloServiceWS  ws = s.getHelloServiceWSPort();		
  |   | 		
  |   | 			ctx = getInitialContext();
  |   | 
  |   | 			test = (TestHelloServiceRemote) ctx.lookup ("TestHelloBean/remote");
  |   | 
  |   | 			String res = ws.sayHello();			//String res = test.sayHello();
  |   | 			System.out.println ("test: returned " + res + " \n");
  |   | 
  | 
  | 
  | This also errors with this at the client side 
  | 
  | 
  |   | Exception in thread "main" javax.xml.ws.WebServiceException: No Content-type in the header!
  |   | 	at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:143)
  |   | 	at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:74)
  |   | 	at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:559)
  |   | 	at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:518)
  |   | 	at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:503)
  |   | 	at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:400)
  |   | 	at com.sun.xml.ws.client.Stub.process(Stub.java:235)
  |   | 	at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:120)
  |   | 	at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:230)
  |   | 	at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:210)
  |   | 	at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:103)
  |   | 	at $Proxy24.sayHello(Unknown Source)
  |   | 	at test.Test.main(Test.java:29)
  |   | 
  | 
  | and this at the server 
  | 
  | 
  |   | 02:06:11,100 ERROR [SOAPFaultHelperJAXWS] SOAP request exception
  |   | java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at javax.xml.soap.SOAPMessage.setProperty(Unknown Source)
  |   | 	at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
  |   | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:207)
  |   | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:185)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:389)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:272)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:189)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)
  |   | 	at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)
  |   | 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  |   | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  |   | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
  |   | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
  |   | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  |   | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  |   | 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
  |   | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  |   | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
  |   | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  |   | 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
  |   | 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
  |   | 	at java.lang.Thread.run(Unknown Source)
  |   | 02:06:11,111 ERROR [RequestHandlerImpl] Error processing web service request
  |   | org.jboss.ws.WSException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at org.jboss.ws.WSException.rethrow(WSException.java:68)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:310)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:189)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)
  |   | 	at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)
  |   | 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  |   | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  |   | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
  |   | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
  |   | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  |   | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  |   | 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
  |   | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  |   | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
  |   | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  |   | 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
  |   | 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
  |   | 	at java.lang.Thread.run(Unknown Source)
  |   | Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at javax.xml.soap.SOAPMessage.setProperty(Unknown Source)
  |   | 	at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
  |   | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:161)
  |   | 	at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.toSOAPMessage(SOAPFaultHelperJAXWS.java:232)
  |   | 	at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.exceptionToFaultMessage(SOAPFaultHelperJAXWS.java:161)
  |   | 	at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.createFaultMessageFromException(SOAP11BindingJAXWS.java:104)
  |   | 	at org.jboss.ws.core.CommonSOAPBinding.bindFaultMessage(CommonSOAPBinding.java:645)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:430)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:272)
  |   | 	... 22 more
  |   | 02:06:11,121 ERROR [[HelloService]] Servlet.service() for servlet HelloService threw exception
  |   | java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
  |   | 	at javax.xml.soap.SOAPMessage.setProperty(Unknown Source)
  |   | 	at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
  |   | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:161)
  |   | 	at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.toSOAPMessage(SOAPFaultHelperJAXWS.java:232)
  |   | 	at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.exceptionToFaultMessage(SOAPFaultHelperJAXWS.java:161)
  |   | 	at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.createFaultMessageFromException(SOAP11BindingJAXWS.java:104)
  |   | 	at org.jboss.ws.core.CommonSOAPBinding.bindFaultMessage(CommonSOAPBinding.java:645)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:430)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:272)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:189)
  |   | 	at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)
  |   | 	at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)
  |   | 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |   | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |   | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  |   | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  |   | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
  |   | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
  |   | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  |   | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  |   | 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
  |   | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  |   | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
  |   | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  |   | 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
  |   | 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
  |   | 	at java.lang.Thread.run(Unknown Source)
  |   | 
  |   | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139966#4139966

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139966



More information about the jboss-user mailing list