You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Allan Schrum (JIRA)" <ji...@apache.org> on 2009/07/14 20:35:15 UTC

[jira] Created: (AXIS2-4432) C-language WSDL-generated circular references do not compile

C-language WSDL-generated circular references do not compile
------------------------------------------------------------

                 Key: AXIS2-4432
                 URL: https://issues.apache.org/jira/browse/AXIS2-4432
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
    Affects Versions: 1.6
         Environment: Linux
            Reporter: Allan Schrum
             Fix For: 1.6


If the XSD of a WSDL has one complexType reference another complexType which references the first complexType (A -> B -> A) then the generated C-language code will not compile. The generated code creates the associated "typedef" for the object-level structure after all the includes are included. Unfortunately, in this circular-reference case, this is too late. The solution is to move the "typedef struct X X_t" definition in front of the includes so that the definition is available ahead of time.

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


[jira] Closed: (AXIS2-4432) C-language WSDL-generated circular references do not compile

Posted by "Allan Schrum (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-4432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Allan Schrum closed AXIS2-4432.
-------------------------------

    Resolution: Duplicate

Found the identical issue over in AXIS2C project: https://issues.apache.org/jira/browse/AXIS2C-1379



> C-language WSDL-generated circular references do not compile
> ------------------------------------------------------------
>
>                 Key: AXIS2-4432
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4432
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.6
>         Environment: Linux
>            Reporter: Allan Schrum
>             Fix For: 1.6
>
>         Attachments: CircularReference.diff
>
>
> If the XSD of a WSDL has one complexType reference another complexType which references the first complexType (A -> B -> A) then the generated C-language code will not compile. The generated code creates the associated "typedef" for the object-level structure after all the includes are included. Unfortunately, in this circular-reference case, this is too late. The solution is to move the "typedef struct X X_t" definition in front of the includes so that the definition is available ahead of time.

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


[jira] Updated: (AXIS2-4432) C-language WSDL-generated circular references do not compile

Posted by "Allan Schrum (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-4432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Allan Schrum updated AXIS2-4432:
--------------------------------

    Attachment: CircularReference.diff

This patches the XSL template by moving the "typedef" section to before the include files. Since it is a forward reference statement moving it should not cause problems in other areas. However, by moving it before the includes it makes that symbol for each of the includes that need it.

> C-language WSDL-generated circular references do not compile
> ------------------------------------------------------------
>
>                 Key: AXIS2-4432
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4432
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.6
>         Environment: Linux
>            Reporter: Allan Schrum
>             Fix For: 1.6
>
>         Attachments: CircularReference.diff
>
>
> If the XSD of a WSDL has one complexType reference another complexType which references the first complexType (A -> B -> A) then the generated C-language code will not compile. The generated code creates the associated "typedef" for the object-level structure after all the includes are included. Unfortunately, in this circular-reference case, this is too late. The solution is to move the "typedef struct X X_t" definition in front of the includes so that the definition is available ahead of time.

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


[jira] Issue Comment Edited: (AXIS2-4432) C-language WSDL-generated circular references do not compile

Posted by "Allan Schrum (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-4432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12731033#action_12731033 ] 

Allan Schrum edited comment on AXIS2-4432 at 7/14/09 11:39 AM:
---------------------------------------------------------------

This patches the XSL template by moving the "typedef" section to before the include files. Since it is a forward reference statement moving it should not cause problems in other areas. However, by moving it before the includes it makes that symbol available for each of the includes that need it.

      was (Author: allan.schrum):
    This patches the XSL template by moving the "typedef" section to before the include files. Since it is a forward reference statement moving it should not cause problems in other areas. However, by moving it before the includes it makes that symbol for each of the includes that need it.
  
> C-language WSDL-generated circular references do not compile
> ------------------------------------------------------------
>
>                 Key: AXIS2-4432
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4432
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.6
>         Environment: Linux
>            Reporter: Allan Schrum
>             Fix For: 1.6
>
>         Attachments: CircularReference.diff
>
>
> If the XSD of a WSDL has one complexType reference another complexType which references the first complexType (A -> B -> A) then the generated C-language code will not compile. The generated code creates the associated "typedef" for the object-level structure after all the includes are included. Unfortunately, in this circular-reference case, this is too late. The solution is to move the "typedef struct X X_t" definition in front of the includes so that the definition is available ahead of time.

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