Hi 
Even after doing suggested changes getting same
NullPointerException from serve side AXIS.  I have
noticed one more point that after changing
[WSDL_CACHE_USE = 1] in WSDL.Php getting this warning

Warning: fopen(
./wsdlcache/40d294f488aed60866a6fce079d369cd .wsdl):
failed to open 
stream: No such file or directory in
/usr/share/pear/SOAP/WSDL.php on line 942

As of my understanding that PEAR:SOAP converts 'long'
to 'Integer' type while sending it to server. How can
I overcome this problem in client side code?

Please help me to sort out this issue. If you need any
information do let me know

Thanks
Akl


--- [EMAIL PROTECTED] wrote:

> Bugfixes for PEAR::SOAP
> 
> * REQUIRED CHANGES TO PEAR::SOAP SCRIPTS
>  *
>  * - In Client.php
>  *
>  *                 search for and comment out the
> line "$name =
> $part['name'];"
>  *
>  * - In WDSL.php:
>  *
>  *                 set constant [WSDL_CACHE_USE = 1]
> to enable caching
> (recommended!)
>  *
>  *                 search for and replace the line
> "if (strstr($key,
> 'xmlns:') != false) {"
>  *                 by "if (strstr($key, 'xmlns:') !=
> false && strstr($key,
> 'intf') ==
> false) {"
> 
> 
> > Hi,
> >
> > If you are using document/wrapped or
> document/literal, PEAR::SOAP has
> > several bugs. I am doing this by heart some I
> cannot give you specific
> > details:
> >
> > - PEAR::SOAP sets namespace incorrectly when using
> complex types. This can
> > be fixed by commenting out something :-)
> > - PEAR::SOAP incorrectly handles long values (it
> converts them to
> > integers)
> >
> > To be shot: PEAR::SOAP has some issues.
> >
> > I cc'ed your issue to someone I know who has an
> fixed PEAR::SOAP package.
> > he might be willing to help you out.
> >
> > Kind Regards,
> >
> > Bolke
> >
> >> Hi,
> >> I am using PEAR:SOPA at client side to access
> hosted
> >> web services, which is using AXIS(1.3).
> >>
> >> I am getting strange problem when accessing API
> which
> >> takes one of the argument as NamedValue[], 
> whenever
> >> trying to access these API server throws
> >> NullPointerException. I am not sure what is going
> >> wrong. The same API works fine when I use AXIS at
> >> clien side.  It would be great help if you could
> help
> >> to sort out this problem.
> >> I tryed with PHP 4.3x and above, platform Linux
> >>
> >> Code Snippet:
> >>
> >> Custom NamedValue class:
> >>
> >> class NamedValue
> >> {
> >>   var $name;   // attribute name
> >>   var $value;  // attribute value
> >>
> >>   function NamedValue($name, $value = null)
> >>   {
> >>    // $this->name = $name;
> >>    // $this->value = $value;
> >>    $this->name = new
> >> SOAP_Value('name','string',$name);
> >>    $this->value =  new SOAP_Value('value', '',
> >> $value);
> >>   }
> >> }
> >>
> >> Invoke WS:
> >>
> >> $wsdlURL = $this->URL . '/foo/wsdl/' . $foo .
> '.wsdl';
> >> $wsdl = new SOAP_WSDL( $wsdlURL);
> >> $client = $wsdl->getProxy();
> >> $folderdef = array (new
> NamedValue(Attributes::NAME(),
> >> $name));
> >> $wsid = new SOAP_Value('','long', 9595);
> >> $newFolder = $fm_client->foo($wsid, $folderdef,
> >> null);
> >>
> >>
> >> Exception stack trace
> >> faultString: java.lang.NullPointerException
> >>  faultActor:
> >>  faultNode:
> >>  faultDetail:
> >>
> >>
>
{http://xml.apache.org/axis/}stackTrace:java.lang.NullPointerException
> >>         at
> >>
>
org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:310)
> >>         at
> >>
>
org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
> >>         at
> >>
>
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
> >>         at
> >>
>
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
> >>         at
> >>
>
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
> >>         at
> >>
>
org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
> >>         at
> >>
>
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:148)
> >>         at
> >>
>
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
> >>         at
> >>
>
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
> >>         at
> >>
>
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> >>         at
> >>
>
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
> >>         at
> >>
>
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
> >>         at
> >>
>
org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
> >>         at
> >>
>
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
> >>         at
> >>
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> >>         at
> >>
>
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
> >>         at
> >>
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >>         at
> >>
>
com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
> >>         at
> >>
>
oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown
> >> Source)
> >>         at
> >>
>
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
> >>         at
> >>
>
oracle.ifs.fdk.http.HttpServerManager.doFilter(HttpServerManager.java:103)
> >>         at
> >>
>
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20)
> >>         at
> >>
>
oracle.ifs.fdk.http.AxisSecurityFilter.doFilter(AxisSecurityFilter.java:83)
> >>         at
> >>
>
com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:659)
> >>         at
> >>
>
com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
> >>         at
> >>
>
com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
> >>         at
> >>
>
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)
> >>         at
> >>
>
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)
> >>         at
> >>
>
com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
> >>         at java.lang.Thread.run(Thread.java:534)
> >>
> >>
> >> java.lang.NullPointerException
> 
=== message truncated ===



        
                
__________________________________ 
Yahoo! Mail - PC Magazine Editors' Choice 2005 
http://mail.yahoo.com

Reply via email to