Re: PHP5 SoapClient and Apache Axis interop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It probably should return a fault, which is why I haven't ruled out a misconfiguration of Axis.

And you're right... I wasn't using the Soap 1.2, when I copied the client creation, I was in the middle of testing 1.2, just in case that was the problem. It isn't, and I'm back to the default Soap 1.1 now.

$userService =
new SoapClient(
"https://localhost:8043/whisper-server/ws/UserService?wsdl";,
array( 'trace' => 1 ) );


With some more testing, I was able to get PHP's SoapClient to talk with one of the axis built-in servlets, the VersionService:

        $versionService = new SoapClient(
            "http://localhost:8000/axis/services/Version?wsdl";,
            array( 'trace' => 1 ) );

        $versionString = $versionService->getVersion();
        echo "version string = " . $versionString;

This works just fine, however it doesn't require passing any arguments. I'm trying to create a (simple) service that does need arguments to see if that works well.

Mark

On Apr 10, 2005, at 7:20 PM, George Schlossnagle wrote:


On Apr 10, 2005, at 10:09 PM, Mark Slater wrote:

There is no SOAP response. Apache Axis throws a java.lang.IncompatibleClassChangeError and (since its running in Tomcat), the response is basically a Tomcat error page (HTML).

Seems like it should return a SOAP Fault.

I was hoping someone might have some experience (maybe an example of axis server and php client?) and know the incantation to make them talk to each other. This could be an Axis problem (I've posted to that user group as well, no responses so far), but it happens with RPC encoding or Document/literal encoding.... same error. Since the WSDL seems to be correct with either method, and Axis has been around longer, I'm leaning towards there being a problem with the PHP side; but again, that's just a guess.

It's a decent guess. At any rate, interop is a serious problem in the SOAP world, not just when interacting with PHP.


I don't think I included it in my first message, but the $userService is created with:

$userService =
new SoapClient(
"https://localhost:8043/whisper-server/ws/UserService?wsdl";,
array(
'trace' => 1,
'soap_version' => SOAP_1_2 ) );

Does your service require SOAP 1.2? This can cause all sorts of problems, as it's not backwards compatible.


fwiw, I don't have any experience with Axis.

George

-- PHP Soap Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Kernel Newbies]     [PHP Database]     [Yosemite]

  Powered by Linux