You also might want to check out how you're packaging SOAP in your EAR. WAS 4 has soap.jar already within it's lib directory, and if you are also including it in your WEB-INF/lib dir, sometimes WAS gets a little cranky about that and the classloader violations fly. Sometimes all it takes is a full stop and start of the application server you have your EAR deployed under. Hope this helps,
----- Original Message ----- From: "Scott Nichol" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, September 19, 2002 10:00 AM Subject: Re: websphere 4.0 SOAPException Please Help! > I think I can help with TcpTunnelGui, but the latest error you are seeing is > not something I think I can help with. > > TcpTunnelGui will listen on a new port, and you must change your client to > connect to that port. So, if the client was calling > http://localhost/ASTWebService/servlet/rpcrouter, you run > > TcpTunnelGui 9080 localhost 80 > > and change the client to > http://localhost:9080/ASTWebService/servlet/rpcrouter. In other words, the > client now connects to TcpTunnelGui, while TcpTunnelGui connects to the Web > server (at localhost:80). > > Scott Nichol > > ----- Original Message ----- > From: "O'Neill, Timothy(LIT)" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Thursday, September 19, 2002 5:02 AM > Subject: RE: websphere 4.0 SOAPException Please Help! > > > > Hi Scott, > > > > I have tried the tcptunnelgui but I'm not seeing anything at all? > > > > Heres the url: URL url = new URL > > ("http://localhost:9080/ASTWebService/servlet/rpcrouter"); > > > > I have the following params to tcptunnelgui 80 localhost 9080, is this > > right? > > > > This is an ejb that I'm trying to expose as a web service. > > > > I created a small class that calls the ejb and only returns a string from > > the complex type that I really want and have exposed it as a soap web > > service but I'm now getting the following error from it: > > > > Fault Code = SOAP-ENV:Server > > Fault String = Exception from service object: Class > > com/libertyit/ast/ASTSessionFacade violates loader constraints > > java.lang.LinkageError: Class com/libertyit/ast/ASTSessionFacade violates > > loader constraints > > at java.lang.ClassLoader.defineClass0(Native Method) > > at java.lang.ClassLoader.defineClass(ClassLoader.java(Compiled > > Code)) > > at > > > com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.jav > > a(Compiled Code)) > > at > > > com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.jav > > a(Compiled Code)) > > at > > > com.ibm.ws.classloader.ClassLoaderGroup.findClass(ClassLoaderGroup.java(Comp > > iled Code)) > > at > > > com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.jav > > a(Compiled Code)) > > at > > > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.jav > > a(Compiled Code)) > > at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled > Code)) > > at > > > com.libertyit.ast.ASTWSWrapper.getPolicyExpirationDate(ASTWSWrapper.java:43) > > at java.lang.reflect.Method.invoke(Native Method) > > at org.apache.soap.server.RPCRouter.invoke(RPCRouter.java:146) > > at > > org.apache.soap.providers.RPCJavaProvider.invoke(RPCJavaProvider.java:129) > > at > > > org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:28 > > 7) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > > at > > > com.ibm.servlet.engine.webapp.StrictServletInstance.doService(ServletManager > > .java:827) > > at > > > com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(StrictLifecycl > > eServlet.java:159) > > at > > > com.ibm.servlet.engine.webapp.IdleServletState.service(StrictLifecycleServle > > t.java:286) > > at > > > com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(StrictLifecycle > > Servlet.java:106) > > at > > > com.ibm.servlet.engine.webapp.ServletInstance.service(ServletManager.java:47 > > 2) > > at > > > com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(ServletMan > > ager.java:1012) > > at > > > com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(ServletManag > > er.java:913) > > at > > > com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(W > > ebAppRequestDispatcher.java:499) > > at > > > com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(WebAppRequest > > Dispatcher.java:278) > > at > > > com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(WebAppRequestD > > ispatcher.java:105) > > at > > com.ibm.servlet.engine.srt.WebAppInvoker.doForward(WebAppInvoker.java:67) > > at > > > com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker. > > java:123) > > at > > > com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(CachedIn > > vocation.java:67) > > at > > > com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(ServletRequ > > estProcessor.java:122) > > at > > > com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(OSEListener > > .java:315) > > at > > > com.ibm.servlet.engine.http11.HttpConnection.handleRequest(HttpConnection.ja > > va:60) > > at > > > com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:313) > > at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:242) > > at com.ibm.ws.util.CachedThread.run(ThreadPool.java:122) > > > > Heres the code: > > > > package com.libertyit.ast; > > /* > > * ASTWSWrapper.java > > * > > * Created on 18 September 2002, 09:29 > > */ > > import javax.naming.InitialContext; > > import javax.naming.Context; > > import javax.naming.NamingException; > > import java.rmi.RemoteException; > > import com.libertyit.ast.entity.Policy; > > > > /** > > * > > * @author n0099385 > > */ > > public class ASTWSWrapper { > > > > /** Creates a new instance of ASTWSWrapper */ > > public ASTWSWrapper() > > { > > } > > > > public String getPolicyExpirationDate(String aPolicyNumber) throws > > Exception { > > > > // get the JNDI initial context > > System.err.println("Getting J2EE initial context"); > > java.util.Properties jndiProperties = new java.util.Properties(); > > > > > jndiProperties.put("java.naming.factory.initial","com.ibm.websphere.naming.W > > snInitialContextFactory"); > > > > jndiProperties.put("java.naming.provider.url","iiop://localhost:900/"); > > Context jndiContext = new > > InitialContext(jndiProperties);//jndiProperties); > > // lookup the EJB home > > System.err.println("Looking up EJB Home"); > > Object homeRef = > > jndiContext.lookup("com/libertyit/ast/ASTSessionFacade"); > > ASTSessionFacadeHome home = > > (ASTSessionFacadeHome)javax.rmi.PortableRemoteObject.narrow( > > homeRef, ASTSessionFacadeHome.class); > > // create the EJB instance > > System.err.println("Creating EJB"); > > ASTSessionFacade ejb = home.create(); > > // call the getQuote method > > System.err.println("Calling getPolicyDetails"); > > Policy policy = ejb.getPolicyDetails(aPolicyNumber); > > > > System.err.println(policy.getExpirationDate()); > > String expirationDate = policy.getExpirationDate(); > > // remove the EJB > > System.err.println("Removing EJB"); > > ejb.remove(); > > return expirationDate; > > } > > > > } > > > > Is this a circular reference, I added the home and remote interface to the > > jar containing this class and created a dummy web module for this one then > > ran the soapearenabler on it. Whats going wrong here? > > > > Thanks for your help > > > > Tim > > > > -----Original Message----- > > From: Scott Nichol [mailto:[EMAIL PROTECTED]] > > Sent: 18 September 2002 14:33 > > To: [EMAIL PROTECTED] > > Subject: Re: websphere 4.0 SOAPException Please Help! > > > > > > Unfortunately, it's hard to help with the WAS implementation, since you > > cannot just plug in a new build that has more specific messages. Have you > > used a tool like TcpTunnelGui to capture the SOAP envelope from the call? > I > > am wondering exactly what is being de-serialized when this error occurs. > > > > Scott Nichol > > > > ----- Original Message ----- > > From: "O'Neill, Timothy(LIT)" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, September 18, 2002 6:02 AM > > Subject: websphere 4.0 SOAPException Please Help! > > > > > > > Hi All, > > > > > > I have deployed an ear file using websphere and am getting the following > > > SOAPException: > > > > > > [SOAPException: faultCode=SOAP-ENV:Client; msg=Unable to set > 'companyCode' > > > property: null.; targetException=java.lang.IllegalArgumentException: > > Unable > > > to set 'companyCode' property: null.] > > > at org.apache.soap.rpc.Call.invoke(Call.java:258) > > > at > > > > > > com.libertyit.ast.ASTSessionFacadeWebService.main(ASTSessionFacadeWebService > > > .java:70) > > > Exception in thread "main" > > > > > > companyCode is an attribute within a Bean that is the return of the > called > > > method. > > > > > > I have created 3 wsdl files as described in the Implementing Web > Services > > > with IBM Websphere 4.0 tutorial along with a SOAP deployment descriptor > > > heres the descriptor: > > > > > > <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment" > > > id="urn:ASTWebService"> > > > <isd:provider > > type="com.ibm.soap.providers.WASStatelessEJBProvider" > > > scope="Application" methods="getPolicyDetails"> > > > <isd:option key="JNDIName" > > > value="com/libertyit/ast/ASTSessionFacade"/> > > > <isd:option key="FullHomeInterfaceName" > > > value="com.libertyit.ast.ASTSessionFacadeHome"/> > > > <isd:option key="ContextProviderURL" > > > value="iiop://localhost:900"/> > > > <isd:option key="FullContextFactoryName" > > > value="com.ibm.websphere.naming.WsnInitialContextFactory"/> > > > </isd:provider> > > > > > > > > > <isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListene > > > r> > > > <isd:mappings> > > > <isd:map > > > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > > > xmlns:x="urn:ASTWebService" qname="x:Policy" > > > javaType="com.libertyit.ast.entity.Policy" > > > > > > java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer" > > > > > > xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer"/> > > > </isd:mappings> > > > </isd:service> > > > > > > Hope this is enough info to go on! Let me know if you need anything > > further. > > > > > > Thanks in advance for your help. > > > > > > Tim > > > > > > Tim O'Neill > > > > > > Experienced Software Developer > > > * Liberty Information Technology > > > Clarendon House > > > 9-21 Adelaide Street > > > Belfast > > > Northern Ireland > > > BT2 8DJ > > > * +44 (0) 2890 445532 > > > ____________________________________ > > > ** [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > > > > > **************************************************************************** > > > ********* > > > > > > Disclaimer: The contents of this e-mail and attached files in no way > > reflect > > > any policies of Liberty Information Technology Ltd > > > > > > > > > **************************************************************************** > > > ********* > > > > > > > > > > > > > > > > > > -- > > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > > > -- > > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > > > > > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
