You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by ax...@ws.apache.org on 2004/08/30 11:49:20 UTC

[jira] Resolved: (AXISCPP-144) When Stub::setSOAPMethodAttribute is called multiple times the stub code sets the arrtibute multiple times

Message:

   The following issue has been resolved as FIXED.

   Resolver: Samisa Abeysinghe
       Date: Mon, 30 Aug 2004 2:47 AM

The setSOAPMethodAttribute method of the Stub class was patched to check if an attribute with the same local name and prefix is set and if so remove it first.
---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/AXISCPP-144

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: AXISCPP-144
    Summary: When Stub::setSOAPMethodAttribute is called multiple times the stub code sets the arrtibute multiple times
       Type: Bug

     Status: Resolved
   Priority: Major
 Resolution: FIXED

    Project: Axis-C++
 Components: 
             WSDL processing
   Fix Fors:
             1.3 Beta

   Assignee: Samisa Abeysinghe
   Reporter: Samisa Abeysinghe

    Created: Mon, 30 Aug 2004 1:42 AM
    Updated: Mon, 30 Aug 2004 2:47 AM
Environment: All platforms

Description:
When Stub::setSOAPMethodAttribute is called multiple times the  stub sets the arrtibute multiple times.

e.g. For UDDI WSDL (inquire_v2.wsdl) I called two methods on the stub.

First
    tModel_Array result = ws->get_tModelDetail(arrtModelKeys, cpname);
and then
    businessEntity_Array businessEntities = ws->get_businessDetail(arrBusinessKeys, cpname);

where
cpname = "2.0";

For 1st methods it sends:
<?xml version='1.0' encoding='utf-8' ?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Body><ns1:get_tModelDetail xmlns:ns1="urn:uddi-org:api_v2" generic="2.0"><ns1:tModelKey>UUID:39B8F710-F088-11D6-8F10-000629DC0A7B</ns1:tModelKey></ns1:get_tModelDetail></SOAP-ENV:Body></SOAP-ENV:Envelope>

And for second methods it sends
<?xml version='1.0' encoding='utf-8' ?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Body><ns1:get_businessDetail xmlns:ns1="urn:uddi-org:api_v2" generic="2.0" generic="2.0"><ns1:businessKey>D368F080-8423-11D6-9FFC-000C0E00ACDD</ns1:businessKey></ns1:get_businessDetail></SOAP-ENV:Body></SOAP-ENV:Envelope>

Note the duplicated methods attribute 'generic="2.0"' in the second SOAP message.

Looking into the generated stub call I see that 
setSOAPMethodAttribute("generic", "", Value1);
is called for each method once. Looks like the Stub cache the set SOAP methods attributes and reuse in subsequent calls.

This causes the server to send a "Client Error" Fault.



---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira