Announcement Announcement Module
Collapse
No announcement yet.
Webservice breaks when removing 'parent' element and adding 'scm' element within pom Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Webservice breaks when removing 'parent' element and adding 'scm' element within pom

    Our webservice works correctly when the pom.xml uses the 'parent' element, and does not use the 'scm' element.
    Our webservice breaks when the pom.xml uses the 'scm' element, and doesn't use the 'parent' element.

    For this test, we use a static wsdl
    - we start up the webservice using 'dynamic-wsdl' element within 'spring-ws-servlet.xml', then copy the resulting wsdl into the static wsdl file, and then, switch to using the 'static-wsdl' element within 'spring-ws-servlet.wsdl'.

    The result is that when using 'parent' element and not 'scm' element within pom.xml, SoapUI is able to work with the given wsdl.

    If using the 'scm' element and not 'parent' element, SoapUI fails with the following message:
    Servlet.service() for servlet [spring-ws] in context with path [/QcimService] threw exception [Request processing failed; nested exception is javax.xml.transform.TransformerException: org.w3c.dom.DOMException: NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect with regard to namespaces.] with root cause
    org.w3c.dom.DOMException: NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect with regard to namespaces.
    The WSDL file differs in the xmlns inclusion order.
    The working version has:
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:sch="http://xmlns.qualcomm.com/it/isso/qcim/schemas/1.0.0"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://xmlns.qualcomm.com/it/isso/qcim/definitions/1.0.0"
    targetNamespace="http://xmlns.qualcomm.com/it/isso/qcim/definitions/1.0.0">
    ...
    The non-working version has:
    <wsdl:definitions xmlns:sch="http://xmlns.qualcomm.com/it/isso/qcim/schemas/1.0.0"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://xmlns.qualcomm.com/it/isso/qcim/definitions/1.0.0"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    targetNamespace="http://xmlns.qualcomm.com/it/isso/qcim/definitions/1.0.0">
    ...
    Changing the order on the non-working version to conform to working version does not because this causes the schema validation to fail.

    Finally, between the two projects, there is the inclusion of the following Jar files in the non-working version:
    activation-1.1.jar
    icu4j-2.6.1.jar
    jdom-1.0.jar
    mail-1.4.3.jar
    saaj-api-1.3.jar
    spring-test-3.0.6.RELEASE.jar
    xalan-2.6.0.jar
    xercesImpl-2.6.2.jar
    xml-apis-1.3.02.jar
    xmlParserAPIs-2.6.2.jar
    xom-1.0.jar
    Since 'parent' element is deprecated, please help resolve this issue of removing 'parent' element from pom.xml causing webservice errors.

    Within poms.zip, I have added the pom.xml file with pom-working.xml is the working version and pom-broken.xml is the version leading to a broken webservice.

  • #2
    Where do you get the idea that the parent tag is deprecated... The parent and scm tags have completely different usages...

    Comment

    Working...
    X