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 "Adrian Dick (JIRA)" <ax...@ws.apache.org> on 2005/06/30 18:08:13 UTC

[jira] Created: (AXISCPP-716) Support for the attribute construct 'use'

Support for the attribute construct 'use'
-----------------------------------------

         Key: AXISCPP-716
         URL: http://issues.apache.org/jira/browse/AXISCPP-716
     Project: Axis-C++
        Type: Improvement
  Components: Serialization, WSDL processing - RPC, SOAP, Client - Deserialization, Server - Deserialization, WSDL processing - Doc  
    Versions: current (nightly)    
    Reporter: Adrian Dick


Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.

The values this can take are:
- required
- optional
- prohibited

The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
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
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-716?page=comments#action_12459327 ] 
            
Franz Fehringer commented on AXISCPP-716:
-----------------------------------------

I made a hack for detecting the presence/absence of optional attributes in deserializing the SOAP response.
To this end i initialize the pertaining C++ attributes in the generated to special values.
While this is not a real solution to the problem it might help others too (it helped me alot!)?
The special values could also be all -1 (except from boolean) if that matters for inclusion in SVN.
Comments?

$ pwd
/cd/d/Quellen/SVN/axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws

Index: cpp/BeanParamWriter.java
===================================================================
--- cpp/BeanParamWriter.java    (Revision 480584)
+++ cpp/BeanParamWriter.java    (Arbeitskopie)
@@ -1474,6 +1492,27 @@
                         writer.write("\t"+ attribs[i].getParamNameAsMember() + " = NULL;\n");
                         writer.write("\t__axis_deepcopy_" + attribs[i].getParamName() + " = false;\n");
                     }
+                    else if (attribs[i].isAttribute() && attribs[i].isSimpleType())
+                    {
+                        String typeName = attribs[i].getTypeName();
+
+                        if (typeName == "xsd__int" || typeName == "xsd__long" || typeName == "xsd__integer")
+                        {
+                            writer.write("\t" + attribs[i].getParamName() + " = -9999999;\n");
+                        }
+                        else if (typeName == "xsd__double")
+                        {
+                            writer.write("\t" + attribs[i].getParamName() + " = -99999999;\n");
+                        }
+                        else if (typeName == "xsd__boolean")
+                        {
+                            writer.write("\t" + attribs[i].getParamName() + " = false_;\n");
+                        } 
+                        else if (typeName == "xsd__date" || typeName == "xsd__time" || typeName == "xsd__dateTime")
+                        {
+                            writer.write("\t" + attribs[i].getParamName() + ".tm_sec = -9999999;\n");
+                        }
+                    }
                 }
             }
             writer.write("}\n");
@@ -1641,4 +1680,4 @@
     {
         return null;
     }
-}
\ Kein Zeilenvorschub am Ende der Datei
+}


> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Assigned: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXISCPP-716?page=all ]

nadir amra reassigned AXISCPP-716:
----------------------------------

    Assignee: nadir amra

> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>         Assigned To: nadir amra
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
    [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12462693 ] 

nadir amra commented on AXISCPP-716:
------------------------------------

Just to keep you posted, I pretty much have completed this issue, just running tests.  Stay tuned.

> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>         Assigned To: nadir amra
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Reopened: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nadir amra reopened AXISCPP-716:
--------------------------------


> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>         Assigned To: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


Re: [jira] Closed: (AXISCPP-716) Support for the attribute construct 'use'

Posted by Franz Fehringer <fe...@isogmbh.de>.
In fact these SOAP fault parsing problems do not strictly pertain to 
AXISCPP-991 (AXISCPP-978 perhaps?).
Anyway i added my comment about this to AXISCPP-991.

Franz


