Uploaded image for project: 'ODE'
  1. ODE
  2. ODE-922

Problem with BPEL 1.1 literal initialization support

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.3.5
    • None
    • None
    • Windows XP SP3, Tomcat-7.0.10, jdk1.6.0


    Description

      I am trying to port some BPEL 1.1 workflows to ODE 1.3.5 but am having difficulty with assigning literal XML.

      According to all the discussions and specs for BPEL 1.1 I have found, the correct <from> syntax for literals is <from>some literal value</from>.

      In BPEL 2.0 this appears to have changed to <from><literal>...</literal></from> but <literal> is not defined for BPEL 1.1.

      For example, given the namespaces:

      xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
      xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"

      and given a schema type:

      <xsd:schema targetNamespace="urn:MyNamespace" xmlns="urn:MyNamespace" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

      <xsd:complexType name="CredentialsType">
      <xsd:sequence>
      <xsd:element name="UsernameToken">
      <xsd:complexType>
      <xsd:sequence>
      <xsd:element name="Username" type="xsd:string" />
      <xsd:element name="Password" type="xsd:string" />
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>

      </xsd:schema>

      The following BPEL should be valid:

      <variables>
      <variable name="myliteralvar" type="myns:CredentialsType"/>
      </variables>

      <assign name="assign1">
      <copy>
      <from >
      <myns:UsernameToken xmlns:myns="urn:MyNamespace">
      <myns:username xmlns:myns="urn:MyNamespace" />
      <myns:password xmlns:myns="urn:MyNamespace" />
      </myns:UsernameToken>
      </from>
      <to variable="myliteralvar"/>
      </copy>
      </assign>

      And result is the variable, myliteralvar taking the value

      <myns:UsernameToken xmlns:myns="urn:MyNamespace">
      <myns:username xmlns:myns="urn:MyNamespace" />
      <myns:password xmlns:myns="urn:MyNamespace" />
      </myns:UsernameToken>

      However Ode 1.3.5 complains on deployment with

      "Unrecognized element in BPEL dom:

      {urn:MyNamespace}

      UsernameToken"

      Followed by

      "error: [UnknownFromSpec] From-spec format is unrecognized.

      I have attached a full example where I modified the HelloWorld BPEL to use BPEL 1.1. It deploys successfully if the above assign is removed.

      Is this a known bug in Ode or is there some configuration apart from the BPEL namespace that is required to have Ode recognize BPEL 1.1 syntax?

      Note: I am setting the filename and bpel11wsdlFileName on the process element in deploy.xml

      <process name="pns:HelloWorld4"
      fileName="HelloWorld4.bpel"
      bpel11wsdlFileName="HelloWorld4.wsdl"
      >
      <active>true</active>
      <provide partnerLink="helloPartnerLink">
      <service name="wns:HelloService" port="HelloPort"/>
      </provide>
      </process>

      see user mailing list for original discussion and attachment

      http://mail-archives.apache.org/mod_mbox/ode-user/201104.mbox/%3c1B3A9CAA04782F40AC59576CFBFC802C0B22DE2B32@VA3DIAXVS251.RED001.local%3e

      Attachments

        1. Ode_Compiler_Fix.zip
          261 kB
          tbuss

        Activity

          People

            Unassigned Unassigned
            tbuss tbuss
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: