axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Garrett Young <garrett.yo...@inovis.com>
Subject RE: Cannot get sample "interopbase" to work. Client gets AX IS_SUCCESS, but no data returned
Date Wed, 25 Feb 2004 15:57:38 GMT
Susantha,

Do the recent changes to the CVS root address Elie's and Allen's problems? I
am having a problem trying to consume a response from the server that
contains multiple output elements. Please see the offending SOAP message
attached. The problem seems to be with the consumption of the multiRef node
- every output element is off by one... When it tries to deserialize the
excCodeString node the pNextParam seems to return the excCode node and
results in an access violation (dumps core). Will you please verify that
your fix will correctly handle the situation where complex types are
returned in the SOAP response.

Thanks for your help,
Garrett

SOAP response begin:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmln
s:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSc
hema-instance">
 <soapenv:Body>
  <ns1:sendUsingAgentFileResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://address removed for security purposes">
   <sendUsingAgentFileReturn href="#id0"/>
  </ns1:sendUsingAgentFileResponse>
  <multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmls
oap.org/soap/encoding/" xsi:type="ns2:ApiResponse"
xmlns:soapenc="http://schemas
.xmlsoap.org/soap/encoding/" xmlns:ns2="address removed for security
purposes">
   <excCode xsi:type="xsd:int">1</excCode>
   <excCodeString xsi:type="xsd:string">Duplicate message id</excCodeString>
   <excMessage xsi:type="xsd:string">Could not post command for sending
message Duplicate request
</excMessage>
   <success xsi:type="xsd:boolean">false</success>
   <value xsi:type="xsd:long">0</value>
  </multiRef>
 </soapenv:Body>
</soapenv:Envelope>

SOAP response end:
******************
Hi,

Just tried Axis 1.1 for Java and it works great, excellent job guys.

When I tried Axis 1.0 for C++ ran into some problems building c++ stubs 
from a WSDL file.
Looked at your recent CVS mods and saw that you guys have actually fixed
that
problem and tried to get the lastest code to work:
	1. downloaded today's snapshot (feb 23rd) sources
	2. built AXISCPP_HOME/java jars without a problem
	3. modified AXISCPP_HOME/c/src/wsdl/build.xml to point to the right 
folders for "lib" and "src"
	4. built AXISCPP_HOME/c/src/wsdl wsdl2ws.jar without a problem
	5. tried to run the WSDL2Ws tool again from the new wsdl2ws.jar file
but 
now I get a run time
	    expection:

	java.lang.NoSuchMethodException: 
org.apache.axis.wsdl.symbolTable.SchemaUtils.getArrayComponentQName() ...

Has anyone else run into this problem as well?

Snooped around a bit and realized that you guys have similar code under the 
same package and class names for the axis.jar
and the wsdl2ws.jar.  Specifically these files are under both trees right
now:
	1.  org.apache.axis.wsdl.symbolTable.SchemaUtils.java
	2.  org.apache.axis.wsdl.symbolTable.ElementDecl.java

Do you want to merge the additional functionality that currently exists 
under the 
$AXISCPP_HOME/c/src/wsdl/org/apache/axis/wsdl/symbolTable/SchemaUtils.java
into
$AXISCPP_HOME/java/src/org/apache/axis/wsdl/symbolTable/SchemaUtils.java
and follow the same step for the ElementDecl.java file as well?  Or maybe 
these two
classes should be renamed under the $AXISCPP_HOME/c/src/wsdl/... tree?

Thanks for your help,

Elie

-----Original Message-----
From: susantha@opensource.lk [mailto:susantha@opensource.lk]
Sent: Thursday, February 19, 2004 3:29 AM
To: Apache AXIS C User List
Subject: Re: Cannot get sample "interopbase" to work. Client gets
AXIS_SUCCESS, but no data returned


WSDL2Ws tool that comes with release 1.0 is not capable to generate code
properly when there are multiple return parameters.

For the moment please use the code that comes with the samples.