Franz Fehringer schrieb:
> Hello Nadir,
>
> Very glad to hear this.
> I would like to make a suggestion for this undertaking:
> In changing the error handling for my application, i experienced 
> particular problems with XML parsing of SOAP faults.
> So my suggestion is to make test cases with
>
>     * both soap actor and detail
>     * soap detail but not actor (the predominant case for me)
>     * soap actor but not detail
>     * neither soap actor nor detail
>
> I added also recent comments about this to AXISCPP-991.
>
> Thanks and keep on fixing :-)
>
> Franz
>
>
> Nadir Amra schrieb:
>> Franz, Yes, that was next on my list.  Should be done this week. 
>>
>> Nadir K. Amra
>>
>>
>> Franz Fehringer <fe...@isogmbh.de> wrote on 01/08/2007 05:04:20 AM:
>>
>>   
>>> Hello Nadir,
>>>
>>> This is very good news, thanks alot.
>>> Now the remaining bummer for me is AXISCPP-991, where you and me 
>>> have made conflicting fixes (which both are not the full solution of
>>> the problem).
>>> Any chance for you looking after this one?
>>>
>>> Cheers
>>>
>>> Franz
>>>
>>>     
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
>> For additional commands, e-mail: axis-c-dev-help@ws.apache.org
>>
>>   
>


Re: [jira] Closed: (AXISCPP-716) Support for the attribute construct 'use'

Posted by Franz Fehringer <fe...@isogmbh.de>.
Hello Nadir,

Very glad to hear this.
I would like to make a suggestion for this undertaking:
In changing the error handling for my application, i experienced 
particular problems with XML parsing of SOAP faults.
So my suggestion is to make test cases with

    * both soap actor and detail
    * soap detail but not actor (the predominant case for me)
    * soap actor but not detail
    * neither soap actor nor detail

I added also recent comments about this to AXISCPP-991.

Thanks and keep on fixing :-)

Franz


Nadir Amra schrieb:
> Franz, Yes, that was next on my list.  Should be done this week. 
>
> Nadir K. Amra
>
>
> Franz Fehringer <fe...@isogmbh.de> wrote on 01/08/2007 05:04:20 AM:
>
>   
>> Hello Nadir,
>>
>> This is very good news, thanks alot.
>> Now the remaining bummer for me is AXISCPP-991, where you and me 
>> have made conflicting fixes (which both are not the full solution of
>> the problem).
>> Any chance for you looking after this one?
>>
>> Cheers
>>
>> Franz
>>
>>     
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-c-dev-help@ws.apache.org
>
>   


Re: [jira] Closed: (AXISCPP-716) Support for the attribute construct 'use'

Posted by Nadir Amra <am...@us.ibm.com>.
Franz, Yes, that was next on my list.  Should be done this week. 

Nadir K. Amra


Franz Fehringer <fe...@isogmbh.de> wrote on 01/08/2007 05:04:20 AM:

> Hello Nadir,
> 
> This is very good news, thanks alot.
> Now the remaining bummer for me is AXISCPP-991, where you and me 
> have made conflicting fixes (which both are not the full solution of
> the problem).
> Any chance for you looking after this one?
> 
> Cheers
> 
> Franz
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


Re: [jira] Closed: (AXISCPP-716) Support for the attribute construct 'use'

Posted by Franz Fehringer <fe...@isogmbh.de>.
Hello Nadir,

This is very good news, thanks alot.
Now the remaining bummer for me is AXISCPP-991, where you and me have 
made conflicting fixes (which both are not the full solution of the 
problem).
Any chance for you looking after this one?

Cheers

Franz


nadir amra (JIRA) schrieb:
>      [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
>
> nadir amra closed AXISCPP-716.
> ------------------------------
>
>        Resolution: Fixed
>     Fix Version/s: current (nightly)
>
> Problem is finally resolved.  Default behavior if use is not specified is as it was before, 'required.
>
> The code now supports use="optional" and use="required". 
>
> The behavior for use="optional" is similar to the behaviour for nillable elements.
>
> Otherwise, although 13 files needed to be modified, it was not too bad to implement. 
>
> Let me know if there are any problems. 
>
>   
>> Support for the attribute construct 'use'
>> -----------------------------------------
>>
>>                 Key: AXISCPP-716
>>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>>             Project: Axis-C++
>>          Issue Type: Improvement
>>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>>    Affects Versions: current (nightly)
>>            Reporter: Adrian Dick
>>         Assigned To: nadir amra
>>             Fix For: current (nightly)
>>
>>
>> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
>> The values this can take are:
>> - required
>> - optional
>> - prohibited
>> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
>> To support optional we would need to do something similar to the behaviour for nillable on elements.
>>     
>
>   


[jira] Closed: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nadir amra closed AXISCPP-716.
------------------------------

       Resolution: Fixed
    Fix Version/s: current (nightly)

Problem is finally resolved.  Default behavior if use is not specified is as it was before, 'required.

The code now supports use="optional" and use="required". 

The behavior for use="optional" is similar to the behaviour for nillable elements.

Otherwise, although 13 files needed to be modified, it was not too bad to implement. 

Let me know if there are any problems. 

> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>         Assigned To: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12526395 ] 

Franz Fehringer commented on AXISCPP-716:
-----------------------------------------

I nailed down the issue with the current solution to the following:
1) There is a base type containing attributes.
2) There is an extension type based on the base type above containing attributes on its own.
Then the attributes from the base type get lost during code generation, i.e. the set of extension type attributes replaces the set of base type attributes instead of augmenting the base type attributes with its own attributes.
This is not directly related with the attributes being optional or not.
This should be easy to fix, if one knows the exact code snippet.


> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>            Assignee: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Resolved: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nadir amra resolved AXISCPP-716.
--------------------------------

    Resolution: Fixed

This is now fixed under SVN revision 673900.  Extension attributes are now included.  

Will close whenl a test case is created. 

> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>            Assignee: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12495535 ] 

Franz Fehringer commented on AXISCPP-716:
-----------------------------------------

There seems to be a flaw in the optional attributes solution implemented with AXISCPP-716.
It shows up under the following circumstances::

    * There is a base type containing optional attributes.
    * From this base type another type is derived via extension.

Then *no* code is generated for the optional attributes contained in the derived type.
More to the point:  For the optional attributes implicitely contained in the derived type (via extension from the base type) no code is generated.


> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>         Assigned To: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-716?page=comments#action_12428079 ] 
            
Franz Fehringer commented on AXISCPP-716:
-----------------------------------------

Mail (response) by Adrian Dick
-----------------------------------------

This is an area of code I haven't worked with for a little while now, so my
knowledge is a bit rusty,   but I shall try and give some responses to your
questions below.

            Are ElementInfos for XML elements and AttributeInfos for XML
            attributes or is this a misunderstanding on my side?
            --> While I believe this was the original intent, taking a look
            at the code it appears these concepts have become clouded as
            the code has evolved -- although everytime I work in this area
            I try to improve it a little.
            In class Type elements maps names to ElementInfos, whereas
            attributes maps names to Types.
            Why not map names to AttributeInfos in the latter case?
            --> I have a suspicion this could be because all (xml) elements
            are stored in the typemap, so you use the name to lookup the
            needed type, while attributes are not.
            This seems to be the principal flaw to me; there is no direct
            access to the attributes and their properties (isOptional for
            example) in populateAttribList; only elements can be accessed
            with their properties.
            --> It does seem odd that we immediately work with the Type
            while being able to work with AttributeInfo, that has already
            been processed to give easy access to the desired properties,
            would probably make more sense.
      Now that my email has become enough confusing too, i think i will
      give it a second try tomorrow.
      As a last try for today are the following ideas sound?
            AttributeInfos should be constructed from names and types like
            ElementInfos (for attributes a simpler type concept than Type
            would be sufficient).
            If className (currently constructor argument for AttributeInfo)
            is needed for source generation, it should be in the base class
            ParamInfo.
            --> This does seem odd, particularly as the classname used is
            actually the one from the parent ParamInfo -- it really isn't
            obvious to me how this is used.
            In class Type, the attributes member should be a map from
            String to AttributeInfo.



> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Issue Comment Edited: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ https://issues.apache.org/jira/browse/AXISCPP-716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12526395 ] 

