Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 1.6 Alpha
    • Fix Version/s: None
    • Component/s: Client - Engine
    • Labels:
      None
    • Environment:
      WIN2KSP4 JDK1.5.0_06 MSVC6SP6

      Description

      For me AxisC (both 1.5 and 1.6) generates invalid SOAP messages referring to undeclared namespaces.
      The problem occurs only if i set soap:header elements for inclusion in the SOAP message.
      Possibility 1
      IHeaderBlock* phb = pegs->createSOAPHeaderBlock("Token", "http://www.pegs-pegstour.com/API/XMLSchema/1.0.1");
      i.e. no namespace explicitely given.
      In this case a correct soap:body containing only ns1 as prefix and declaring it beforehand is created.
      But the soap:header is wrong using the ns1 prefix without declaring it.
      Possibility 2
      IHeaderBlock* phb = pegs->createSOAPHeaderBlock("Token", "http://www.pegs-pegstour.com/API/XMLSchema/1.0.1", "ns1");
      i.e. namespace explicitely given.
      In this case a correct soap:header containing ns1 as prefix and declaring it beforehand is created.
      But the soap:body is wrong using an additional ns2 prefix without declaring it.

      1. vakanz.wsdl
        4 kB
        Franz Fehringer
      2. vakanz.cpp
        6 kB
        Franz Fehringer
      3. vakanz.xsd
        40 kB
        Franz Fehringer
      4. vakanz2.wsdl
        4 kB
        Franz Fehringer
      5. SearchRoomsRequest.xml
        10 kB
        Franz Fehringer

        Activity

        Hide
        Franz Fehringer added a comment -

        The former attachment vakanz2.wsdl should be disregarded.

        Show
        Franz Fehringer added a comment - The former attachment vakanz2.wsdl should be disregarded.
        Hide
        Adrian Dick added a comment -

        Hi,

        There are still some issues regarding namespaces when creating HeaderBlocks.

        As a workaround, have you tried explicitely declaring namespaces?
        eg:
        INamespace *nsp=phb->createNamespaceDecl("ns1","http://www.pegs-pegstour.com/API/XMLSchema/1.0.2");

        It may also be worth considering explicitely providing a namespace prefix, but avoiding the common convention of ns<n>, as the serializer automatically assigns these, but in certain situations (like this one) doesn't correctly detect them going out of scope.

        Show
        Adrian Dick added a comment - Hi, There are still some issues regarding namespaces when creating HeaderBlocks. As a workaround, have you tried explicitely declaring namespaces? eg: INamespace *nsp=phb->createNamespaceDecl("ns1","http://www.pegs-pegstour.com/API/XMLSchema/1.0.2"); It may also be worth considering explicitely providing a namespace prefix, but avoiding the common convention of ns<n>, as the serializer automatically assigns these, but in certain situations (like this one) doesn't correctly detect them going out of scope.

          People

          • Assignee:
            Unassigned
            Reporter:
            Franz Fehringer
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:

              Development