I am improving the WSDL2Ws tool to support this these days and will be
available next week. Early next week you can get the code from CVS head.

Thanks,

Susantha.

> Hi Susantha,
>
> Thanks for your response.
> I downloaded Axis from:
>
http://apache.mirrors.rossfell.co.uk/dist/ws/axis-c/axis-c-src-linux-current
-src.tar.gz
>
> I have suspected a problem with the code as when I
> tried to run the "interopGroupB" sample, the server
> side code ("skeleton code"?) is definitely out of sync
> with the WSDL. The server side code has:
>
> float
> InteropTestPortTypeB::echoStructAsSimpleTypes(SOAPStruct*
> Value0);
>
> But the WSDL has:
> <message name="echoStructAsSimpleTypesRequest">
> 		<part name="inputStruct" type="s:SOAPStruct"/>
> 	</message>
> 	<message name="echoStructAsSimpleTypesResponse">
> 		<part name="outputString" type="xsd:string"/>
> 		<part name="outputInteger" type="xsd:int"/>
> 		<part name="outputFloat" type="xsd:float"/>
> 	</message>
>
> Allan
>
> --- susantha@opensource.lk wrote:
>> It seems that the stub code you have is not
>> compatible with the latest CVS
>> code. Are you using the 1.0 release or latest code
>> from CVS ?.
>>
>> Regards,
>>
>> Susantha.
>>
>> > Hi All,
>> >
>> > I'm having a problem with this sample.
>> >
>> > I have setup the server side ok.
>> > At http://localhost/axis, I can see the table of
>> > deployed services (and this service in particular)
>> >
>> > When I run the client I get: (more info after
>> this..)
>> >
>> >
>> > invoking echoString...
>> > failed
>> > invoking echoStringArray...
>> > failed
>> > invoking echoInteger...
>> > failed
>> > invoking echoIntegerArray...
>> > failed
>> > invoking echoFloat...
>> > failed
>> > invoking echoFloatArray...
>> > failed
>> > invoking echoStruct...
>> > failed
>> > invoking echoStructArray...
>> > failed
>> > invoking echoVoid...
>> > successful
>> > invoking echoBase64...
>> > failed
>> > invoking echoDate...
>> > Aborted
>> >
>> >
>> > Note in this output:
>> > All the API's that return something fail, ie only
>> > echoVoid works.
>> > echoDate aborts but this is probably only because
>> of
>> > the client side memcmp in the client program.
>> > The interesting bit is, that for all of these
>> APIs,
>> > the call to Invoke() returns
>> > AXIS_SUCCESS, but when we go to get the result,
>> it's
>> > garbage. (See following code from
>> > InteropTestPortType.cpp to understand the context
>> > here)
>> >          nStatus = m_pCall->Invoke();
>> >          if (AXIS_SUCCESS == nStatus)
>> >          {
>> >
>> m_pCall->GetResult()->GetString(&Ret);
>> >          }
>> >
>> > My server side code is as given in the user guide,
>> ie
>> > it returns the parameters passed in
>> >
>> >
>> > Some info
>> > ---------
>> > uname -a
>> > Linux lxaho 2.4.20-4GB #1 Mon Mar 17 17:54:44 UTC
>> 2003
>> > i686 unknown unknown GNU/     Linux
>> >
>> > g++ -v
>> > gcc version 3.3 20030226 (prerelease) (SuSE Linux)
>> >
>> > Axis version: 1.0. Note I downloaded & built the
>> > source myself.
>> >
>> > Any help on this one :-)  ??
>> >
>> > Thanks,
>> >
>> > Allan
>> >
>> > __________________________________
>> > Do you Yahoo!?
>> > Yahoo! Mail SpamGuard - Read only the mail you
>> want.
>> > http://antispam.yahoo.com/tools
>> >
>> >
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail SpamGuard - Read only the mail you want.
> http://antispam.yahoo.com/tools
>
>

Mime
View raw message