fehrin edited comment on AXISCPP-716 at 9/11/07 5:25 AM:
------------------------------------------------------------------

I nailed down the issue with the current solution to the following:
1) There is a base type containing attributes.
2) There is an extension type based on the base type above containing attributes on its own.
Then the attributes from the base type get lost during code generation, i.e. the set of extension type attributes replaces the set of base type attributes instead of augmenting the base type attributes with its own attributes.
This is not directly related with the attributes being optional or not.
This should be easy to fix, if one knows the exact code snippet.
The issue described here is a regression with respect to previous behaviour, code was generated for both sets of attributes until the latest fix.


      was (Author: fehrin):
    I nailed down the issue with the current solution to the following:
1) There is a base type containing attributes.
2) There is an extension type based on the base type above containing attributes on its own.
Then the attributes from the base type get lost during code generation, i.e. the set of extension type attributes replaces the set of base type attributes instead of augmenting the base type attributes with its own attributes.
This is not directly related with the attributes being optional or not.
This should be easy to fix, if one knows the exact code snippet.

  
> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>            Assignee: nadir amra
>             Fix For: current (nightly)
>
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-716) Support for the attribute construct 'use'

Posted by "Franz Fehringer (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-716?page=comments#action_12428078 ] 
            
Franz Fehringer commented on AXISCPP-716:
-----------------------------------------

Mail (response) by Adrian Dick
-------------------------

Hi,

There are several areas where Axis C++ does not (yet) completely support
the SOAP/XSD specs, and XML attributes is one of those.

I raised Jira AXISCPP-716 (
http://issues.apache.org/jira/browse/AXISCPP-716 ) for the specific issue
you've highlighted of required and optional.
Regretably, other priorities have prevented me from fixing this problem,
and it looks unlikely I'll have an opportunity any time soon.
Of course, there's no reason why someone else couldn't take it on.


As for how to fix this.
I believe most (possibly all) the logic for this needs to be in the WSDL2Ws
generate code.  I would suggest required attributes should be by-value
while optional attributes should be by-pointer, similar to nillable and
optional elements.

Regards,
Adrian
_______________________________________
Adrian Dick (adrian.dick@uk.ibm.com)


Franz Fehringer <fe...@isogmbh.de> wrote on 21/06/2006 10:21:51:

> > Hello,
> >
> > Today i had a closer look at the handling of xml attributes in Axis
> > generated C++ code (i work with latest SVN and consider for the moment
> > only the deserializing/response handling part).
> > First it seems that no difference between optional and required
> > attributes is made.
> > When it comes to deserializing, it is (equal in both cases) checked if
> > the attribute is present and only in this case the appropriate setter is
> > called.
> > The problem is now, that the C++ struct members representing the
> > attributes are values and not pointers and that there is no else branch
> > in the test for presence of the attribut.
> > The net effect is, that for nonpresent attributes the correspondent
> > struct members end up uninitialized (int value 4207536 for example) ant
> > there is no way to detect the case of missing optional attributes.
> > A simple (hopefully not too simple minded) fix would be to represent all
> > attributes as pointers and setting them to NULL in the (to be created)
> > else branch.
> > Thoughts (and btw ist there already a JIRA for this)?
> >
> > Greetings
> >
> > Franz
> >
> >
> > 



> Support for the attribute construct 'use'
> -----------------------------------------
>
>                 Key: AXISCPP-716
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-716
>             Project: Axis-C++
>          Issue Type: Improvement
>          Components: Client - Deserialization, Serialization, Server - Deserialization, SOAP, WSDL processing - Doc, WSDL processing - RPC
>    Affects Versions: current (nightly)
>            Reporter: Adrian Dick
>
> Currently, there is no support for the 'use' construct on attributes defined in a WSDL file.
> The values this can take are:
> - required
> - optional
> - prohibited
> The current default behaviour we provide matches to 'required', although WSDL2Ws does not validate this is definitely the case.
> To support optional we would need to do something similar to the behaviour for nillable on elements.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org