You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Derek Ryder (JIRA)" <ji...@apache.org> on 2010/04/01 20:25:27 UTC

[jira] Created: (CXF-2750) Output parameter and method name issue

Output parameter and method name issue
--------------------------------------

                 Key: CXF-2750
                 URL: https://issues.apache.org/jira/browse/CXF-2750
             Project: CXF
          Issue Type: Bug
          Components: JAXB Databinding
    Affects Versions: 2.2.7
            Reporter: Derek Ryder


I discovered an issue related to the name of a method and it's associated output parameter name.

If you name the method foo and the output parameter is named fooResponse, you'll end up with an exception.

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eSessionAuthenticationWS': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: org.apache.ws.commons.schema.XmlSchemaException:  Schema for namespace '<your name space>' already contains type 'fooResponse'

I did some digging into the code and it appears to be an issue with the naming convention in the code. When generating the response object for an operation it takes the method name and adds Response to it and it ends up as a schema type. Then when the output parameter is being initialized there is already a fooResponse schema type and thus the schema type collision.

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


[jira] Commented: (CXF-2750) Output parameter and method name issue

Posted by "Derek Ryder (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852502#action_12852502 ] 

Derek Ryder commented on CXF-2750:
----------------------------------

I wasn't recommending violating the spec and there is much to be said for knowing the spec and thereby being aware that one cannot create method in such a manner. However I would be in favor of an exception that provides more information to the developer using the tool.

> Output parameter and method name issue
> --------------------------------------
>
>                 Key: CXF-2750
>                 URL: https://issues.apache.org/jira/browse/CXF-2750
>             Project: CXF
>          Issue Type: Bug
>          Components: JAXB Databinding
>    Affects Versions: 2.2.7
>            Reporter: Derek Ryder
>
> I discovered an issue related to the name of a method and it's associated output parameter name.
> If you name the method foo and the output parameter is named fooResponse, you'll end up with an exception.
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eSessionAuthenticationWS': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: org.apache.ws.commons.schema.XmlSchemaException:  Schema for namespace '<your name space>' already contains type 'fooResponse'
> I did some digging into the code and it appears to be an issue with the naming convention in the code. When generating the response object for an operation it takes the method name and adds Response to it and it ends up as a schema type. Then when the output parameter is being initialized there is already a fooResponse schema type and thus the schema type collision.

-- 
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: (CXF-2750) Output parameter and method name issue

Posted by "Derek Ryder (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852502#action_12852502 ] 

Derek Ryder edited comment on CXF-2750 at 4/1/10 6:55 PM:
----------------------------------------------------------

I wasn't recommending violating the spec and there is much to be said for knowing the spec and thereby being aware that one cannot create method in such a manner. However I would be in favor of an exception that provides more information to the developer using Apache CXF.

      was (Author: dryder):
    I wasn't recommending violating the spec and there is much to be said for knowing the spec and thereby being aware that one cannot create method in such a manner. However I would be in favor of an exception that provides more information to the developer using the tool.
  
> Output parameter and method name issue
> --------------------------------------
>
>                 Key: CXF-2750
>                 URL: https://issues.apache.org/jira/browse/CXF-2750
>             Project: CXF
>          Issue Type: Bug
>          Components: JAXB Databinding
>    Affects Versions: 2.2.7
>            Reporter: Derek Ryder
>
> I discovered an issue related to the name of a method and it's associated output parameter name.
> If you name the method foo and the output parameter is named fooResponse, you'll end up with an exception.
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eSessionAuthenticationWS': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: org.apache.ws.commons.schema.XmlSchemaException:  Schema for namespace '<your name space>' already contains type 'fooResponse'
> I did some digging into the code and it appears to be an issue with the naming convention in the code. When generating the response object for an operation it takes the method name and adds Response to it and it ends up as a schema type. Then when the output parameter is being initialized there is already a fooResponse schema type and thus the schema type collision.

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


[jira] Commented: (CXF-2750) Output parameter and method name issue

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852493#action_12852493 ] 

Daniel Kulp commented on CXF-2750:
----------------------------------


This is per spec and not much we can do without violating the spec.   In the event of a collision, the spec requires that the USER provide a new name via the @ResponseWrapper and @Response annotations.   

> Output parameter and method name issue
> --------------------------------------
>
>                 Key: CXF-2750
>                 URL: https://issues.apache.org/jira/browse/CXF-2750
>             Project: CXF
>          Issue Type: Bug
>          Components: JAXB Databinding
>    Affects Versions: 2.2.7
>            Reporter: Derek Ryder
>
> I discovered an issue related to the name of a method and it's associated output parameter name.
> If you name the method foo and the output parameter is named fooResponse, you'll end up with an exception.
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eSessionAuthenticationWS': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: org.apache.ws.commons.schema.XmlSchemaException:  Schema for namespace '<your name space>' already contains type 'fooResponse'
> I did some digging into the code and it appears to be an issue with the naming convention in the code. When generating the response object for an operation it takes the method name and adds Response to it and it ends up as a schema type. Then when the output parameter is being initialized there is already a fooResponse schema type and thus the schema type collision.

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