Uploaded image for project: 'FUSE Mediation Router'
  1. FUSE Mediation Router
  2. MR-217

Patch for 4 failing tests on aix

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 1.6.1.1-fuse, 2.2.0-fuse-01-00
    • 1.6.1.0-fuse
    • None
    • None

    Description

      Working on the fuse customer certification of MR on aix, there are currently four failing tests in the components for the camel-1.x branch.

      TidyMarkupDataFormatAsStringTest and TidyMarkupDataFormatAsDomNodeTest:

      These two two tests fail with an exception stack trace that looks something like this:

      Caused by: 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.
      at org.apache.xerces.dom.ElementNSImpl.setName(Unknown Source)
      at org.apache.xerces.dom.ElementNSImpl.<init>(Unknown Source)
      at org.apache.xerces.dom.CoreDocumentImpl.createElementNS(Unknown Source)
      at org.apache.xml.utils.DOMBuilder.startElement(DOMBuilder.java:340)
      at org.apache.xalan.transformer.TransformerIdentityImpl.startElement(TransformerIdentityImpl.java:1093)
      at org.ccil.cowan.tagsoup.Parser.push(Parser.java:794)
      at org.ccil.cowan.tagsoup.Parser.rectify(Parser.java:1061)
      at org.ccil.cowan.tagsoup.Parser.stagc(Parser.java:1016)
      at org.ccil.cowan.tagsoup.HTMLScanner.scan(HTMLScanner.java:565)
      at org.ccil.cowan.tagsoup.Parser.parse(Parser.java:449)
      at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:505)
      at org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat.asNodeTidyMarkup(TidyMarkupDataFormat.java:176)
      

      The cause of this issue appears to be the fact that the ibm jdk uses a different xalan TransformerFactory class than the sun jdk by default , and the one that the ibm jdk uses places duplicate namespace declarations in the xml. By adding an ibmjdk profile to the pom that uses a system property to ensure that the working TransformerFactory class is used instead when running the tests, the test failures disappear.

      The other two failing tests are CxfMessageHeadersRelayTest and CxfMtomConsumerTest. Both of these tests attempt to launch a server on port 9090. However, on aix, port 9090 is used by the WebSM service, and so these tests get a port conflict and fail. I've adjusted the wsdl/test configuration for these two tests to run on port 9091 instead.

      These changes will resolve the known issues for came-1.x on aix with the 64bit jdk1.5. Let me know if you have any comments or suggestions about the attached patch. Thanks!

      Attachments

        Activity

          People

            cibsen@redhat.com Claus Ibsen
            peterjones1_jira Peter Jones (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: