Woden
  1. Woden
  2. WODEN-13

Test Case Failures: documents/good/Chameleon-1G, 2G, 3G, 4G

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Parser
    • Labels:
      None

      Description

      These are failing due to lack of <xs:import> support. TypeDefinition and ElementDeclaration components are missing.

      FYI, see the W3C status report for latest results [1]

      [1] http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/test-suite/results/Overview.html

      1. WODEN-13patch.txt
        0.9 kB
        John Kaputin

        Issue Links

          Activity

          Hide
          Arthur Ryman added a comment -

          Actually, I think it's lack of <xs:include> support.

          Show
          Arthur Ryman added a comment - Actually, I think it's lack of <xs:include> support.
          Hide
          Arthur Ryman added a comment -

          I'm still seeing this failure. The problem xsd is:

          <wsdl:types>
          <xsd:schema targetNamespace="http://example.org/getBalance/"
          xmlns:xsd="http://www.w3.org/2001/XMLSchema">
          <xsd:include schemaLocation="getBalance.xsd" />
          </xsd:schema>
          </wsdl:types>

          Any idea why the <xsd:include> isn't being resolved? This is a chameleon include, i.e. the included xsd has no namespace so the components inherit the namespace of the including schema.

          Show
          Arthur Ryman added a comment - I'm still seeing this failure. The problem xsd is: <wsdl:types> <xsd:schema targetNamespace="http://example.org/getBalance/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:include schemaLocation="getBalance.xsd" /> </xsd:schema> </wsdl:types> Any idea why the <xsd:include> isn't being resolved? This is a chameleon include, i.e. the included xsd has no namespace so the components inherit the namespace of the including schema.
          Hide
          John Kaputin added a comment -

          no TNS treated as null rather than "DEFAULT"

          Show
          John Kaputin added a comment - no TNS treated as null rather than "DEFAULT"
          Hide
          John Kaputin added a comment -

          Applied a fix to modify the buildElementsAndTypes method to match a change in WS-Commons XmlSchema
          where by XmlSchema.getTargetNamespace() now returns null if the target namespace is absent (rather than the string "DEFAULT" as it used to).

          This should fix the first 3 test failures reported by this JIRA; Chameleon-1G, Chameleon-2G and Chameleon-3G.

          Testcase Chameleon-4G will still fail because of a problem with the equals(Object) method inherited by XmlSchema from XmlSchemaObject. Based on the equivalance checking in this method, the second inline schema in Chameleon-4G's getBalance.wsdl is considered to be equal to the first inline schema (ie. even though they have different TNS and <xs:include> different schemas), so the second inline schema is ignored by Woden. i.e. Woden does not extract the second inline schema's included element declarations and type defintitions.

          A workaround might be to re-code Woden so that it does not depend on the equals(Object) method via the statement:

          if(!fSchemasDone.contains(schemaDef))

          but instead, checks the object references explicitly.

          A better solution is to fix the equivalence checking of XmlSchema.equals(Object). I'll post to the WS-COMMONS mailing list about this and/or raise an JIRA against XmlSchema.

          Show
          John Kaputin added a comment - Applied a fix to modify the buildElementsAndTypes method to match a change in WS-Commons XmlSchema where by XmlSchema.getTargetNamespace() now returns null if the target namespace is absent (rather than the string "DEFAULT" as it used to). This should fix the first 3 test failures reported by this JIRA; Chameleon-1G, Chameleon-2G and Chameleon-3G. Testcase Chameleon-4G will still fail because of a problem with the equals(Object) method inherited by XmlSchema from XmlSchemaObject. Based on the equivalance checking in this method, the second inline schema in Chameleon-4G's getBalance.wsdl is considered to be equal to the first inline schema (ie. even though they have different TNS and <xs:include> different schemas), so the second inline schema is ignored by Woden. i.e. Woden does not extract the second inline schema's included element declarations and type defintitions. A workaround might be to re-code Woden so that it does not depend on the equals(Object) method via the statement: if(!fSchemasDone.contains(schemaDef)) but instead, checks the object references explicitly. A better solution is to fix the equivalence checking of XmlSchema.equals(Object). I'll post to the WS-COMMONS mailing list about this and/or raise an JIRA against XmlSchema.
          Hide
          Eran Chinthaka added a comment -

          Hi John,

          Dims just applied your patch to WSCOMMONS-120. I hope now you can resolve this issue as discussed in the telecon.

          • Chinthaka.
          Show
          Eran Chinthaka added a comment - Hi John, Dims just applied your patch to WSCOMMONS-120 . I hope now you can resolve this issue as discussed in the telecon. Chinthaka.
          Hide
          John Kaputin added a comment -

          Now that WSCOMMONS-120 has been applied Chameleon-4G is passing too. I will mark this JIRA resolved.

          Show
          John Kaputin added a comment - Now that WSCOMMONS-120 has been applied Chameleon-4G is passing too. I will mark this JIRA resolved.
          Hide
          John Kaputin added a comment -

          Resolved by fix to Woden and fix to XmlSchema via WSCOMMONS-120. All four Chameleon tests now pass.

          Show
          John Kaputin added a comment - Resolved by fix to Woden and fix to XmlSchema via WSCOMMONS-120 . All four Chameleon tests now pass.
          Hide
          Arthur Ryman added a comment -

          Tests pass. Closing.

          Show
          Arthur Ryman added a comment - Tests pass. Closing.

            People

            • Assignee:
              John Kaputin
              Reporter:
              Arthur Ryman
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development