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]>

Reply via email to