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 "Philippe Mouawad (JIRA)" <ji...@apache.org> on 2008/04/07 16:51:24 UTC

[jira] Created: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

XMLBeans DataBinding generates too many namespaces
--------------------------------------------------

                 Key: AXIS2-3713
                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
             Project: Axis 2.0 (Axis2)
          Issue Type: Improvement
          Components: databinding
    Affects Versions: 1.3, 1.4, nightly
         Environment: ALL
            Reporter: Philippe Mouawad


When using XMLBeans as databinding layer.
XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
Example:
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>

You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.

Philippe Mouawad
www.ubik-ingenierie.com

-- 
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-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

Posted by "Philippe Mouawad (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12586736#action_12586736 ] 

Philippe Mouawad commented on AXIS2-3713:
-----------------------------------------

I'm sorry my patch (I tested XmlOptions#setAggressiveNamespaces() with Spring WS and thought XMLBeans did the serialization JOB) 
does not correct the issue. After tracing, I noticed that serialization is not done by XMLBeans but by 
org.apache.axis2.transport.http.SOAPMessageFormatter which relies on 
org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl#internalSerialize.
Namespace generation is done in org.apache.axiom.om.impl.util.OMSerializerUtil#serializeStartpart

This highly increases Message Size.
Sorry for my mistake. 

> XMLBeans DataBinding generates too many namespaces
> --------------------------------------------------
>
>                 Key: AXIS2-3713
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: databinding
>    Affects Versions: 1.4, 1.3, nightly
>         Environment: ALL
>            Reporter: Philippe Mouawad
>         Attachments: axis2-xmlbeansNS-patch.txt
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When using XMLBeans as databinding layer.
> XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
> Example:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>
> You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.
> Philippe Mouawad
> www.ubik-ingenierie.com

-- 
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-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

Posted by "Philippe Mouawad (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12586739#action_12586739 ] 

Philippe Mouawad commented on AXIS2-3713:
-----------------------------------------

According to :
http://ws.apache.org/commons/axiom/OMTutorial.html
The serializer serializes namespaces in the following way:

   1. When a namespace that is in the scope but not yet declared is encountered, it will then be declared.
   2. When a namespace that is in scope and already declared is encountered, the existing declarations prefix is used.
   3. When the namespaces are declared explicitly using the elements declareNamespace() method, they will be serialized even if those namespaces are not used in that scope.

So I think there is a problem either in the usage of AXIOM or inside AXIOM.
Will investigate more if I have time.
Thank you.

> XMLBeans DataBinding generates too many namespaces
> --------------------------------------------------
>
>                 Key: AXIS2-3713
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: databinding
>    Affects Versions: 1.4, 1.3, nightly
>         Environment: ALL
>            Reporter: Philippe Mouawad
>         Attachments: axis2-xmlbeansNS-patch.txt
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When using XMLBeans as databinding layer.
> XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
> Example:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>
> You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.
> Philippe Mouawad
> www.ubik-ingenierie.com

-- 
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-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

Posted by "Philippe Mouawad (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12586443#action_12586443 ] 

Philippe Mouawad commented on AXIS2-3713:
-----------------------------------------

Here is a patch that configures XMLOptions when serializing.
This reduces namespaces to:
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com" xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd"><v1:param0><xsd:callType>1</xsd:callType><xsd:familyCode>1</xsd:familyCode><xsd:moduleCode>1</xsd:moduleCode><xsd:subFamilyCode>1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>



> XMLBeans DataBinding generates too many namespaces
> --------------------------------------------------
>
>                 Key: AXIS2-3713
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: databinding
>    Affects Versions: 1.4, 1.3, nightly
>         Environment: ALL
>            Reporter: Philippe Mouawad
>         Attachments: axis2-xmlbeansNS-patch.txt
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When using XMLBeans as databinding layer.
> XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
> Example:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>
> You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.
> Philippe Mouawad
> www.ubik-ingenierie.com

-- 
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-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Resolved: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

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

Philippe Mouawad resolved AXIS2-3713.
-------------------------------------

       Resolution: Duplicate
    Fix Version/s: 1.5

Duplicates its clone

> XMLBeans DataBinding generates too many namespaces
> --------------------------------------------------
>
>                 Key: AXIS2-3713
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: databinding
>    Affects Versions: 1.4, 1.3, nightly
>         Environment: ALL
>            Reporter: Philippe Mouawad
>             Fix For: 1.5
>
>         Attachments: axis2-xmlbeansNS-patch.txt
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When using XMLBeans as databinding layer.
> XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
> Example:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>
> You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.
> Philippe Mouawad
> www.ubik-ingenierie.com

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


[jira] Updated: (AXIS2-3713) XMLBeans DataBinding generates too many namespaces

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

Philippe Mouawad updated AXIS2-3713:
------------------------------------

    Attachment: axis2-xmlbeansNS-patch.txt

The corrective patch.

> XMLBeans DataBinding generates too many namespaces
> --------------------------------------------------
>
>                 Key: AXIS2-3713
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3713
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: databinding
>    Affects Versions: 1.4, 1.3, nightly
>         Environment: ALL
>            Reporter: Philippe Mouawad
>         Attachments: axis2-xmlbeansNS-patch.txt
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When using XMLBeans as databinding layer.
> XML Requests and responses are very verbose due to same Namespaces being declared and redeclared.
> Example:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><v1:getLocatedProducts xmlns:v1="http://v1.product.ws.store.kingfisher.com"><v1:param0><xsd:callType xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:callType><xsd:familyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:familyCode><xsd:moduleCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:moduleCode><xsd:subFamilyCode xmlns:xsd="http://data.v1.product.ws.store.kingfisher.com/xsd">1</xsd:subFamilyCode></v1:param0></v1:getLocatedProducts></soapenv:Body></soapenv:Envelope>
> You see that http://data.v1.product.ws.store.kingfisher.com/xsd is declared 4 times instead of one.
> Philippe Mouawad
> www.ubik-ingenierie.com

-- 
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-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org