axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John Hawkins (JIRA)" <axis-c-...@ws.apache.org>
Subject [jira] Updated: (AXISCPP-573) problem in setURI() API in IAttribute class
Date Tue, 12 Apr 2005 13:22:34 GMT
     [ http://issues.apache.org/jira/browse/AXISCPP-573?page=history ]

John Hawkins updated AXISCPP-573:
---------------------------------

    Description: 
If the prefix of the attribute is empty and if I use setURI() then the Attribute class correctly
serialize by adding the correct prefix and if necessary will even add the namespace declaration
to the serialized output.


IAttribute *attr1=phb->createAttribute("Name","","axis");
attr1->setURI("http://axis.apache.com");

will create the following soap message

<ns:TestHeader xmlns:ns="http://ws.apache.org/" xmlns:ns2="http://axis.apache.com" ns2:Name="axis">

Here setURI() results in generating a namespace declaration for the uri "http://axis.apache.com"
and used the generated prefix 'ns2' as the prefix for 'Name' attribute.

 But if the attribute prefix is not empty, then this setURI() does not change its prefix.

INamespace *nsp=phb->createNamespaceDecl ("nsp","http://apache.com");
IAttribute *attr1=phb->createAttribute("Name","nsp","axis");
attr1->setURI("http://axis.apache.com");

results in 
<ns:TestHeader xmlns:ns="http://ws.apache.org/" nsp:Name="axis" xmlns:nsp="http://apache.com">

attr1->getPrefix() will return 'nsp'
attr1->getURI() will return 'http://axis.apache.com'

but there is no namespace declaration for this combination.

So either
 1.setURI() should also change the prefix value accordingly.
 2.setURI() should not change the URI if prefix is already set.
 3.setURI() should be removed from the API list.






  was:

If the prefix of the attribute is empty and if I use setURI() then the Attribute class correctly
serialize by adding the correct prefix and if necessary will even add the namespace declaration
to the serialized output.


IAttribute *attr1=phb->createAttribute("Name","","axis");
attr1->setURI("http://axis.apache.com");

will create the following soap message

<ns:TestHeader xmlns:ns="http://ws.apache.org/" xmlns:ns2="http://axis.apache.com" ns2:Name="axis">

Here setURI() results in generating a namespace declaration for the uri "http://axis.apache.com"
and used the generated prefix 'ns2' as the prefix for 'Name' attribute.

 But if the attribute prefix is not empty, then this setURI() does not change its prefix.

INamespace *nsp=phb->createNamespaceDecl ("nsp","http://apache.com");
IAttribute *attr1=phb->createAttribute("Name","nsp","axis");
attr1->setURI("http://axis.apache.com");

results in 
<ns:TestHeader xmlns:ns="http://ws.apache.org/" nsp:Name="axis" xmlns:nsp="http://apache.com">

attr1->getPrefix() will return 'nsp'
attr1->getURI() will return 'http://axis.apache.com'

but there is no namespace declaration for this combination.

So either
 1.setURI() should also change the prefix value accordingly.
 2.setURI() should not change the URI if prefix is already set.
 3.setURI() should be removed from the API list.






      Component: Client - Engine

> problem in setURI() API in IAttribute class
> -------------------------------------------
>
>          Key: AXISCPP-573
>          URL: http://issues.apache.org/jira/browse/AXISCPP-573
>      Project: Axis-C++
>         Type: Bug
>   Components: Client - Engine
>     Reporter: James Jose

>
> If the prefix of the attribute is empty and if I use setURI() then the Attribute class
correctly serialize by adding the correct prefix and if necessary will even add the namespace
declaration to the serialized output.
> IAttribute *attr1=phb->createAttribute("Name","","axis");
> attr1->setURI("http://axis.apache.com");
> will create the following soap message
> <ns:TestHeader xmlns:ns="http://ws.apache.org/" xmlns:ns2="http://axis.apache.com"
ns2:Name="axis">
> Here setURI() results in generating a namespace declaration for the uri "http://axis.apache.com"
and used the generated prefix 'ns2' as the prefix for 'Name' attribute.
>  But if the attribute prefix is not empty, then this setURI() does not change its prefix.
> INamespace *nsp=phb->createNamespaceDecl ("nsp","http://apache.com");
> IAttribute *attr1=phb->createAttribute("Name","nsp","axis");
> attr1->setURI("http://axis.apache.com");
> results in 
> <ns:TestHeader xmlns:ns="http://ws.apache.org/" nsp:Name="axis" xmlns:nsp="http://apache.com">
> attr1->getPrefix() will return 'nsp'
> attr1->getURI() will return 'http://axis.apache.com'
> but there is no namespace declaration for this combination.
> So either
>  1.setURI() should also change the prefix value accordingly.
>  2.setURI() should not change the URI if prefix is already set.
>  3.setURI() should be removed from the API list.

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


Mime
View raw message