Loop in BPEL Process?

Hello,
Can I execute a loop in a BPEL Process? Or must I execute the loop in the program which invokes the BPEL Process by SOAP?
Thanks!

Just use <while>

Similar Messages

  • How to use loop in BPEL Process

    Hi friends
    I have done a bpel process which picks up XMl file using File Adapter and imports the data from the XMl file to oracle db table using DB adapter....
    But here the XMl file which have only one row ..if i want insert the XML file which have two or more rows i want to use loop in my BPEL process how to use the loop in my bpel process ?
    In my BPEL process i have used receive ,transform , and invoke activity where can i use loop in my BPEL process
    Advance Thanks
    AT

    Hi Friend thanks
    Hi Oracler how to make use of transform activity and use a for each in it.?
    iam not getting i try can u please explain some more in brief
    Thanks
    AT

  • How I break while loop activity in BPEL process

    Hi Guys,
    I want to do a polling action in my bpel process, I put in the polling code in while activity ,
    I try two way to do the break :
    1. use the Flow activity , one sequence for while loop activity , one sequence for timeout flow , put waiting activity in it ,config timeout ... but Flow activity complete only when all branch complete . so it seems there is no way to break Flow from one branch.
    2.use onalarm branch of scope ... put while activity code in a scope activity , create onalarm branch for this scope ,config the timeout time ... but onalarm branch can't bypass the scope sequence...
    Any advice ?
    Thanks
    Kevin
    Edited by: kyi on Oct 29, 2009 1:01 PM

    The on-alarm branch of the scope should work.
    Maybe not so neat but you could try to do a scope with a flow within that. Put in one of the flow-branches a wait. After the wait throw an exception.
    You can catch that exception in a catch branch of the surrounding scope.
    Regards,
    Martien

  • Looping thru entire BPEL process

    I have a Synchronous BPEL process that uses the task manager. Based on the response from the Task Manager it has to loop through the process all over again - basically, go back to the initiate/process operation again (similar to a "GOTO" operation). How do I achieve this?
    Thanks in advance,
    Mrigasira

    For now, you have to do a while loop and explicitely rerun the logic. This is a very common feature request: we are working on adding a ReplayFault which will for the engine to fault a scope and recreate an instance of it. That should find its way into the 2.1 end of september release. -Edwin

  • Want to get request number to BPEL process in an interval

    Hi All,
    I have two applications A and B.I need to receive request message from A to B through BPEL process. BPEL process receives the request data(through schema- Source of transform activity) from A and updates that data into B(Target -request schema of B).BPEL process is the middleware between two applications
    My requirement is :
    I want to analize request data in an interval of 24 hours. I have one parameter('sequence') in the request schema of B which has to indicate the request number to BPEL process.
    Clear explanation to requirement details:
    Application A starts pushing data at 12 'o clock(0:00 hrs midnight) and then parameter 'sequence' should be integer 1 or 0.Like that 'Sequence' should be increased by 1 for every request to BPEL process.
    I want the sequence values like below(for 24 hrs cycle):
    First request :
    Reuqest push time - 0:00 hrs
    Sequence - 1
    BPEL process instance(which will be created automaically in EM console) - Instance1
    Second Request :
    Reuqest push time - 1:30 hrs
    Sequence - 2
    BPEL process instance(which will be created automaically in EM console) - Instance2
    1
    Third Request:
    Reuqest push time - 4:00 hrs
    Sequence - 3
    BPEL process instance(which will be created automaically in EM console) - Instance3
    Like that
    last request in 24 hrs cycle should be :
    Reuqest push time - 23:00 hrs
    Sequence - Some number according to number of requests at that time.
    After 24 hrs ,Sequence again should become as 1 to indicate the starting point of the 24 hrs next day.(like data in above table)
    Can you help me in this regard? I am using transform activity in which I have 'sequence' parameter .
    Thanks in advance
    Edited by: 899283 on Aug 25, 2012 7:16 AM

    Create a "While" activity.
    Create a variable named seq of type int.
    In the while condition check the current time.
    xp20:current-time() < <counter reset time>
    Create a pick activity to receive the message inside while loop.
    Create assign activity in the while loop. Assign the value of variable seq to the payload and increment it by one.
    Outside while loop , reset seq back to 0 by using another assign activity.
    In case the composite has to run continuously after first submission, use another outer while loop to check the condition while seq = 0.
    Hope it helps.
    Regards.

  • AP Invoice BPEL Process is not populating into Line Interface tables

    Hi
    We are in the process of Creating BPEL Process for AP Invoice. Before we map Supplier incoming XSD, we have created our own XML and XSD and mapped with Standard APInvoice XML Gateway XSD. Transformation is able to populate header information into AP Invoice header Interface tables. And also its populating the Lines information but not the mapped column values. Its populating only Standard Derived values like Invoice_id, Invoice_line_id, Line_number, Line_type_lookup_code. We have mapped the Amount column to one of our incoming Amount column. Those values are not getting populated into Invoice Interface line tables.
    Please find the XML file data
    <?xml version="1.0"?>
    <!-- Generated by Oracle Reports version 6.0.8.20.2 -->
    <G_INVOICE_ID xmlns="NS_31CA8D0F33324F95A0BF15D85539C27E20070209154115_kiran">
    <INVOICE_NUM>CM011907</INVOICE_NUM>
    <INVOICE_TYPE_LOOKUP_CODE>STANDARD</INVOICE_TYPE_LOOKUP_CODE>
    <VENDOR_ID>1</VENDOR_ID>
    <VENDOR_SITE_ID>44</VENDOR_SITE_ID>
    <INVOICE_AMOUNT>2981</INVOICE_AMOUNT>
    <ORG_ID>83</ORG_ID>
    <SOURCE>XML GATEWAY</SOURCE>
    <INVOICE_ID>621</INVOICE_ID>
    <G_INVOICE_ID1>
    <DISTRIBUTION_LINE_NUMBER>1</DISTRIBUTION_LINE_NUMBER>
    <LINE_TYPE_LOOKUP_CODE>ITEM</LINE_TYPE_LOOKUP_CODE>
    <AMOUNT>2980</AMOUNT>
    <ACCOUNTING_DATE>19-JAN-07</ACCOUNTING_DATE>
    <DIST_CODE_COMBINATION_ID>1035</DIST_CODE_COMBINATION_ID>
    <INVOICE_ID1>621</INVOICE_ID1>
    <INVOICE_LINE_ID>1081</INVOICE_LINE_ID>
    </G_INVOICE_ID1>
    </G_INVOICE_ID>
    Transformation code
    <?xml version="1.0" encoding="UTF-8" ?>
    <?oracle-xsl-mapper
    <!-- SPECIFICATION OF MAP SOURCES AND TARGETS, DO NOT MODIFY. -->
    <mapSources>
    <source type="XSD">
    <schema location="ap_invoice.xsd"/>
    <rootElement name="G_INVOICE_ID" namespace="NS_31CA8D0F33324F95A0BF15D85539C27E20070209154115_kiran"/>
    </source>
    </mapSources>
    <mapTargets>
    <target type="XSD">
    <schema location="PROCESS_INVOICE_002.xsd"/>
    <rootElement name="PROCESS_INVOICE_002" namespace="http://TargetNamespace.com/ServiceName"/>
    </target>
    </mapTargets>
    <!-- GENERATED BY ORACLE XSL MAPPER 10.1.3.1.0(build 061009.0802) AT [SUN SEP 30 22:21:07 GMT-05:00 2007]. -->
    ?>
    <xsl:stylesheet version="1.0"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:ns0="NS_31CA8D0F33324F95A0BF15D85539C27E20070209154115_kiran"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:ns1="http://TargetNamespace.com/ServiceName"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:ehdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.esb.server.headers.ESBHeaderFunctions"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:nxsd="http://xmlns.oracle.com/pcbpel/nxsd"
    exclude-result-prefixes="xsl ns0 xs ns1 nxsd xp20 bpws ora ehdr orcl ids hwf">
    <xsl:template match="/">
    <ns1:PROCESS_INVOICE_002>
    <ns1:CNTROLAREA>
    <ns1:BSR>
    <ns1:VERB>
    <xsl:attribute name="value">
    <xsl:value-of select='string("PROCESS")'/>
    </xsl:attribute>
    </ns1:VERB>
    <ns1:NOUN>
    <xsl:attribute name="value">
    <xsl:value-of select='string("INVOICE")'/>
    </xsl:attribute>
    </ns1:NOUN>
    <ns1:REVISION>
    <xsl:attribute name="value">
    <xsl:value-of select='string("002")'/>
    </xsl:attribute>
    </ns1:REVISION>
    </ns1:BSR>
    <ns1:SENDER>
    <ns1:LOGICALID>
    <xsl:value-of select='string("Kiran")'/>
    </ns1:LOGICALID>
    <ns1:COMPONENT>
    <xsl:value-of select='string("BPEL")'/>
    </ns1:COMPONENT>
    <ns1:TASK>
    <xsl:value-of select='string("APINVOICE")'/>
    </ns1:TASK>
    <ns1:REFERENCEID>
    <xsl:value-of select='string("2")'/>
    </ns1:REFERENCEID>
    <ns1:CONFIRMATION>
    <xsl:value-of select='string("3")'/>
    </ns1:CONFIRMATION>
    <ns1:LANGUAGE>
    <xsl:value-of select='string("ENG")'/>
    </ns1:LANGUAGE>
    <ns1:CODEPAGE>
    <xsl:value-of select='string("US7ASCII")'/>
    </ns1:CODEPAGE>
    <ns1:AUTHID>
    <xsl:value-of select='string("APPS")'/>
    </ns1:AUTHID>
    </ns1:SENDER>
    <ns1:DATETIME>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("CREATION")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:YEAR>
    <xsl:value-of select="xp20:year-from-dateTime(xp20:current-dateTime())"/>
    </ns1:YEAR>
    <ns1:MONTH>
    <xsl:value-of select="xp20:month-from-dateTime(xp20:current-dateTime())"/>
    </ns1:MONTH>
    <ns1:DAY>
    <xsl:value-of select="xp20:day-from-dateTime(xp20:current-dateTime())"/>
    </ns1:DAY>
    <ns1:HOUR>
    <xsl:value-of select="xp20:hours-from-dateTime(xp20:current-dateTime())"/>
    </ns1:HOUR>
    <ns1:MINUTE>
    <xsl:value-of select="xp20:minutes-from-dateTime(xp20:current-dateTime())"/>
    </ns1:MINUTE>
    <ns1:SECOND>
    <xsl:value-of select="xp20:seconds-from-dateTime(xp20:current-dateTime())"/>
    </ns1:SECOND>
    <ns1:SUBSECOND>
    <xsl:value-of select='string("356")'/>
    </ns1:SUBSECOND>
    <ns1:TIMEZONE>
    <xsl:value-of select="xp20:timezone-from-dateTime(xp20:current-dateTime())"/>
    </ns1:TIMEZONE>
    </ns1:DATETIME>
    </ns1:CNTROLAREA>
    <ns1:DATAAREA>
    <ns1:PROCESS_INVOICE>
    <ns1:INVHEADER>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("DOCUMENT")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:INVOICE_AMOUNT"/>
    </ns1:VALUE>
    <ns1:NUMOFDEC>
    <xsl:value-of select="number(0.0)"/>
    </ns1:NUMOFDEC>
    <ns1:SIGN>
    <xsl:value-of select='string("+")'/>
    </ns1:SIGN>
    <ns1:CURRENCY>
    <xsl:value-of select='string("USD")'/>
    </ns1:CURRENCY>
    <ns1:DRCR>
    <xsl:value-of select='string("DR")'/>
    </ns1:DRCR>
    </ns1:AMOUNT>
    <ns1:DATETIME>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("ACCOUNTING")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:YEAR>
    <xsl:value-of select="xp20:year-from-dateTime(xp20:current-dateTime())"/>
    </ns1:YEAR>
    <ns1:MONTH>
    <xsl:value-of select="xp20:month-from-dateTime(xp20:current-dateTime())"/>
    </ns1:MONTH>
    <ns1:DAY>
    <xsl:value-of select="xp20:day-from-dateTime(xp20:current-dateTime())"/>
    </ns1:DAY>
    <ns1:HOUR>
    <xsl:value-of select="xp20:hours-from-dateTime(xp20:current-dateTime())"/>
    </ns1:HOUR>
    <ns1:MINUTE>
    <xsl:value-of select="xp20:minutes-from-dateTime(xp20:current-dateTime())"/>
    </ns1:MINUTE>
    <ns1:SECOND>
    <xsl:value-of select="xp20:seconds-from-dateTime(xp20:current-dateTime())"/>
    </ns1:SECOND>
    <ns1:SUBSECOND>
    <xsl:value-of select='string("356")'/>
    </ns1:SUBSECOND>
    <ns1:TIMEZONE>
    <xsl:value-of select="xp20:timezone-from-dateTime(xp20:current-dateTime())"/>
    </ns1:TIMEZONE>
    </ns1:DATETIME>
    <ns1:DOCUMENTID>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:INVOICE_NUM"/>
    </ns1:DOCUMENTID>
    <ns1:DESCRIPTN>
    <xsl:text disable-output-escaping="no">DescriptionLocalDeployment</xsl:text>
    </ns1:DESCRIPTN>
    <ns1:PARTNER>
    <ns1:PARTNRID>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:VENDOR_ID"/>
    </ns1:PARTNRID>
    </ns1:PARTNER>
    <ns1:DOCUMNTREF>
    <ns1:DOCUMENTID>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:INVOICE_NUM"/>
    </ns1:DOCUMENTID>
    </ns1:DOCUMNTREF>
    <ns1:INVALLWNCE>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:QUANTITY>
    <ns1:INVCHARGE>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:QUANTITY>
    </ns1:INVCHARGE>
    </ns1:INVALLWNCE>
    </ns1:INVHEADER>
    <ns1:INVALLWNCE>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:QUANTITY>
    </ns1:INVALLWNCE>
    <ns1:INVCHARGE>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    </ns1:QUANTITY>
    </ns1:INVCHARGE>
    <ns1:INVLINE>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("DOCUMENT")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:INVOICE_AMOUNT"/>
    </ns1:VALUE>
    <ns1:NUMOFDEC>
    <xsl:value-of select="number(0.0)"/>
    </ns1:NUMOFDEC>
    <ns1:SIGN>
    <xsl:value-of select='string("+")'/>
    </ns1:SIGN>
    <ns1:CURRENCY>
    <xsl:value-of select='string("USD")'/>
    </ns1:CURRENCY>
    <ns1:DRCR>
    <xsl:value-of select='string("DR")'/>
    </ns1:DRCR>
    </ns1:AMOUNT>
    <ns1:OPERAMT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("COST")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:G_INVOICE_ID1/ns0:AMOUNT"/>
    </ns1:VALUE>
    <ns1:NUMOFDEC>
    <xsl:value-of select="number(0.0)"/>
    </ns1:NUMOFDEC>
    <ns1:SIGN>
    <xsl:value-of select='string("+")'/>
    </ns1:SIGN>
    <ns1:CURRENCY>
    <xsl:value-of select='string("USD")'/>
    </ns1:CURRENCY>
    <ns1:UOMVALUE>
    <xsl:value-of select='string("EA")'/>
    </ns1:UOMVALUE>
    <ns1:UOMNUMDEC>
    <xsl:value-of select="number(0.0)"/>
    </ns1:UOMNUMDEC>
    <ns1:UOM>
    <xsl:value-of select='string("EA")'/>
    </ns1:UOM>
    </ns1:OPERAMT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:QUANTITY>
    <ns1:LINENUM>
    <xsl:value-of select="/ns0:G_INVOICE_ID/ns0:G_INVOICE_ID1/ns0:DISTRIBUTION_LINE_NUMBER"/>
    </ns1:LINENUM>
    <ns1:DESCRIPTN>
    <xsl:text disable-output-escaping="no">LineDescription</xsl:text>
    </ns1:DESCRIPTN>
    <ns1:INVTAX>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("TAX")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    <ns1:VALUE>
    <xsl:value-of select="number(0.0)"/>
    </ns1:VALUE>
    </ns1:QUANTITY>
    </ns1:INVTAX>
    </ns1:INVLINE>
    <ns1:INVTAX>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("TAX")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    </ns1:QUANTITY>
    <ns1:INVTAX>
    <ns1:AMOUNT>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("TAX")'/>
    </xsl:attribute>
    <xsl:attribute name="type">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    <xsl:attribute name="index">
    <xsl:value-of select='string("T")'/>
    </xsl:attribute>
    </ns1:AMOUNT>
    <ns1:QUANTITY>
    <xsl:attribute name="qualifier">
    <xsl:value-of select='string("OTHER")'/>
    </xsl:attribute>
    </ns1:QUANTITY>
    </ns1:INVTAX>
    </ns1:INVTAX>
    </ns1:PROCESS_INVOICE>
    </ns1:DATAAREA>
    </ns1:PROCESS_INVOICE_002>
    </xsl:template>
    </xsl:stylesheet>
    Oracle Standard XSD
    <?xml version="1.0" encoding="UTF-8" ?>
    <!--This Schema has been generated from a DTD. A target namespace has been added to the schema.-->
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://TargetNamespace.com/ServiceName" xmlns="http://TargetNamespace.com/ServiceName" nxsd:version="DTD" xmlns:nxsd="http://xmlns.oracle.com/pcbpel/nxsd">
    <xs:element name="BOMNAME" type="xs:string"/>
    <xs:element name="LEDGER" type="xs:string"/>
    <xs:element name="VERB">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="value" fixed="PROCESS" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SOSLINENUM" type="xs:string"/>
    <xs:element name="ITEMCATID" type="xs:string"/>
    <xs:element name="DRAWING" type="xs:string"/>
    <xs:element name="POSITION" type="xs:string"/>
    <xs:element name="CLSSLMNTID" type="xs:string"/>
    <xs:element name="RQSLINENUM" type="xs:string"/>
    <xs:element name="SHIPNOTES" type="xs:string"/>
    <xs:element name="USUPINVFG" type="xs:string"/>
    <xs:element name="SHIPPERNUM" type="xs:string"/>
    <xs:element name="TRACKFLG" type="xs:string"/>
    <xs:element name="QTETYPE" type="xs:string"/>
    <xs:element name="MCHDOCTYPE" type="xs:string"/>
    <xs:element name="RECEIPTID" type="xs:string"/>
    <xs:element name="OPSTATUS" type="xs:string"/>
    <xs:element name="CTCHWCONV" type="xs:string"/>
    <xs:element name="POENTITY" type="xs:string"/>
    <xs:element name="RELLOCID" type="xs:string"/>
    <xs:element name="PARENTID" type="xs:string"/>
    <xs:element name="QUALFNTYPE" type="xs:string"/>
    <xs:element name="COUNTY" type="xs:string"/>
    <xs:element name="QTEREVISON" type="xs:string"/>
    <xs:element name="PRODOSTATS" type="xs:string"/>
    <xs:element name="RESORCEUSE" type="xs:string"/>
    <xs:element name="FEATUREID" type="xs:string"/>
    <xs:element name="PRODSEQNUM" type="xs:string"/>
    <xs:element name="PARENTLOT">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="ECOPRIORITY" type="xs:string"/>
    <xs:element name="PRODCTLINE" type="xs:string"/>
    <xs:element name="UNIT" type="xs:string"/>
    <xs:element name="RSBLINENUM" type="xs:string"/>
    <xs:element name="REQLINENUM" type="xs:string"/>
    <xs:element name="COMPREFDES" type="xs:string"/>
    <xs:element name="SIGN" type="xs:string"/>
    <xs:element name="ITEM" type="xs:string"/>
    <xs:element name="CATALGNAME" type="xs:string"/>
    <xs:element name="FAILTYPE" type="xs:string"/>
    <xs:element name="MACHINEID" type="xs:string"/>
    <xs:element name="SCHLINENUM" type="xs:string"/>
    <xs:element name="REGION" type="xs:string"/>
    <xs:element name="ONETIME" type="xs:string"/>
    <xs:element name="MAINTCALID" type="xs:string"/>
    <xs:element name="STEPNUM" type="xs:string"/>
    <xs:element name="PRODSEQBEG" type="xs:string"/>
    <xs:element name="ITEMDEFN" type="xs:string"/>
    <xs:element name="HAZRDMATL" type="xs:string"/>
    <xs:element name="ITEMSTATUS" type="xs:string"/>
    <xs:element name="BUDGSTAT" type="xs:string"/>
    <xs:element name="MAINTLOCID" type="xs:string"/>
    <xs:element name="MACHSUDEP" type="xs:string"/>
    <xs:element name="OPTIONID" type="xs:string"/>
    <xs:element name="MINUTE" type="xs:string"/>
    <xs:element name="SERIALNUM" type="xs:string"/>
    <xs:element name="SHIPMATLID" type="xs:string"/>
    <xs:element name="MACHSTATE" type="xs:string"/>
    <xs:element name="WARRANTY" type="xs:string"/>
    <xs:element name="CTCHWFLAG" type="xs:string"/>
    <xs:element name="USERID" type="xs:string"/>
    <xs:element name="ROUTINGVAR" type="xs:string"/>
    <xs:element name="PAYMETHOD" type="xs:string"/>
    <xs:element name="OPERATNID" type="xs:string"/>
    <xs:element name="PYMTTERM">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="DATETIME"/>
    <xs:element minOccurs="0" ref="DATETIME"/>
    <xs:element minOccurs="0" ref="DATETIME"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="TERMID"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="PARTIALSHP" type="xs:string"/>
    <xs:element name="RFQLNSTAT" type="xs:string"/>
    <xs:element name="FRMITMCLSS" type="xs:string"/>
    <xs:element name="WAGEGROUP" type="xs:string"/>
    <xs:element name="RSPSDLNUM" type="xs:string"/>
    <xs:element name="MSGID" type="xs:string"/>
    <xs:element name="ITMFTVAL" type="xs:string"/>
    <xs:element name="SHPUNITTOT" type="xs:string"/>
    <xs:element name="ECOTYPE" type="xs:string"/>
    <xs:element name="DESCRIPTN" type="xs:string"/>
    <xs:element name="BOMUSAGE" type="xs:string"/>
    <xs:element name="USERAREA">
    <xs:complexType mixed="true">
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
    <xs:any/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="MOPRIORITY" type="xs:string"/>
    <xs:element name="PARTNRROLE" type="xs:string"/>
    <xs:element name="MSDSID" type="xs:string"/>
    <xs:element name="TELEPHONE">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SHIPPERID" type="xs:string"/>
    <xs:element name="DELIVERTO" type="xs:string"/>
    <xs:element name="EXPIREFLAG" type="xs:string"/>
    <xs:element name="PACKNGDESC" type="xs:string"/>
    <xs:element name="FTDATATYPE" type="xs:string"/>
    <xs:element name="RFQREVISON" type="xs:string"/>
    <xs:element name="PROCESS_INVOICE">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="INVHEADER"/>
    <xs:choice maxOccurs="unbounded">
    <xs:element ref="INVALLWNCE"/>
    <xs:element ref="INVCHARGE"/>
    <xs:element ref="INVLINE"/>
    <xs:element ref="INVTAX"/>
    </xs:choice>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="MACHCLASS" type="xs:string"/>
    <xs:element name="MOSTATUS" type="xs:string"/>
    <xs:element name="QUALIF" type="xs:string"/>
    <xs:element name="NUMOFDEC" type="xs:string"/>
    <xs:element name="GLENTITYD" type="xs:string"/>
    <xs:element name="ROUTEID" type="xs:string"/>
    <xs:element name="BUYERID" type="xs:string"/>
    <xs:element name="XREFTYPEID" type="xs:string"/>
    <xs:element name="POSTALCODE" type="xs:string"/>
    <xs:element name="YEAR" type="xs:string"/>
    <xs:element name="FRGHTTERMS" type="xs:string"/>
    <xs:element name="PICLINENUM" type="xs:string"/>
    <xs:element name="INVENDISP" type="xs:string"/>
    <xs:element name="GLENTITYS" type="xs:string"/>
    <xs:element name="FIXEDASSET" type="xs:string"/>
    <xs:element name="COMMODITY">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SUPERVISOR" type="xs:string"/>
    <xs:element name="APPROVERID" type="xs:string"/>
    <xs:element name="SHPUNITSEQ" type="xs:string"/>
    <xs:element name="RSLINENUM" type="xs:string"/>
    <xs:element name="RFQID" type="xs:string"/>
    <xs:element name="TERMFLAG" type="xs:string"/>
    <xs:element name="OPERATTYPE" type="xs:string"/>
    <xs:element name="BSR">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="VERB"/>
    <xs:element ref="NOUN"/>
    <xs:element ref="REVISION"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="TRAKNGFLAG" type="xs:string"/>
    <xs:element name="RFQTYPE" type="xs:string"/>
    <xs:element name="OVERIDPRIC" type="xs:string"/>
    <xs:element name="WORKORDER" type="xs:string"/>
    <xs:element name="PRODORDER" type="xs:string"/>
    <xs:element name="ACCTTYPE" type="xs:string"/>
    <xs:element name="FLEXBKTID" type="xs:string"/>
    <xs:element name="LINENUM" type="xs:string"/>
    <xs:element name="MCHDOCID" type="xs:string"/>
    <xs:element name="POLNSTATUS" type="xs:string"/>
    <xs:element name="TXANALYSIS" type="xs:string"/>
    <xs:element name="PSCLINENUM" type="xs:string"/>
    <xs:element name="RELMACHID" type="xs:string"/>
    <xs:element name="KANBAN" type="xs:string"/>
    <xs:element name="SOLNSTATUS" type="xs:string"/>
    <xs:element name="TEMPRATURE">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="VALUE"/>
    <xs:element ref="NUMOFDEC"/>
    <xs:element ref="SIGN"/>
    </xs:sequence>
    <xs:attribute name="qualifier" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="ACTUAL"/>
    <xs:enumeration value="DELIVERY"/>
    <xs:enumeration value="LOADING"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="type" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="CELSIUS"/>
    <xs:enumeration value="FAHRENHEIT"/>
    <xs:enumeration value="KELVIN"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    </xs:complexType>
    </xs:element>
    <xs:element name="OLDITMREV" type="xs:string"/>
    <xs:element name="VALUECLASS" type="xs:string"/>
    <xs:element name="DAY" type="xs:string"/>
    <xs:element name="CONTACT">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="NAME"/>
    <xs:element minOccurs="0" ref="CONTCTTYPE"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="EMAIL"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="FAX"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="NAME"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="TELEPHONE"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="VOUCHER" type="xs:string"/>
    <xs:element name="INVCHARGE">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element ref="CHARGETYPE"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="LINENUM"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVCHARGE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVTAX"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="PARTNER"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="OVERTIME" type="xs:string"/>
    <xs:element name="EMPLOYEEID" type="xs:string"/>
    <xs:element name="DENSITYFAC" type="xs:string"/>
    <xs:element name="SALESORDID" type="xs:string"/>
    <xs:element name="ITEMVAR" type="xs:string"/>
    <xs:element name="SHIPPRIOR" type="xs:string"/>
    <xs:element name="CONFIRMATION" type="xs:string"/>
    <xs:element name="STEPTYPE" type="xs:string"/>
    <xs:element name="TAXCODE" type="xs:string"/>
    <xs:element name="ENDITEMID" type="xs:string"/>
    <xs:element name="QUALFNVAL" type="xs:string"/>
    <xs:element name="SAFTYCLASS" type="xs:string"/>
    <xs:element name="LABORID" type="xs:string"/>
    <xs:element name="UOMVALUE" type="xs:string"/>
    <xs:element name="PROXMONTH" type="xs:string"/>
    <xs:element name="REPRTGFLAG" type="xs:string"/>
    <xs:element name="INVLINENUM" type="xs:string"/>
    <xs:element name="ROUTEVAR" type="xs:string"/>
    <xs:element name="SPLITABLE" type="xs:string"/>
    <xs:element name="TITLE" type="xs:string"/>
    <xs:element name="ALLOWTYPE" type="xs:string"/>
    <xs:element name="TOITMCLSS" type="xs:string"/>
    <xs:element name="SOLINENUM" type="xs:string"/>
    <xs:element name="FILENAME" type="xs:string"/>
    <xs:element name="CURRTO" type="xs:string"/>
    <xs:element name="SAFETYTYPE" type="xs:string"/>
    <xs:element name="NOTES">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="COMPLEVEL" type="xs:string"/>
    <xs:element name="RESORCTYP" type="xs:string"/>
    <xs:element name="DOCUMENTID" type="xs:string"/>
    <xs:element name="ROUTELEVEL">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="FRMSITELVL">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="RECEPTDISP" type="xs:string"/>
    <xs:element name="PRODORDID" type="xs:string"/>
    <xs:element name="CLASSLEVEL" type="xs:string"/>
    <xs:element name="REASONCODE" type="xs:string"/>
    <xs:element name="OTELIGIBLE" type="xs:string"/>
    <xs:element name="QUALFNID" type="xs:string"/>
    <xs:element name="RSPREVNUM" type="xs:string"/>
    <xs:element name="INVLINE">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="OPERAMT"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element ref="LINENUM"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="ITEM"/>
    <xs:element minOccurs="0" ref="ITEMTYPE"/>
    <xs:element minOccurs="0" ref="ITEMX"/>
    <xs:element minOccurs="0" ref="OPENITEM"/>
    <xs:element minOccurs="0" ref="PROJACTVTY"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="PROJRESEL"/>
    <xs:element minOccurs="0" ref="UNIT"/>
    <xs:element minOccurs="0" ref="UPC"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="DOCUMNTREF"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVALLWNCE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVCHARGE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVLINE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVTAX"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="INDLINENUM" type="xs:string"/>
    <xs:element name="MACHID" type="xs:string"/>
    <xs:element name="RECLINENUM" type="xs:string"/>
    <xs:element name="FRGHTITEM" type="xs:string"/>
    <xs:element name="RFQIDX" type="xs:string"/>
    <xs:element name="TRNSFRTYPE" type="xs:string"/>
    <xs:element name="PARTNRRATG" type="xs:string"/>
    <xs:element name="BOMREVISON" type="xs:string"/>
    <xs:element name="ACTTYPE" type="xs:string"/>
    <xs:element name="SCHEDULEID" type="xs:string"/>
    <xs:element name="REF">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="CONTRACTB" type="xs:string"/>
    <xs:element name="DISCRPTYPE" type="xs:string"/>
    <xs:element name="DOCTYPE" type="xs:string"/>
    <xs:element name="MAINTORDID" type="xs:string"/>
    <xs:element name="LINEFEED" type="xs:string"/>
    <xs:element name="BOMTYPE" type="xs:string"/>
    <xs:element name="CNTCTTYPE" type="xs:string"/>
    <xs:element name="MATCHTYPE" type="xs:string"/>
    <xs:element name="CONTRACTS" type="xs:string"/>
    <xs:element name="EMPCATEGRY" type="xs:string"/>
    <xs:element name="CHARGE">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" ref="OPERAMT"/>
    <xs:element minOccurs="0" ref="CHARGEID"/>
    <xs:element minOccurs="0" ref="CHARGETYPE"/>
    <xs:element minOccurs="0" ref="CHGLINENUM"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="DISTRIBUTN"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="ROUTINGREV" type="xs:string"/>
    <xs:element name="RFQLINENUM" type="xs:string"/>
    <xs:element name="RELITEMID" type="xs:string"/>
    <xs:element name="CLSSELMT">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="MOPARENTID" type="xs:string"/>
    <xs:element name="REVISION">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="value" fixed="002" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SUBLINENUM" type="xs:string"/>
    <xs:element name="ITEMX" type="xs:string"/>
    <xs:element name="OWNRSHPCDE" type="xs:string"/>
    <xs:element name="SHPMTLDESC" type="xs:string"/>
    <xs:element name="PERSONCODE" type="xs:string"/>
    <xs:element name="APPROVE" type="xs:string"/>
    <xs:element name="BOMSTATUS" type="xs:string"/>
    <xs:element name="FAILUREID" type="xs:string"/>
    <xs:element name="ITEMDESC" type="xs:string"/>
    <xs:element name="ROUTINGID" type="xs:string"/>
    <xs:element name="CHARGEID" type="xs:string"/>
    <xs:element name="WAGETYPE" type="xs:string"/>
    <xs:element name="DATETIME">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="YEAR"/>
    <xs:element ref="MONTH"/>
    <xs:element ref="DAY"/>
    <xs:element ref="HOUR"/>
    <xs:element ref="MINUTE"/>
    <xs:element ref="SECOND"/>
    <xs:element ref="SUBSECOND"/>
    <xs:element ref="TIMEZONE"/>
    </xs:sequence>
    <xs:attribute name="qualifier" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="ACCOUNTING"/>
    <xs:enumeration value="ACTEND"/>
    <xs:enumeration value="ACTSTART"/>
    <xs:enumeration value="APPREQ"/>
    <xs:enumeration value="APPROVAL"/>
    <xs:enumeration value="AVAILABLE"/>
    <xs:enumeration value="BKTEND"/>
    <xs:enumeration value="BKTSTART"/>
    <xs:enumeration value="CANCEL"/>
    <xs:enumeration value="CHANGEDATE"/>
    <xs:enumeration value="COMPDATE"/>
    <xs:enumeration value="CONSUME"/>
    <xs:enumeration value="CREATION"/>
    <xs:enumeration value="CUMULATIVE"/>
    <xs:enumeration value="DELIVACT"/>
    <xs:enumeration value="DELIVSCHED"/>
    <xs:enumeration value="DISCNT"/>
    <xs:enumeration value="DOCUMENT"/>
    <xs:enumeration value="DUE"/>
    <xs:enumeration value="EARLSTEFF"/>
    <xs:enumeration value="EARLSTSHIP"/>
    <xs:enumeration value="EFFECTIVE"/>
    <xs:enumeration value="ENGCHG"/>
    <xs:enumeration value="EXECFINISH"/>
    <xs:enumeration value="EXECSTART"/>
    <xs:enumeration value="EXPIRATION"/>
    <xs:enumeration value="FAILDATE"/>
    <xs:enumeration value="FORECASTF"/>
    <xs:enumeration value="FORECASTS"/>
    <xs:enumeration value="FROM"/>
    <xs:enumeration value="GENERATION"/>
    <xs:enumeration value="IMPL"/>
    <xs:enumeration value="INVOICE"/>
    <xs:enumeration value="JOBDUE"/>
    <xs:enumeration value="LABORFINSH"/>
    <xs:enumeration value="LABORSTART"/>
    <xs:enumeration value="LASTUSED"/>
    <xs:enumeration value="LOADING"/>
    <xs:enumeration value="MATCHING"/>
    <xs:enumeration value="MSMENTDATE"/>
    <xs:enumeration value="NEEDDELV"/>
    <xs:enumeration value="OPFINISH"/>
    <xs:enumeration value="OPSTART"/>
    <xs:enumeration value="PAYEND"/>
    <xs:enumeration value="PLANEND"/>
    <xs:enumeration value="PLANSTART"/>
    <xs:enumeration value="PO"/>
    <xs:enumeration value="PROMDELV"/>
    <xs:enumeration value="PROMSHIP"/>
    <xs:enumeration value="PYMTTERM"/>
    <xs:enumeration value="RECEIVED"/>
    <xs:enumeration value="REPORTDATE"/>
    <xs:enumeration value="REPORTNGFN"/>
    <xs:enumeration value="REPORTNGST"/>
    <xs:enumeration value="REQUIRED"/>
    <xs:enumeration value="RESORCDWNF"/>
    <xs:enumeration value="RESORCDWNS"/>
    <xs:enumeration value="RSPDDATE"/>
    <xs:enumeration value="RSPDOCGEN"/>
    <xs:enumeration value="SCHEND"/>
    <xs:enumeration value="SCHSTART"/>
    <xs:enumeration value="SETUPFINSH"/>
    <xs:enumeration value="SETUPSTART"/>
    <xs:enumeration value="SHIP"/>
    <xs:enumeration value="SHIPSCHED"/>
    <xs:enumeration value="STATUSDATE"/>
    <xs:enumeration value="TEARDOWNF"/>
    <xs:enumeration value="TEARDOWNS"/>
    <xs:enumeration value="TO"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="type" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="T"/>
    <xs:enumeration value="F"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="index" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="BOMALTID" type="xs:string"/>
    <xs:element name="QTELINENUM" type="xs:string"/>
    <xs:element name="DISPOSITN" type="xs:string"/>
    <xs:element name="CATALOGRV" type="xs:string"/>
    <xs:element name="PROJRESEL">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="TAXEXEMPT" type="xs:string"/>
    <xs:element name="OPTCLSSID" type="xs:string"/>
    <xs:element name="PREFERENCE" type="xs:string"/>
    <xs:element name="WORKCENTER" type="xs:string"/>
    <xs:element name="PRICELSTID" type="xs:string"/>
    <xs:element name="CLSELMLVL" type="xs:string"/>
    <xs:element name="POLINENUM" type="xs:string"/>
    <xs:element name="SAVESETUP" type="xs:string"/>
    <xs:element name="PROPERTY">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SUFFIX" type="xs:string"/>
    <xs:element name="CONDSTATUS" type="xs:string"/>
    <xs:element name="EXCPLINNUM" type="xs:string"/>
    <xs:element name="PMID" type="xs:string"/>
    <xs:element name="TOSITELVL">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="DUNSNUMBER" type="xs:string"/>
    <xs:element name="LOTLEVEL">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="DISTCENTER" type="xs:string"/>
    <xs:element name="RFQSTATUS" type="xs:string"/>
    <xs:element name="TERMID" type="xs:string"/>
    <xs:element name="SHIFT" type="xs:string"/>
    <xs:element name="PARTNRID" type="xs:string"/>
    <xs:element name="NEWITMREV" type="xs:string"/>
    <xs:element name="DAYSNUM" type="xs:string"/>
    <xs:element name="SYNCIND" type="xs:string"/>
    <xs:element name="FTVALIND" type="xs:string"/>
    <xs:element name="FUND" type="xs:string"/>
    <xs:element name="PRODSEQEND" type="xs:string"/>
    <xs:element name="TRACKINGID" type="xs:string"/>
    <xs:element name="LINETYPE" type="xs:string"/>
    <xs:element name="INVTAX">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="LINENUM"/>
    <xs:element minOccurs="0" ref="TAXCODE"/>
    <xs:element minOccurs="0" ref="TAXJRSDCTN"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVCHARGE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVTAX"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="CONTAINRID" type="xs:string"/>
    <xs:element name="OPRGRPNAME" type="xs:string"/>
    <xs:element name="CITY" type="xs:string"/>
    <xs:element name="APPROVED" type="xs:string"/>
    <xs:element name="SALESORG">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="NEWREVFLAG" type="xs:string"/>
    <xs:element name="ACCTYEAR" type="xs:string"/>
    <xs:element name="RESORCKIN" type="xs:string"/>
    <xs:element name="BACKORDIND" type="xs:string"/>
    <xs:element name="EMPSTATUS" type="xs:string"/>
    <xs:element name="PRINT" type="xs:string"/>
    <xs:element name="INVALLWNCE">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="AMOUNT"/>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element ref="ALLOWTYPE"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="LINENUM"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVCHARGE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVTAX"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="JPID" type="xs:string"/>
    <xs:element name="QTELNSTAT" type="xs:string"/>
    <xs:element name="CURRENCY" type="xs:string"/>
    <xs:element name="CONSUMPTN" type="xs:string"/>
    <xs:element name="RESORCLVL" type="xs:string"/>
    <xs:element name="SUBSECOND" type="xs:string"/>
    <xs:element name="MANDATORY" type="xs:string"/>
    <xs:element name="BOMID" type="xs:string"/>
    <xs:element name="INQUEUEID" type="xs:string"/>
    <xs:element name="PRICETYPE" type="xs:string"/>
    <xs:element name="EMPQUALIF" type="xs:string"/>
    <xs:element name="CMPRSNID" type="xs:string"/>
    <xs:element name="FTVALQUAL" type="xs:string"/>
    <xs:element name="DOCUMENTRV" type="xs:string"/>
    <xs:element name="FIELDID" type="xs:string"/>
    <xs:element name="QTEID" type="xs:string"/>
    <xs:element name="ITEMCLASSID" type="xs:string"/>
    <xs:element name="LOADPOINT" type="xs:string"/>
    <xs:element name="EMAIL" type="xs:string"/>
    <xs:element name="EXCPTNCODE" type="xs:string"/>
    <xs:element name="COSTTYPE" type="xs:string"/>
    <xs:element name="PRDLINENUM" type="xs:string"/>
    <xs:element name="PLANNERID" type="xs:string"/>
    <xs:element name="EXPORTLIC" type="xs:string"/>
    <xs:element name="WRKSCHDID" type="xs:string"/>
    <xs:element name="CLASSFN">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="SOSTATUS" type="xs:string"/>
    <xs:element name="SHPUNITSTS" type="xs:string"/>
    <xs:element name="LANGUAGE" type="xs:string"/>
    <xs:element name="DIVISION" type="xs:string"/>
    <xs:element name="FAILCODE" type="xs:string"/>
    <xs:element name="REQLNSTAT" type="xs:string"/>
    <xs:element name="TOPARTY" type="xs:string"/>
    <xs:element name="COMMENTS" type="xs:string"/>
    <xs:element name="RSLINETYPE" type="xs:string"/>
    <xs:element name="CLSSSCHMID" type="xs:string"/>
    <xs:element name="ITEMTYPE" type="xs:string"/>
    <xs:element name="ADDRESS">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="ADDRLINE"/>
    <xs:element minOccurs="0" ref="ADDRTYPE"/>
    <xs:element minOccurs="0" ref="CITY"/>
    <xs:element minOccurs="0" ref="COUNTRY"/>
    <xs:element minOccurs="0" ref="COUNTY"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="FAX"/>
    <xs:element minOccurs="0" ref="POSTALCODE"/>
    <xs:element minOccurs="0" ref="REGION"/>
    <xs:element minOccurs="0" ref="STATEPROVN"/>
    <xs:element minOccurs="0" ref="TAXJRSDCTN"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="TELEPHONE"/>
    <xs:element minOccurs="0" ref="URL"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="REQUESTER" type="xs:string"/>
    <xs:element name="BUDGVER" type="xs:string"/>
    <xs:element name="CONTCTTYPE" type="xs:string"/>
    <xs:element name="BUDGTXN" type="xs:string"/>
    <xs:element name="DATAAREA">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="PROCESS_INVOICE"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="UPCPKGIND" type="xs:string"/>
    <xs:element name="UPDTWIPFG" type="xs:string"/>
    <xs:element name="NAME">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="OPERATNSEQ" type="xs:string"/>
    <xs:element name="DISPOSITON" type="xs:string"/>
    <xs:element name="EMPNAME" type="xs:string"/>
    <xs:element name="ACCTPERIOD" type="xs:string"/>
    <xs:element name="TIMEZONE" type="xs:string"/>
    <xs:element name="RSPLINNUM" type="xs:string"/>
    <xs:element name="INMRPPLAN" type="xs:string"/>
    <xs:element name="GEOGRAPHY" type="xs:string"/>
    <xs:element name="USEUPITEM" type="xs:string"/>
    <xs:element name="OUTQUEUEID" type="xs:string"/>
    <xs:element name="COSTCENTER" type="xs:string"/>
    <xs:element name="PROJTXTYPE" type="xs:string"/>
    <xs:element name="TAXID" type="xs:string"/>
    <xs:element name="AUTHID" type="xs:string"/>
    <xs:element name="VALUE" type="xs:string"/>
    <xs:element name="INSPECTRID" type="xs:string"/>
    <xs:element name="JEID" type="xs:string"/>
    <xs:element name="PUBLISHER" type="xs:string"/>
    <xs:element name="HRORG">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="DISTRIBUTN">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" ref="OPERAMT"/>
    <xs:element minOccurs="0" ref="BUSNAREA"/>
    <xs:element minOccurs="0" ref="COSTCENTER"/>
    <xs:element minOccurs="0" ref="DEPARTMENT"/>
    <xs:element minOccurs="0" ref="DIVISION"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="ELEMENT"/>
    <xs:element minOccurs="0" ref="FUND"/>
    <xs:element minOccurs="0" ref="GEOGRAPHY"/>
    <xs:element minOccurs="0" ref="GLENTITYS"/>
    <xs:element minOccurs="0" ref="GLNOMACCT"/>
    <xs:element minOccurs="0" ref="PROFITCTR"/>
    <xs:element minOccurs="0" ref="PROJECT"/>
    <xs:element minOccurs="0" ref="UNIT"/>
    <xs:element minOccurs="0" ref="WAREHOUSE"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="FILETYPE" type="xs:string"/>
    <xs:element name="CLASSFNID" type="xs:string"/>
    <xs:element name="PSBLINENUM" type="xs:string"/>
    <xs:element name="JOBCODE" type="xs:string"/>
    <xs:element name="TAXJRSDCTN" type="xs:string"/>
    <xs:element name="TOOLCLASS" type="xs:string"/>
    <xs:element name="OPERAMT">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="VALUE"/>
    <xs:element ref="NUMOFDEC"/>
    <xs:element ref="SIGN"/>
    <xs:element ref="CURRENCY"/>
    <xs:element ref="UOMVALUE"/>
    <xs:element ref="UOMNUMDEC"/>
    <xs:element ref="UOM"/>
    </xs:sequence>
    <xs:attribute name="qualifier" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="COST"/>
    <xs:enumeration value="EXTENDED"/>
    <xs:enumeration value="FREIGHT"/>
    <xs:enumeration value="UNIT"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="type" use="required">
    <xs:simpleType>
    <xs:restriction base="xs:NMTOKEN">
    <xs:enumeration value="T"/>
    <xs:enumeration value="F"/>
    <xs:enumeration value="OTHER"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    </xs:complexType>
    </xs:element>
    <xs:element name="OPTCLSNAME" type="xs:string"/>
    <xs:element name="DEFLTVALUE" type="xs:string"/>
    <xs:element name="PARTNER">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" ref="NAME"/>
    <xs:element minOccurs="0" ref="ONETIME"/>
    <xs:element minOccurs="0" ref="PARTNRID"/>
    <xs:element minOccurs="0" ref="PARTNRTYPE"/>
    <xs:element minOccurs="0" ref="SYNCIND"/>
    <xs:element minOccurs="0" ref="ACTIVE"/>
    <xs:element minOccurs="0" ref="CURRENCY"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="DUNSNUMBER"/>
    <xs:element minOccurs="0" ref="GLENTITYS"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="NAME"/>
    <xs:element minOccurs="0" ref="PARENTID"/>
    <xs:element minOccurs="0" ref="PARTNRIDX"/>
    <xs:element minOccurs="0" ref="PARTNRRATG"/>
    <xs:element minOccurs="0" ref="PARTNRROLE"/>
    <xs:element minOccurs="0" ref="PAYMETHOD"/>
    <xs:element minOccurs="0" ref="TAXEXEMPT"/>
    <xs:element minOccurs="0" ref="TAXID"/>
    <xs:element minOccurs="0" ref="TERMID"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="ADDRESS"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="ATTCHREF"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="CONTACT"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="PRICELSTRV" type="xs:string"/>
    <xs:element name="FIELDVALUE" type="xs:string"/>
    <xs:element name="TRANSMETHD" type="xs:string"/>
    <xs:element name="UNITTYPE" type="xs:string"/>
    <xs:element name="FRMITMNM" type="xs:string"/>
    <xs:element name="FAX">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="DOCKID" type="xs:string"/>
    <xs:element name="INSLINENUM" type="xs:string"/>
    <xs:element name="GLNOMACCT" type="xs:string"/>
    <xs:element name="RESTRICTN" type="xs:string"/>
    <xs:element name="COUNTRY" type="xs:string"/>
    <xs:element name="LOGICALID" type="xs:string"/>
    <xs:element name="ITEMCLASS" type="xs:string"/>
    <xs:element name="FTGROUP" type="xs:string"/>
    <xs:element name="ABSENCETYP" type="xs:string"/>
    <xs:element name="SHIPPOINT" type="xs:string"/>
    <xs:element name="ITEMRV" type="xs:string"/>
    <xs:element name="MONTH" type="xs:string"/>
    <xs:element name="RATETYPE" type="xs:string"/>
    <xs:element name="IMPORTLIC" type="xs:string"/>
    <xs:element name="CMPRSNTYPE" type="xs:string"/>
    <xs:element name="REQUISTNID" type="xs:string"/>
    <xs:element name="COUNTRYORG" type="xs:string"/>
    <xs:element name="HOUR" type="xs:string"/>
    <xs:element name="CONTNRTYPE" type="xs:string"/>
    <xs:element name="DRCR" type="xs:string"/>
    <xs:element name="BKTYPE" type="xs:string"/>
    <xs:element name="FACTOR" type="xs:string"/>
    <xs:element name="LOTSERIAL">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" ref="QUANTITY"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="LOTLEVEL"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="PARENTLOT"/>
    <xs:element minOccurs="0" ref="PARENTSNUM"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="SERIALNUM"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    <xs:attribute name="returndata" use="optional" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="TOITMNM" type="xs:string"/>
    <xs:element name="EMPDEPT" type="xs:string"/>
    <xs:element name="EXCLUSIVE" type="xs:string"/>
    <xs:element name="ECOAPPSTAT" type="xs:string"/>
    <xs:element name="UOM" type="xs:string"/>
    <xs:element name="LOTSNFLAG" type="xs:string"/>
    <xs:element name="PROJACTSTS" type="xs:string"/>
    <xs:element name="ACKMODE" type="xs:string"/>
    <xs:element name="BILLOLADNG" type="xs:string"/>
    <xs:element name="UPC" type="xs:string"/>
    <xs:element name="SAFETYID" type="xs:string"/>
    <xs:element name="TOOLID" type="xs:string"/>
    <xs:element name="STEPID" type="xs:string"/>
    <xs:element name="CODEPAGE" type="xs:string"/>
    <xs:element name="ACTIONCODE" type="xs:string"/>
    <xs:element name="INSPECTDOC" type="xs:string"/>
    <xs:element name="QSLINESTAT" type="xs:string"/>
    <xs:element name="FREIGHTCLS" type="xs:string"/>
    <xs:element name="BUSNAREA" type="xs:string"/>
    <xs:element name="PROJSTATUS" type="xs:string"/>
    <xs:element name="DOCUMNTREF">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="DOCTYPE"/>
    <xs:element ref="DOCUMENTID"/>
    <xs:element ref="PARTNRID"/>
    <xs:element ref="PARTNRTYPE"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="DOCUMENTRV"/>
    <xs:element minOccurs="0" ref="LINENUM"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="NOTES"/>
    <xs:element minOccurs="0" ref="SCHLINENUM"/>
    <xs:element minOccurs="0" ref="SUBLINENUM"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="CARRSRVLVL" type="xs:string"/>
    <xs:element name="OILINENUM" type="xs:string"/>
    <xs:element name="DEFAULT" type="xs:string"/>
    <xs:element name="SUBSFLAG" type="xs:string"/>
    <xs:element name="PARTNRTYPE" type="xs:string"/>
    <xs:element name="POSTATUS" type="xs:string"/>
    <xs:element name="RECEIPTYPE" type="xs:string"/>
    <xs:element name="URI" type="xs:string"/>
    <xs:element name="CLSSSCHMRV" type="xs:string"/>
    <xs:element name="INVHEADER">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="AMOUNT"/>
    <xs:element ref="DATETIME"/>
    <xs:element minOccurs="0" ref="AMOUNT"/>
    <xs:element ref="DOCUMENTID"/>
    <xs:element minOccurs="0" ref="DESCRIPTN"/>
    <xs:element minOccurs="0" ref="DOCTYPE"/>
    <xs:element minOccurs="0" ref="PAYMETHOD"/>
    <xs:element minOccurs="0" ref="REASONCODE"/>
    <xs:element minOccurs="0" ref="USERAREA"/>
    <xs:element maxOccurs="unbounded" ref="PARTNER"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="DOCUMNTREF"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVALLWNCE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVCHARGE"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="INVTAX"/>
    <xs:element minOccurs="0" maxOccurs="unbounded" ref="PYMTTERM"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="URL" type="xs:string"/>
    <xs:element name="RESOURCEID" type="xs:string"/>
    <xs:element name="PARENTSNUM" type="xs:string"/>
    <xs:element name="SALESPERSN" type="xs:string"/>
    <xs:element name="ELEMENT">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="index" use="required" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="QTESTATUS" type="xs:string"/>
    <xs:element name="NOUN">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="value" fixed="INVOICE" type="xs:string"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="OPTIONNAME" type="xs:string"/>
    <xs:element name="USAGERESTN" type="xs:string"/>
    <xs:element name="PACKING" type="xs:string"/>
    <xs:element name="UOMNUMDEC" type="xs:string"/>
    <xs:element name="REVITMSTAT" type="xs:string"/>
    <xs:element name="CURRFROM" type="xs:string"/>
    <xs:element name="FEATVAL" type="xs:string"/>
    <xs:element name="ACKREQUEST" type="xs:string"/>
    <xs:element name="OPRGRPTYPE" type="xs:string"/>
    <xs:element name="DAYOFMONTH" type="xs:string"/>
    <xs:element name="ECONAME" type="xs:string"/>
    <xs:element name="PSDLINENUM" type=

    It looks like you dont have the MODIFY statement in the loops where you calculate the QTYDIFF value.
    Try:
    loop at t_hist.
    clear t_hist-qtydiff.
    t_hist-qtydiff = t_hist-qtyrcvd - t_hist-qtyinvd.
    if not s_qty is initial.
    check t_hist-qtydiff in s_qty.
    endif.
    if not s_value is initial.
    check t_hist-valdiff in s_value.
    endif.
    w_hist-valdiff = w_hist-valdiff + t_hist-valdiff.
    <b>MODIFY t_hist from w_hist.</b>
    endloop.
    Do the same for the other t_hist table loop.
    Brad

  • Question on BPEL Process Performance

    Hello,
    We have a BPEL process reading the datafile through file adapter and upserting into DB using DB Adapter. Our requirement is
    If there are 10 records to process and two records (record 5 and 9) fail while inserting/updating for some reason(i.e data type mismatch, column length mismatch etc..), at the end of the process you should see 8 records in the destination table and two records in error table.
    I know there are solutions of this :
    *1) Multiple calls to DB:* Use a While loop in a BPEL process and Invoke DB adapter for each record and use exception handling(Catch all block).
    *2) Invoke Store Procedure:* to prevent multiple calls to DB, create a stored proc on DB side to iterate and insert the records and the stored proc should also return the IDs of failed records back as error response so that you can insert those failed records to a log table or in log files.
    Can you suggest which solution is best in terms of performance and why ??
    Also we need to perform some business validation (i.e NOT NULL check, date format check etc..), Where should we perform this.. at DB level or BPEL process level?? and why..
    Thanks,
    Buddhi

    BPEL is a slow performer.
    Always call a stored procedure to do complex data processings.
    Hence go with the second approach.
    Error records:
    If your going to log errors in the same database, insert the error details direcly into the error table. Dont go back to BPEL.
    Application specific validations should be handled in the application itself.
    --Prasanna                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • ORABPEL-11811 - Error while calling PL/Sql API Into BPEL Process

    Hi,
    I have created a BPEL Process for creating a Order in Oracle using the synchronous process.
    I have followed the below steps.
    1) Created a Stored procedure using the Order Creation API's by passing Recard Type IN parameters.
    2) Created Synchronous BPEL Process and called the above Procedure using APPS Adapter.
    3) Created a xsd file and mapped the input and output parameter values using Transform Activity.
    After the above steps, when I try to run the BPEL process I am getting the below error:
    An error occurred while preparing and executing the APPS.PROC_PROC_NAME API. Cause: java.sql.SQLException: ORA-06531: Reference to uninitialized collection
    ORA-06512: at "APPS.PROC_PROC_NAME ", line 149
    ORA-06512: at line 1
    [Caused by: ORA-06531: Reference to uninitialized collection
    ORA-06512: at "APPS.PROC_NAME", line 149
    ORA-06512: at line 1
    ; nested exception is:
    ORABPEL-11811
    Error while trying to prepare and execute an API.
    An error occurred while preparing and executing the APPS.PROC_PROC_NAME API. Cause: java.sql.SQLException: ORA-06531: Reference to uninitialized collection.
    Can anybody help in resolving the error?
    Thanks,
    Mastanvali.

    Here is the API Code..
    CREATE OR REPLACE PROCEDURE XXMAST_PRC(
    arg_in_p_header_rec           IN HeaderObject,
    arg_in_p_line_tbl          IN arrayLines,
    arg_out_x_return_status          OUT VARCHAR2,
    arg_out_order_number          OUT NUMBER,
    arg_out_header_id          OUT NUMBER,
    arg_out_flow_status_code     OUT VARCHAR2
    ) AS
         p_api_version_number          NUMBER;
         x_return_status      VARCHAR2(2);
         x_msg_count      NUMBER;
         x_msg_data      VARCHAR2(2000);
         v_msg_data               VARCHAR2(8000);
         v_msg_index_out               NUMBER(10);
         p_header_rec      OE_ORDER_PUB.HEADER_REC_TYPE;
         p_old_header_rec      OE_ORDER_PUB.HEADER_REC_TYPE;
         p_header_val_rec      OE_ORDER_PUB.Header_Val_Rec_Type;
         p_old_header_val_rec      OE_ORDER_PUB.Header_Val_Rec_Type;
         p_Header_Adj_tbl      OE_ORDER_PUB.Header_Adj_Tbl_Type;
         p_old_Header_Adj_tbl      OE_ORDER_PUB.Header_Adj_Tbl_Type;
         p_Header_Adj_val_tbl      OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
         p_old_Header_Adj_val_tbl      OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
         p_Header_price_Att_tbl      OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
         p_old_Header_Price_Att_tbl      OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
         p_Header_Adj_Att_tbl      OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
         p_old_Header_Adj_Att_tbl      OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
         p_Header_Adj_Assoc_tbl      OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
         p_old_Header_Adj_Assoc_tbl      OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
         p_Header_Scredit_tbl      OE_ORDER_PUB.Header_Scredit_Tbl_Type;
         p_old_Header_Scredit_tbl      OE_ORDER_PUB.Header_Scredit_Tbl_Type;
         p_Header_Scredit_val_tbl      OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
         p_old_Header_Scredit_val_tbl      OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
         p_line_tbl      OE_ORDER_PUB.Line_Tbl_Type;
         p_old_line_tbl      OE_ORDER_PUB.Line_Tbl_Type;
         p_line_val_tbl      OE_ORDER_PUB.Line_Val_Tbl_Type;
         p_old_line_val_tbl      OE_ORDER_PUB.Line_Val_Tbl_Type;
         p_Line_Adj_tbl      OE_ORDER_PUB.Line_Adj_Tbl_Type;
         p_old_Line_Adj_tbl      OE_ORDER_PUB.Line_Adj_Tbl_Type;
         p_Line_Adj_val_tbl      OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
         p_old_Line_Adj_val_tbl      OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
         p_Line_price_Att_tbl      OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
         p_old_Line_Price_Att_tbl      OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
         p_Line_Adj_Att_tbl      OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
         p_old_Line_Adj_Att_tbl      OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
         p_Line_Adj_Assoc_tbl      OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
         p_old_Line_Adj_Assoc_tbl      OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
         p_Line_Scredit_tbl      OE_ORDER_PUB.Line_Scredit_Tbl_Type;
         p_old_Line_Scredit_tbl      OE_ORDER_PUB.Line_Scredit_Tbl_Type;
         p_Line_Scredit_val_tbl      OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
         p_old_Line_Scredit_val_tbl      OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
         p_Lot_Serial_tbl      OE_ORDER_PUB.Lot_Serial_Tbl_Type;
         p_old_Lot_Serial_tbl      OE_ORDER_PUB.Lot_Serial_Tbl_Type;
         p_Lot_Serial_val_tbl      OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
         p_old_Lot_Serial_val_tbl      OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
         p_action_request_tbl      OE_ORDER_PUB.Request_Tbl_Type;
         x_header_rec OE_ORDER_PUB.Header_Rec_Type;
         x_header_val_rec OE_ORDER_PUB.Header_Val_Rec_Type;
         x_Header_Adj_tbl OE_ORDER_PUB.Header_Adj_Tbl_Type;
         x_Header_Adj_val_tbl OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
         x_Header_price_Att_tbl OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
         x_Header_Adj_Att_tbl OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
         x_Header_Adj_Assoc_tbl OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
         x_Header_Scredit_tbl OE_ORDER_PUB.Header_Scredit_Tbl_Type;
         x_Header_Scredit_val_tbl OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
         x_line_tbl OE_ORDER_PUB.Line_Tbl_Type;
         x_line_val_tbl OE_ORDER_PUB.Line_Val_Tbl_Type;
         x_Line_Adj_tbl OE_ORDER_PUB.Line_Adj_Tbl_Type;
         x_Line_Adj_val_tbl OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
         x_Line_price_Att_tbl OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
         x_Line_Adj_Att_tbl OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
         x_Line_Adj_Assoc_tbl OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
         x_Line_Scredit_tbl OE_ORDER_PUB.Line_Scredit_Tbl_Type;
         x_Line_Scredit_val_tbl OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
         x_Lot_Serial_tbl OE_ORDER_PUB.Lot_Serial_Tbl_Type;
         x_Lot_Serial_val_tbl OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
         x_action_request_tbl     OE_ORDER_PUB.Request_Tbl_Type;
         icount                    NUMBER :=0;
    BEGIN
         fnd_global.apps_initialize(1318,21623,660);
         fnd_client_info.set_org_context(204);
         p_header_rec:= OE_ORDER_PUB.G_MISS_HEADER_REC;
         SELECT OE_ORDER_HEADERS_S.NEXTVAL INTO p_header_rec.header_id FROM DUAL;
         dbms_output.put_line('Header ID          = '|| p_header_rec.header_id);
         p_api_version_number := 1.0;
    ------------------------------------------header code-----------------------------------------------------------------------
              p_header_rec.order_type_id          := arg_in_p_header_rec.order_type_id;
              p_header_rec.sold_to_org_id          := arg_in_p_header_rec.sold_to_org_id;
              p_header_rec.ship_to_org_id          := arg_in_p_header_rec.ship_to_org_id;
              p_header_rec.transactional_curr_code:= arg_in_p_header_rec.transactional_curr_code;
              p_header_rec.order_source_id          := arg_in_p_header_rec.order_source_id;
              p_header_rec.org_id               := arg_in_p_header_rec.org_id;
              p_header_rec.ship_from_org_id          := arg_in_p_header_rec.ship_from_org_id;
              p_header_rec.payment_term_id           := arg_in_p_header_rec.payment_term_id;
              p_header_rec.price_list_id          := 1000;
              p_header_rec.freight_terms_code          := 'Due';     -- Prepay and Add
              p_header_rec.operation               := OE_GLOBALS.G_OPR_CREATE;
              p_header_rec.pricing_date          := SYSDATE;
              p_header_rec.creation_date          := SYSDATE;
              p_header_rec.booked_flag          := 'N';
              p_header_rec.created_by               := 1318;
              p_header_rec.last_updated_by          := 1318;
              p_header_rec.last_update_date          := SYSDATE;
              p_header_rec.invoice_to_org_id          := 1424;
              p_header_rec.version_number          := 1;
              p_header_rec.open_flag               := 'Y';
              p_header_rec.ordered_date          := SYSDATE;
              p_header_rec.flow_status_code          := 'ENTERED';
              p_header_rec.tax_exempt_flag          := 'S';
              p_header_rec.salesrep_id          := -3;
    --------------------------------------------LINES CODE------------------------------------------------------------
         icount := 0;
         for icount in 1 .. arg_in_p_line_tbl.count loop
              p_line_tbl(icount) := Oe_Order_Pub.G_MISS_LINE_REC;
              SELECT OE_ORDER_LINES_S.NEXTVAL INTO p_line_tbl(icount).line_id FROM DUAL;
              dbms_output.put_line('Line ID               = '|| p_line_tbl(icount).line_id);
         p_line_tbl(icount).inventory_item_id          := arg_in_p_line_tbl(icount).inventory_item_id;
         p_line_tbl(icount).ordered_quantity          := arg_in_p_line_tbl(icount).ordered_quantity;
         p_line_tbl(icount).pricing_quantity          := arg_in_p_line_tbl(icount).pricing_quantity;
         p_line_tbl(icount).line_type_id               := arg_in_p_line_tbl(icount).line_type_id;
         p_line_tbl(icount).line_number          := icount;
         p_line_tbl(icount).shipment_number          := arg_in_p_line_tbl(icount).shipment_number;
         p_line_tbl(icount).ship_to_org_id          := arg_in_p_line_tbl(icount).ship_to_org_id;
         p_line_tbl(icount).sold_to_org_id          := arg_in_p_line_tbl(icount).sold_to_org_id;
         p_line_tbl(icount).salesrep_id          := arg_in_p_line_tbl(icount).salesrep_id;
         p_line_tbl(icount).payment_term_id          := arg_in_p_line_tbl(icount).payment_term_id;
              p_line_tbl(icount).price_list_id          := 1000;
              p_line_tbl(icount).operation               := OE_GLOBALS.G_OPR_CREATE;
              p_line_tbl(icount).open_flag               := 'Y';
              p_line_tbl(icount).booked_flag               := 'N';
              p_line_tbl(icount).header_id               := p_header_rec.header_id;
              p_line_tbl(icount).line_category_code          := 'ORDER';
              p_line_tbl(icount).order_quantity_uom          :='Ea';
              p_line_tbl(icount).request_date               := SYSDATE;
              p_line_tbl(icount).schedule_ship_date          := SYSDATE;
              p_line_tbl(icount).ship_from_org_id          := 204;
              p_line_tbl(icount).flow_status_code          := 'ENTERED';
              p_line_tbl(icount).ship_to_customer_id          := 1290;
              p_line_tbl(icount).invoice_to_org_id          := 1424;
              p_line_tbl(icount).tax_exempt_flag          := 'S';
              p_line_tbl(icount).tax_date               := '02-Mar-2005';
              p_line_tbl(icount).tax_code               := 'Location';
              SELECT OE_PRICE_ADJUSTMENTS_S.NEXTVAL INTO p_Line_Adj_tbl(icount).price_adjustment_id FROM DUAL;
              dbms_output.put_line('Price Adjustment ID     = '|| p_Line_Adj_tbl(icount).price_adjustment_id);
              p_Line_Adj_tbl(icount).created_by          := 1318;
              p_Line_Adj_tbl(icount).header_id          := p_header_rec.header_id;
              p_Line_Adj_tbl(icount).line_id               := p_line_tbl(icount).line_id;
              p_Line_Adj_tbl(icount).percent               := 10;
              p_Line_Adj_tbl(icount).operation          := OE_GLOBALS.G_OPR_CREATE;
              p_Line_Adj_tbl(icount).list_header_id          := 8988;
              p_Line_Adj_tbl(icount).list_line_id          := 16596;
              p_Line_Adj_tbl(icount).list_line_type_code     := 'DIS';
              p_Line_Adj_tbl(icount).arithmetic_operator     := 'AMT';
              p_Line_Adj_tbl(icount).updated_flag          := 'Y';
              p_Line_Adj_tbl(icount).update_allowed          := 'Y';
              p_Line_Adj_tbl(icount).applied_flag          := 'Y';
              p_Line_Adj_tbl(icount).automatic_flag          := 'N';
              p_Line_Adj_tbl(icount).OPERAND               := 10;
         end loop;
         oe_msg_pub.initialize;
         oe_order_pub.process_order
              ( p_api_version_number =>      p_api_version_number
              , p_init_msg_list =>      FND_API.G_FALSE
              , p_return_values =>      FND_API.G_FALSE
              , p_action_commit =>      FND_API.G_FALSE
              , x_return_status =>      x_return_status
              , x_msg_count =>      x_msg_count
              , x_msg_data =>      x_msg_data
              , p_header_rec =>     p_header_rec
              , p_old_header_rec =>     p_old_header_rec
              , p_header_val_rec =>     p_header_val_rec
              , p_old_header_val_rec =>     p_old_header_val_rec
              , p_Header_Adj_tbl =>     p_Header_Adj_tbl
              , p_old_Header_Adj_tbl =>     p_old_Header_Adj_tbl
              , p_Header_Adj_val_tbl =>     p_Header_Adj_val_tbl
              , p_old_Header_Adj_val_tbl =>     p_old_Header_Adj_val_tbl
              , p_Header_price_Att_tbl =>     p_Header_price_Att_tbl
              , p_old_Header_Price_Att_tbl =>     p_old_Header_Price_Att_tbl
              , p_Header_Adj_Att_tbl =>     p_Header_Adj_Att_tbl
              , p_old_Header_Adj_Att_tbl =>      p_old_Header_Adj_Att_tbl
              , p_Header_Adj_Assoc_tbl =>     p_Header_Adj_Assoc_tbl
              , p_old_Header_Adj_Assoc_tbl =>      p_old_Header_Adj_Assoc_tbl
              , p_Header_Scredit_tbl =>     p_Header_Scredit_tbl
              , p_old_Header_Scredit_tbl =>     p_old_Header_Scredit_tbl
              , p_Header_Scredit_val_tbl =>     p_Header_Scredit_val_tbl
              , p_old_Header_Scredit_val_tbl =>     p_old_Header_Scredit_val_tbl
              , p_line_tbl =>     p_line_tbl
              , p_old_line_tbl =>     p_old_line_tbl
              , p_line_val_tbl =>     p_line_val_tbl
              , p_old_line_val_tbl =>     p_old_line_val_tbl
              , p_Line_Adj_tbl =>     p_Line_Adj_tbl
              , p_old_Line_Adj_tbl =>     p_old_Line_Adj_tbl
              , p_Line_Adj_val_tbl =>     p_Line_Adj_val_tbl
              , p_old_Line_Adj_val_tbl =>     p_old_Line_Adj_val_tbl
              , p_Line_price_Att_tbl =>     p_Line_price_Att_tbl
              , p_old_Line_Price_Att_tbl =>     p_old_Line_Price_Att_tbl
              , p_Line_Adj_Att_tbl =>     p_Line_Adj_Att_tbl
              , p_old_Line_Adj_Att_tbl =>      p_old_Line_Adj_Att_tbl
              , p_Line_Adj_Assoc_tbl =>     p_Line_Adj_Assoc_tbl
              , p_old_Line_Adj_Assoc_tbl =>      p_old_Line_Adj_Assoc_tbl
              , p_Line_Scredit_tbl =>     p_Line_Scredit_tbl
              , p_old_Line_Scredit_tbl =>     p_old_Line_Scredit_tbl
              , p_Line_Scredit_val_tbl =>     p_Line_Scredit_val_tbl
              , p_old_Line_Scredit_val_tbl =>     p_old_Line_Scredit_val_tbl
              , p_Lot_Serial_tbl =>     p_Lot_Serial_tbl
              , p_old_Lot_Serial_tbl =>     p_old_Lot_Serial_tbl
              , p_Lot_Serial_val_tbl =>     p_Lot_Serial_val_tbl
              , p_old_Lot_Serial_val_tbl =>     p_old_Lot_Serial_val_tbl
              , p_action_request_tbl =>     p_action_request_tbl
              , x_header_rec =>      x_header_rec
              , x_header_val_rec =>      x_header_val_rec
              , x_Header_Adj_tbl =>      x_Header_Adj_tbl
              , x_Header_Adj_val_tbl =>      x_Header_Adj_val_tbl
              , x_Header_price_Att_tbl =>      x_Header_price_Att_tbl
              , x_Header_Adj_Att_tbl =>      x_Header_Adj_Att_tbl
              , x_Header_Adj_Assoc_tbl =>      x_Header_Adj_Assoc_tbl
              , x_Header_Scredit_tbl =>      x_Header_Scredit_tbl
              , x_Header_Scredit_val_tbl =>      x_Header_Scredit_val_tbl
              , x_line_tbl =>      x_line_tbl
              , x_line_val_tbl =>      x_line_val_tbl
              , x_Line_Adj_tbl =>      x_Line_Adj_tbl
              , x_Line_Adj_val_tbl =>      x_Line_Adj_val_tbl
              , x_Line_price_Att_tbl =>      x_Line_price_Att_tbl
              , x_Line_Adj_Att_tbl =>      x_Line_Adj_Att_tbl
              , x_Line_Adj_Assoc_tbl =>      x_Line_Adj_Assoc_tbl
              , x_Line_Scredit_tbl =>      x_Line_Scredit_tbl
              , x_Line_Scredit_val_tbl =>      x_Line_Scredit_val_tbl
              , x_Lot_Serial_tbl =>      x_Lot_Serial_tbl
              , x_Lot_Serial_val_tbl =>      x_Lot_Serial_val_tbl
              , x_action_request_tbl     =>      x_action_request_tbl
         IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
              COMMIT;
         dbms_output.put_line('Return Status - '|| SUBSTR (x_return_status,1,255));
         dbms_output.put_line('------------------------------------');
         dbms_output.put_line('Order Number ==== '|| x_header_rec.order_number);
         dbms_output.put_line('------------------------------------');
              arg_out_x_return_status := x_return_status;
              arg_out_order_number          := x_header_rec.order_number;
              arg_out_header_id          := p_header_rec.header_id;
              arg_out_flow_status_code     := p_header_rec.flow_status_code;
         ELSE
              dbms_output.put_line('Return Status = '|| SUBSTR (x_return_status,1,255));
              dbms_output.put_line('Msg Count = '|| TO_CHAR(x_msg_count));
              dbms_output.put_line('Msg Data = '|| SUBSTR (x_msg_data,1,255));
              IF x_msg_count >1 THEN
                   FOR I IN 1..x_msg_count LOOP
                        Oe_Msg_Pub.get(
                             p_msg_index           => i
                             ,p_encoded           => Fnd_Api.G_FALSE
                             ,p_data           => v_msg_data
                             ,p_msg_index_out      => v_msg_index_out
                        DBMS_OUTPUT.PUT_LINE('v_msg_index_out '|| v_msg_index_out);
                        DBMS_OUTPUT.PUT_LINE('v_msg_data '|| v_msg_data);
                   END LOOP;
              END IF;
         END IF;
    END;
    /

  • BPEL process failed to deploy(Run time error)

    1. I have a BPEL process polling for a table on AS/400, then writes the entries into
    oracle table. compiles fine in Jdeveloper.
    2. when I tried to deploy the BPEL process, it failed during the intiation time. below is my oc4j-ra.xml, application.xml, domain.log information.
    FYI, I get the same error against the SQL server. Works fine against the oracle table.
    oc4j-ra.xml entires:
    ==============
    <?xml version="1.0"?>
    <oc4j-connector-factories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.oracle.com/technology/oracleas/schema/oc4j-connector-factories-10_0.xsd" schema-major-version="10" schema-minor-version="0" >
    <imported-shared-libraries>
    <import-shared-library name="oracle.bpel.common"/>
    <import-shared-library name="oc4j.internal"/>
    <import-shared-library name="oracle.xml"/>
    <import-shared-library name="oracle.sqlj"/>
    <import-shared-library name="oracle.toplink"/>
    <import-shared-library name="oracle.jdbc"/>
    </imported-shared-libraries>
         <connector-factory location="eis/DB/DBConnection1" connector-name="Database Adapter">
              <config-property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
              <config-property name="connectionString" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
              <config-property name="userName" value="scott"/>
              <config-property name="password" value="tiger"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.Oracle9Platform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/SampleOracle9Connection" connector-name="Database Adapter">
              <config-property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
              <config-property name="connectionString" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
              <config-property name="userName" value="scott"/>
              <config-property name="password" value="tiger"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.Oracle9Platform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/davinci" connector-name="Database Adapter">
              <config-property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
              <config-property name="connectionString" value="jdbc:oracle:thin:@davinci:1529:e1test"/>
              <config-property name="userName" value="jdesqldev"/>
              <config-property name="password" value="eaieai"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.Oracle 9Platform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/zeus" connector-name="Database Adapter">
              <config-property name="driverClassName" value="com.ibm.as400.access.AS400JDBCDriver"/>
              <config-property name="connectionString" value="jdbc:as400://zeus/;naming=sql;translate binary=true;prompt=false"/>
              <config-property name="userName" value="smuppall"/>
              <config-property name="password" value="sidhu18"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.DB2Platform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/PB0SQL00" connector-name="Database Adapter">
              <config-property name="driverClassName" value="net.sourceforge.jtds.jdbc.Driver"/>
              <config-property name="connectionString" value="jdbc:jtds:sqlserver://PB0SQL00:1433/FIT"/>
              <config-property name="userName" value="bpel"/>
              <config-property name="password" value="bpel"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.SQLServerPlatform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/SampleSQLServerConnection" connector-name="Database Adapter">
              <config-property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
              <config-property name="connectionString" value="jdbc:microsoft:sqlserver://localhost\\sql2000:1433;SelectMethod=cursor;databasename=NAME"/>
              <config-property name="userName" value="NAME"/>
              <config-property name="password" value="password"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.SQLServerPlatform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/SampleSybaseConnection" connector-name="Database Adapter">
              <config-property name="driverClassName" value="com.sybase.jdbc2.jdbc.SybDriver"/>
              <config-property name="connectionString" value="jdbc:sybase:Tds:localhost:5001/NAME"/>
              <config-property name="userName" value="NAME"/>
              <config-property name="password" value="password"/>
              <config-property name="minConnections" value="5"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="1"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.SybasePlatform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="true"/>
         </connector-factory>
         <connector-factory location="eis/DB/BPELSamples" connector-name="Database Adapter">
              <config-property name="driverClassName" value="oracle.lite.poljdbc.POLJDBCDriver"/>
              <config-property name="connectionString" value="jdbc:polite4@localhost:100:orabpel"/>
              <config-property name="userName" value="system"/>
              <config-property name="password" value="any"/>
              <config-property name="minConnections" value="1"/>
              <config-property name="maxConnections" value="5"/>
              <config-property name="minReadConnections" value="1"/>
              <config-property name="maxReadConnections" value="5"/>
              <config-property name="usesExternalConnectionPooling" value="false"/>
              <config-property name="dataSourceName" value=""/>
              <config-property name="usesExternalTransactionController" value="false"/>
              <config-property name="platformClassName" value="oracle.toplink.internal.databaseaccess.OraclePlatform"/>
              <config-property name="usesNativeSequencing" value="true"/>
              <config-property name="sequencePreallocationSize" value="50"/>
              <config-property name="tableQualifier" value=""/>
              <config-property name="defaultNChar" value="false"/>
              <config-property name="usesBatchWriting" value="false"/>
         </connector-factory>
    </oc4j-connector-factories>
    ================================================
    Application.xml entires:
    =================
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- The global application config that is the parent of all the other
    applications in this server.
    -->
    <orion-application autocreate-tables="true" default-data-source="jdbc/OracleDS" schema-major-version="10" schema-minor-version="0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-application-10_0.xsd">
    <web-module id="defaultWebApp" path="../../home/default-web-app"/>
    <web-module id="jmsrouter_web" path="../../home/applications/jmsrouter.war"/>
    <ejb-module id="jmsrouter_ejb" path="../../home/applications/jmsrouter-ejb.jar"/>
    <connectors path="./oc4j-connectors.xml"/>
    <persistence path="../persistence"/>
    <!-- Scheduler supporting classes -->
    <library path="../../home/lib/scheduler.jar"/>
    <library path="/opt/gorebpeldev/gorejars/jt400.jar"/>
    <library path="/opt/gorebpeldev/gorejars/jtds-1.2.jar"/>
    <jazn provider="XML"/>
    <log>
    <file path="../log/global-application.log"/>
    <!-- Uncomment this if you want to use ODL logging capabilities
    <odl path="../log/global-application/" max-file-size="1000"
    max-directory-size="10000"/>
    -->
    </log>
    <data-sources path="data-sources.xml"/>
    <!-- Comment this if you don't want to access OracleAS JMS via
    the JCA framework
    -->
    <resource-provider class="com.evermind.server.jms.Oc4jResourceProvider" name="oc4jjms">
    <description>oc4j-jms loop back resource provider</description>
    <property name="dummy" value="dummy"/>
    </resource-provider>
    <imported-shared-libraries>
    <import-shared-library name="adf.oracle.domain"/>
    </imported-shared-libraries>
    </orion-application>
    ========================================================
    domain.log:
    ========
    <2006-08-28 16:15:19,260> <INFO> <default.collaxa.cube.compiler> validating "/opt/soaoracle/product/10.1.3.1/OracleAS_2/bpel/domains/default/tmp/.bpel_F0005Ld_1.0_c7d70ebf1cceac02b6cd76b3053b2de6.tmp/F0005Ld.bpel" ...
    <2006-08-28 16:15:26,229> <INFO> <default.collaxa.cube.engine.deployment> <CubeProcessFactory::generateProcessClass>
    Process "F0005Ld" (revision "1.0") successfully compiled.
    <2006-08-28 16:15:27,170> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Loading JCAActivationAgent for {portType=pollfile_ptt}
    <2006-08-28 16:15:27,177> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Locating Adapter Framework instance: OraBPEL
    <2006-08-28 16:15:27,226> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Instantiating inbound part of Adapter Framework instance: OraBPEL
    <2006-08-28 16:15:27,231> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Done loading JCAActivationAgent for processId='bpel://localhost/default/F0005Ld~1.0/
    <2006-08-28 16:15:27,232> <INFO> <default.collaxa.cube.engine.deployment> Process "F0005Ld" (revision "1.0") successfully loaded.
    <2006-08-28 16:15:40,776> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::init - Initializing the JCA activation agent, processId='bpel://localhost/default/F0005Ld~1.0/
    <2006-08-28 16:15:40,777> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::initiateInboundJcaEndpoint - Creating and initializing inbound JCA endpoint for:
    process='bpel://localhost/default/F0005Ld~1.0/'
    domain='default'
    WSDL location='pollfile.wsdl'
    portType='pollfile_ptt'
    operation='receive'
    activation properties={portType=pollfile_ptt}
    <2006-08-28 16:15:40,982> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - endpointActivation for portType=pollfile_ptt, operation=receive
    <2006-08-28 16:15:41,007> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Creating new instance of Resource Adapter oracle.tip.adapter.db.DBResourceAdapter
    <2006-08-28 16:15:41,025> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - starting Resource Adapter oracle.tip.adapter.db.DBResourceAdapter
    <2006-08-28 16:15:41,418> <INFO> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBResourceAdapter endpointActivation> Activating: oracle.tip.adapter.db.DBActivationSpec@149b5e6
    <2006-08-28 16:15:43,466> <ERROR> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBManagedConnectionFactory acquireSession> unable to build the TopLink Session
    <2006-08-28 16:15:43,493> <ERROR> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Error while performing endpoint Activation: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
    [Caused by: No suitable driver]
    <2006-08-28 16:15:43,509> <ERROR> <default.collaxa.cube.engine> <BaseCubeProcess::notifyActivationAgents>
    java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.collaxa.cube.engine.core.BaseCubeProcess.notifyActivationObservers(BaseCubeProcess.java:397)
         at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:342)
         at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1415)
         at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1374)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:790)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:639)
         at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:452)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:618)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DomainManagerBean_RemoteProxy_4bin6i8.deploySuitcase(Unknown Source)
         at com.oracle.bpel.client.BPELDomainHandle.deploySuitcase(BPELDomainHandle.java:318)
         at com.oracle.bpel.client.BPELDomainHandle.deployProcess(BPELDomainHandle.java:340)
         at deployHttpClientProcess.jspService(_deployHttpClientProcess.java:376)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: ORABPEL-12517
    AdapterFrameworkImpl::endpointActivation - Endpoint Activation Error.
    The Resource Adapter Database Adapter was unable to activate the endpoint oracle.tip.adapter.db.DBActivationSpec:{MaxRaiseSize=1, MarkReadFieldName=DRPID, UseBatchDestroy=false, QueryName=pollfile, MarkReadValue=BPLREAD, ReturnSingleResultSet=false, DescriptorName=pollfile.F0005, NumberOfThreads=1, MappingsMetaDataURL=pollfile_toplink_mappings.xml, PollingStrategyName=LogicalDeletePollingStrategy, PollingInterval=5, SequencingFieldName=DRSY, MaxTransactionSize=unlimited} due to the following reason: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
    [Caused by: No suitable driver]
    Please correct the reported issue and redeploy the BPEL process.
         at oracle.tip.adapter.fw.jca.AdapterFrameworkImpl.endpointActivation(AdapterFrameworkImpl.java:566)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.performEndpointActivation(JCAActivationAgent.java:960)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.activateInboundJcaEndpoint(JCAActivationAgent.java:943)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.initiateInboundJcaEndpoint(JCAActivationAgent.java:851)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.init(JCAActivationAgent.java:456)
         at com.collaxa.cube.engine.core.BaseCubeProcess$ActivationObserver.init(BaseCubeProcess.java:860)
         ... 56 more
    Caused by: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
         at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:364)
         at oracle.tip.adapter.db.exceptions.DBResourceException.couldNotCreateTopLinkSessionException(DBResourceException.java:169)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.acquireSession(DBManagedConnectionFactory.java:596)
         at oracle.tip.adapter.db.transaction.DBTransaction.getSession(DBTransaction.java:351)
         at oracle.tip.adapter.db.DBConnection.getSession(DBConnection.java:230)
         at oracle.tip.adapter.db.InboundWork.<init>(InboundWork.java:177)
         at oracle.tip.adapter.db.DBEndpoint.<init>(DBEndpoint.java:89)
         at oracle.tip.adapter.db.DBResourceAdapter.endpointActivation(DBResourceAdapter.java:155)
         at oracle.tip.adapter.fw.jca.AdapterFrameworkImpl.endpointActivation(AdapterFrameworkImpl.java:541)
         ... 61 more
    Caused by: Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0
         at oracle.toplink.exceptions.DatabaseException.sqlException(DatabaseException.java:276)
         at oracle.toplink.sessions.DefaultConnector.connect(DefaultConnector.java:64)
         at oracle.toplink.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:147)
         at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:197)
         at oracle.toplink.internal.databaseaccess.DatabaseAccessor.connect(DatabaseAccessor.java:220)
         at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:273)
         at oracle.toplink.threetier.ConnectionPool.buildConnection(ConnectionPool.java:82)
         at oracle.toplink.threetier.ConnectionPool.startUp(ConnectionPool.java:304)
         at oracle.toplink.threetier.ServerSession.connect(ServerSession.java:435)
         at oracle.toplink.publicinterface.DatabaseSession.login(DatabaseSession.java:503)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.createServerSession(DBManagedConnectionFactory.java:854)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.acquireSession(DBManagedConnectionFactory.java:371)
         ... 67 more
    Caused by: java.sql.SQLException: No suitable driver
         at java.sql.DriverManager.getConnection(DriverManager.java:545)
         at java.sql.DriverManager.getConnection(DriverManager.java:140)
         at oracle.toplink.sessions.DefaultConnector.connect(DefaultConnector.java:62)
         ... 77 more
    <2006-08-28 16:15:44,033> <ERROR> <default.collaxa.cube.engine.deployment> <DeploymentManager::deploySuitcase>
    ORABPEL-09903
    Could not initialize activation agent.
    An error occured while initializing an activation agent for process "F0005Ld", revision "1.0".
    Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
    oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException
         at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:349)
         at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1415)
         at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1374)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:790)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:639)
         at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:452)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:618)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DomainManagerBean_RemoteProxy_4bin6i8.deploySuitcase(Unknown Source)
         at com.oracle.bpel.client.BPELDomainHandle.deploySuitcase(BPELDomainHandle.java:318)
         at com.oracle.bpel.client.BPELDomainHandle.deployProcess(BPELDomainHandle.java:340)
         at deployHttpClientProcess.jspService(_deployHttpClientProcess.java:376)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    <2006-08-28 16:15:44,314> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::uninit Shutting down the JCA activation agent, processId='bpel://localhost/default/F0005Ld~1.0/', activation properties={portType=pollfile_ptt}
    <2006-08-28 16:15:44,445> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "domain manager": Could not initialize activation agent.
    An error occured while initializing an activation agent for process "F0005Ld", revision "1.0".
    Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
    oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException
    ORABPEL-09903
    Could not initialize activation agent.
    An error occured while initializing an activation agent for process "F0005Ld", revision "1.0".
    Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
    oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException
         at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:349)
         at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1415)
         at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1374)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:790)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:639)
         at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:452)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:618)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DomainManagerBean_RemoteProxy_4bin6i8.deploySuitcase(Unknown Source)
         at com.oracle.bpel.client.BPELDomainHandle.deploySuitcase(BPELDomainHandle.java:318)
         at com.oracle.bpel.client.BPELDomainHandle.deployProcess(BPELDomainHandle.java:340)
         at deployHttpClientProcess.jspService(_deployHttpClientProcess.java:376)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    <2006-08-28 16:15:44,913> <INFO> <default.collaxa.cube.compiler> validating "/opt/soaoracle/product/10.1.3.1/OracleAS_2/bpel/domains/default/tmp/.bpel_F0005Ld_1.0_c7d70ebf1cceac02b6cd76b3053b2de6.tmp/F0005Ld.bpel" ...
    <2006-08-28 16:15:51,797> <INFO> <default.collaxa.cube.compiler> validating "/opt/soaoracle/product/10.1.3.1/OracleAS_2/bpel/domains/default/tmp/.bpel_RateBasedCompletion_1.0_f09e27255cd89944f63ee47cd948c862.tmp/RateBasedCompletion.bpel" ...
    <2006-08-28 16:15:52,284> <INFO> <default.collaxa.cube.engine.deployment> <CubeProcessFactory::generateProcessClass>
    Process "F0005Ld" (revision "1.0") successfully compiled.
    <2006-08-28 16:15:52,461> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Loading JCAActivationAgent for {portType=pollfile_ptt}
    <2006-08-28 16:15:52,461> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Locating Adapter Framework instance: OraBPEL
    <2006-08-28 16:15:52,464> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Done loading JCAActivationAgent for processId='bpel://localhost/default/F0005Ld~1.0/
    <2006-08-28 16:15:52,465> <INFO> <default.collaxa.cube.engine.deployment> Process "F0005Ld" (revision "1.0") successfully loaded.
    <2006-08-28 16:15:59,675> <INFO> <default.collaxa.cube.engine.deployment> <CubeProcessFactory::generateProcessClass>
    Process "RateBasedCompletion" (revision "1.0") successfully compiled.
    <2006-08-28 16:15:59,978> <INFO> <default.collaxa.cube.engine.deployment> Process "RateBasedCompletion" (revision "1.0") successfully loaded.
    <2006-08-28 16:16:04,356> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::init - Initializing the JCA activation agent, processId='bpel://localhost/default/F0005Ld~1.0/
    <2006-08-28 16:16:04,357> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::initiateInboundJcaEndpoint - Creating and initializing inbound JCA endpoint for:
    process='bpel://localhost/default/F0005Ld~1.0/'
    domain='default'
    WSDL location='pollfile.wsdl'
    portType='pollfile_ptt'
    operation='receive'
    activation properties={portType=pollfile_ptt}
    <2006-08-28 16:16:04,358> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - endpointActivation for portType=pollfile_ptt, operation=receive
    <2006-08-28 16:16:04,463> <INFO> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBResourceAdapter endpointActivation> Activating: oracle.tip.adapter.db.DBActivationSpec@1ecd501
    <2006-08-28 16:16:04,507> <ERROR> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBManagedConnectionFactory acquireSession> unable to build the TopLink Session
    <2006-08-28 16:16:04,508> <ERROR> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Error while performing endpoint Activation: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
    [Caused by: No suitable driver]
    <2006-08-28 16:16:04,509> <ERROR> <default.collaxa.cube.engine> <BaseCubeProcess::notifyActivationAgents>
    java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.collaxa.cube.engine.core.BaseCubeProcess.notifyActivationObservers(BaseCubeProcess.java:397)
         at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:342)
         at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1415)
         at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1374)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:790)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:639)
         at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:452)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:618)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DomainManagerBean_RemoteProxy_4bin6i8.deploySuitcase(Unknown Source)
         at com.oracle.bpel.client.BPELDomainHandle.deploySuitcase(BPELDomainHandle.java:318)
         at com.oracle.bpel.client.BPELDomainHandle.deployProcess(BPELDomainHandle.java:340)
         at deployHttpClientProcess.jspService(_deployHttpClientProcess.java:376)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: ORABPEL-12517
    AdapterFrameworkImpl::endpointActivation - Endpoint Activation Error.
    The Resource Adapter Database Adapter was unable to activate the endpoint oracle.tip.adapter.db.DBActivationSpec:{MaxRaiseSize=1, MarkReadFieldName=DRPID, UseBatchDestroy=false, QueryName=pollfile, MarkReadValue=BPLREAD, ReturnSingleResultSet=false, DescriptorName=pollfile.F0005, NumberOfThreads=1, MappingsMetaDataURL=pollfile_toplink_mappings.xml, PollingStrategyName=LogicalDeletePollingStrategy, PollingInterval=5, SequencingFieldName=DRSY, MaxTransactionSize=unlimited} due to the following reason: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
    [Caused by: No suitable driver]
    Please correct the reported issue and redeploy the BPEL process.
         at oracle.tip.adapter.fw.jca.AdapterFrameworkImpl.endpointActivation(AdapterFrameworkImpl.java:566)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.performEndpointActivation(JCAActivationAgent.java:960)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.activateInboundJcaEndpoint(JCAActivationAgent.java:943)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.initiateInboundJcaEndpoint(JCAActivationAgent.java:851)
         at oracle.tip.adapter.fw.agent.jca.JCAActivationAgent.init(JCAActivationAgent.java:456)
         at com.collaxa.cube.engine.core.BaseCubeProcess$ActivationObserver.init(BaseCubeProcess.java:860)
         ... 56 more
    Caused by: ORABPEL-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore. [Caused by: No suitable driver]
    See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml) and restart the server. Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0.
         at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:364)
         at oracle.tip.adapter.db.exceptions.DBResourceException.couldNotCreateTopLinkSessionException(DBResourceException.java:169)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.acquireSession(DBManagedConnectionFactory.java:596)
         at oracle.tip.adapter.db.transaction.DBTransaction.getSession(DBTransaction.java:351)
         at oracle.tip.adapter.db.DBConnection.getSession(DBConnection.java:230)
         at oracle.tip.adapter.db.InboundWork.<init>(InboundWork.java:177)
         at oracle.tip.adapter.db.DBEndpoint.<init>(DBEndpoint.java:89)
         at oracle.tip.adapter.db.DBResourceAdapter.endpointActivation(DBResourceAdapter.java:155)
         at oracle.tip.adapter.fw.jca.AdapterFrameworkImpl.endpointActivation(AdapterFrameworkImpl.java:541)
         ... 61 more
    Caused by: Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 060730)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No suitable driverError Code: 0
         at oracle.toplink.exceptions.DatabaseException.sqlException(DatabaseException.java:276)
         at oracle.toplink.sessions.DefaultConnector.connect(DefaultConnector.java:64)
         at oracle.toplink.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:147)
         at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:197)
         at oracle.toplink.internal.databaseaccess.DatabaseAccessor.connect(DatabaseAccessor.java:220)
         at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:273)
         at oracle.toplink.threetier.ConnectionPool.buildConnection(ConnectionPool.java:82)
         at oracle.toplink.threetier.ConnectionPool.startUp(ConnectionPool.java:304)
         at oracle.toplink.threetier.ServerSession.connect(ServerSession.java:435)
         at oracle.toplink.publicinterface.DatabaseSession.login(DatabaseSession.java:503)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.createServerSession(DBManagedConnectionFactory.java:854)
         at oracle.tip.adapter.db.DBManagedConnectionFactory.acquireSession(DBManagedConnectionFactory.java:371)
         ... 67 more
    Caused by: java.sql.SQLException: No suitable driver
         at java.sql.DriverManager.getConnection(DriverManager.java:545)
         at java.sql.DriverManager.getConnection(DriverManager.java:140)
         at oracle.toplink.sessions.DefaultConnector.connect(DefaultConnector.java:62)
         ... 77 more
    <2006-08-28 16:16:04,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::uninit Shutting down the JCA activation agent, processId='bpel://localhost/default/F0005Ld~1.0/', activation properties={portType=pollfile_ptt}
    <2006-08-28 16:16:06,978> <ERROR> <default.collaxa.cube.engine.deployment> <DeploymentManager::deploySuitcase>
    ORABPEL-09903
    Could not initialize activation agent.
    An error occured while initializing an activation agent for process "F0005Ld", revision "1.0".
    Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
    oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException
         at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:349)
         at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1415)
         at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1374)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:790)
         at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:639)
         at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:452)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:618)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DomainManagerBean_RemoteProxy_4bin6i8.deploySuitcase(Unknown Source)
         at com.oracle.bpel.client.BPELDomainHandle.deploySuitcase(BPELDomainHandle.java:318)
         at com.oracle.bpel.client.BPELDomainHandle.deployProcess(BPELDomainHandle.java:340)
         at deployHttpClientProcess.jspService(_deployHttpClientProcess.java:376)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.Serv

    Are you calling any java?
    Are your versions of JDev and SOA Suite in sync.
    cheers
    James

  • BPEL Process hangs in in-flight status

    Hi,
    I am facing several issues with a particular BPEL process which deals with an SQL Server database.
    To brief about what my BPEL Process does, It gets a list of EMPids from a master table, does a WHILE loop on each one of the id, now in a single scope <scope start> fetches the employee details from TABLE1 AND TABLE2 (PARENT and CHILD Realtionship configured in Databse adapter), publishes on to JMS and updates the status flag in TABLE1 <scope end> and exits from the loop.
    Here I've taken enough care that all the variables are declared as local and did all within my knowledge. However I keep facing the following issues.
    1. Deadlock issue - BPEL Process for large paylods starts throwing deadlock issue ( [Caused by: Transaction (Process ID 271) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.]).
    2. By repeated runs of this BPEL Process, server crashes with "500 Internal Server error" and re-starts on its own. However my process stands still in hug state.
    Please suggest.
    Thanks in Advances,
    Phani

    James, Thanks for the response. Actually I could use the FileAdpater to poll the FTP server which is our originl intention of having this BPEL process.
    But we need to get the list of all the files that are in FTP server as a response from FTPAdapter which I am not sure how can I implement it using the FTPAdapter so we have written a asynh webservice to do this.
    The service will checks if any files exists in ftp server and process them if exists and deletes them once the files are processed.
    Is there a way to do this using the FTPAdapter rather than calling the webservice ?

  • PeopleSoft Invoking BPEL process gets HTML returned and not XML

    I am executing a SyncRequestXmlDoc in PeopleCode to call a BPEL process.
    In an earlier demo environment this works fine and when I interrogate the log I get a correct Request and Response message :
    I have now installed SOA Suite and I am deploying to that and I now have a problem with the Call.
    It works.... but does not execute the BPEL Process.
    Investigation has found that the PeopleTools Synchronous Message log shows the failing call as returning the HTML form of the BPEL process instead of the XML.
    Detailed below are the request and response logs for the working process and then the failing process.
    The question is :
    Is the BPEL process launched by SOA suite being returned in HTML form because of a setting or configuration issue or .... ?
    I can run the failing process from the BPEL Console without any problems ?
    Working Call Logs
    Request message :
    <?xml version="1.0"?>
    <SOAP-ENV:Envelope xmlns:client="http://xmlns.oracle.com/POSyncComp" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
    <client:POSyncCompProcessRequest>
    <client:Customer>test2</client:Customer>
    <client:Item>1</client:Item>
    <client:Quantity>1</client:Quantity>
    <client:DeliveryDate>2007-08-02</client:DeliveryDate>
    </client:POSyncCompProcessRequest>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    and a correct response :
    <?xml version="1.0"?>
    <soapenv:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <POSyncCompProcessResponse xmlns="http://xmlns.oracle.com/POSyncComp">
    <result/>
    </POSyncCompProcessResponse>
    </soapenv:Body>
    </soapenv:Envelope>
    However with a new demo environment where I am using an SOA suite I get the response returned in HTML not XML
    Failing call logs shows html form in response
    Request Message :<?xml version="1.0"?>
    <SOAP-ENV:Envelope xmlns:client="http://xmlns.oracle.com/POSyncCompInt" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
    <client:POSyncCompIntProcessRequest>
    <client:Customer>test2</client:Customer>
    <client:Item>1</client:Item>
    <client:Quantity>1</client:Quantity>
    <client:DeliveryDate>2007-08-02</client:DeliveryDate>
    </client:POSyncCompIntProcessRequest>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Response Message :
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html><head><title> Web Service</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <style type="text/css" media="screen">A:link { font-family: Arial, Helvetica, sans-serif; color:#663300; background-color : #FFFFFF;}
    A:active { font-family: Arial, Helvetica, sans-serif; color:#ff6600; background-color : #FFFFFF;}
    A:visited { font-family: Arial, Helvetica, sans-serif; color:#996633; background-color : #FFFFFF;}
    A.navigation:link{font-family: Arial, Helvetica, sans-serif;font-size:65%;color:#996633;background-color : #FFFFFF;}
    A.navigation:active{ font-family: Arial, Helvetica, sans-serif; font-size:65%; color:#996633; background-color : #FFFFFF;}
    A.navigation:visited{ font-family: Arial, Helvetica, sans-serif; font-size:65%; color:#996633; background-color : #FFFFFF;}
    BODY, P, LI, UL, OL { font-family: Arial, Helvetica, sans-serif; font-size:12px; color:#000000; background-color : #FFFFFF;}
    H1 { font-family: Arial, Helvetica, sans-serif; font-size:150%; color:#336699; background-color : #FFFFFF; border : solid #CCCC99; border-width : 0px 0px 2px 0px; width : 100%;}
    H2 {font-family: Arial, Helvetica, sans-serif; font-size:120%; color:#336699; background-color : #FFFFFF; border : solid #cccc99; border-width : 0px 0px 2px 0px; width : 100%;}
    H3 {font-family: Arial, Helvetica, sans-serif;font-size:110%;color:#336699;background-color : #FFFFFF;width : 100%;}
    H4 {font-family: Arial, Helvetica, sans-serif;font-size:10pt;color:#000000;background-color : #FFFFFF;font-weight: bold;width : 100%;}
    P.indent {text-indent: 9%;}
    .testpage-message-body-editor { margin: 10 0 10px 10px; font-size: 12px; }
    .testpage-complex-editor { margin: 10 0 0 10px; font-size: 12px;}
    .testpage-complex-editor-body { margin: 10 0 0 10px; }
    .testpage-complex-editor-part {     margin: 10 10 0 10px; }
    .testpage-header-editor { margin: 10 0 30 10px; font-size: 12px; }
    .testpage-header-editor-part { margin: 0 0 10 0px; font-size: 12px; }
    .testpage-simpletype-type-tag { color: rgb(128, 0, 128); padding: 0px;     font-size: 12px; margin: 0 2 0 10px; }
    .testpage-simpletype-tag {color: blue; font-size: 12px; margin: 0 6 0 2px; text-align:right; }
    .testpage-complextype-tag {color: black; font-size: 12px; font-weight: bold;}
    .testpage-input {font-size: 12px; text-align:left; }
    .testpage-input-box {border: 1px solid dimgray; font-size: 12px; text-align:left;}
    .testpage-dropdown { font-size: 12px;}
    .testpage-dropdown-box {font-size: 12px;}
    .testpage-arraytype-tag {color: black; font-size: 12px; font-weight: bold;}
    .testpage-array-element-tag { margin: 0 0 0 10px; }
    .testpage-array-element { margin : 10px; background-color: #FFFFFF; background-image: url("med_sub_BG.gif"); }
    .testpage-arraytype-adder { font-size: 12px; }
    .testpage-checkbox { height: 12px; width: 12px; margin: 2 2 3 0px; }
    table {border-spacing: 0;}
    td {padding: 1px 4px 1px 4px; width: 130px; }
    .testpage-invocation-textarea { margin: 10px 0 0 10px; font-size: 12px; border-top: solid #95b7cd 1px;
    border-left: solid #95b7cd 1px; border-bottom: solid #95b7cd 1px; border-right: solid #95b7cd 1px; }
    .testpage-invocation-button { margin: 10px 0 10px 150px; font-size: 12px;}
    .testpage-array-remove { background-image: url(http://etcintel01.uk.oracle.com:7777/orabpel/InternalCompany/POSyncCompInt/1.0?tp_delete_png);  background-repeat: no-repeat; clear: both; display: inline-block; }
    .testpage-array-add { background-image: url(http://etcintel01.uk.oracle.com:7777/orabpel/InternalCompany/POSyncCompInt/1.0?tp_add_png);  background-repeat: no-repeat; clear: both; display: block; position: relative; left: 1px}
    .xmlViewer {font-family: monospace; height: 300px; width: 95%; overflow: auto; position: relative; left:0px;}
    .xmlViewer2 {font-family: monospace; height: 85%; width: 95%; overflow: auto; position: relative; left:0px;}
    .xmlTag {color: #336699; background-color: transparent; font-weight: bold;}
    .xmlAttName {color: #990000; background-color: transparent}
    .xmlAttEqual {color: #006699; background-color: transparent}
    .xmlAttValue {color: #0033cc; background-color: transparent}
    .mode-select { margin: 0 0 0 10px;}
    .extras { margin: 10px 0 0 0px; font-size: 12px; }
    .expander-open {background-image: url(http://etcintel01.uk.oracle.com:7777/orabpel/InternalCompany/POSyncCompInt/1.0?tp_disclosure_expanded_png); background-repeat: no-repeat; background-position: center; display:inline-block;}
    .expander-closed { background-image: url(http://etcintel01.uk.oracle.com:7777/orabpel/InternalCompany/POSyncCompInt/1.0?tp_disclosure_collapsed_png); background-repeat: no-repeat; background-position: center; display:inline-block;}
    div.bar {width:85%; padding-left:15px; border-color: rgb(128,128,128);border-width: 0px 0px 1px 0px ; border-style:solid; line-height: 0}
    div.container {position:relative; border-width:1px; border:solid #95b7cd 2px; margin-top:20px;padding-top:20px}
    div.operation {position:absolute; top:-12px; left:40px; background-color:white}
    a .alt { visibility: hidden; position: relative; left: -4px; }
    </style>
    </head><body onLoad="javascript:buildEditor()">
    <h1>POSyncCompInt endpoint</h1>
    <p>For a formal definition, please review the Service Description.</p>
    <p>Download the JavaScript Stub (<i>BETA</i>) for POSyncCompIntPort and see its documentation.</p>
    <script type="text/javascript" src="http://etcintel01.uk.oracle.com:7777/orabpel/InternalCompany/POSyncCompInt/1.0?BPEL_OC4J_Servlettest.js"></script>
    <script type="text/javascript">
    // Copyright © 2003, 2006, Oracle. All rights reserved.
    function switchOperation(selection) {
    submit_to_self();
    function switchMode(newMode) {
    submit_to_self();
    function submit_to_self() {
    var f = document.forms['CreateMessage'];
    f.action = "/orabpel/InternalCompany/POSyncCompInt/1.0";
    f.submit();
    function toggleHttpParams(transBox) {
    var transportParams = document.getElementById("http-params");
    if (transBox.checked) {
    transportParams.style.display = "block";
    } else {
    transportParams.style.display = "none";
    function handleStressInfo( stressCheckBox ) {
    var initiateForm = document.forms['CreateMessage'];
    if( stressCheckBox.checked ) {
    // User is requesting stress test
    // change the address of the form
    initiateForm.action = "/orabpel/InternalCompany/POSyncCompInt/1.0?stressTest=";
    } else {
    // The user does not want a stress test
    // change the address of the form
    initiateForm.action = "/orabpel/InternalCompany/POSyncCompInt/1.0";
    function buildEditor() {
    var wsm_interceptors = [];
    wsm_interceptors[0] = "reliability";
    wsm_interceptors[1] = "security";
    var node = document.getElementById("editor");
    var editor = findEditors("process", wsm_interceptors);
    editor.build(node);
    syncFormRadioField('mode_html', true);
    syncFormRadioField('mode_xml', false);
    syncFormSelectField('operationName', 'process,,');
    var soapAction = document.getElementById("soapAction");
    soapAction.value = "process";
    var soapAction_cb = document.getElementById("soapAction_cb");
    soapAction_cb.checked = "true";
    </script>
    <h2>POSyncCompIntPort</h2>
    <form name="CreateMessage" action='/orabpel/InternalCompany/POSyncCompInt/1.0?invoke=' method="POST" onSubmit="javascript:return validateAllAtomicInputs(this);">
    <input type="hidden" name="contentType" value="text/xml" >
    <input type="hidden" name="portName" value="POSyncCompIntPort" >
    <input type="hidden" name="serviceName" value="POSyncCompInt" >
    <input type="hidden" name="serviceNamespace" value="http://xmlns.oracle.com/POSyncCompInt" >
    <div class="container">
    <div id="mode-select" class="operation">
    Operation
    : <span id="operationSelect">
    <select class="testpage-input-box" id="operationName" name="operationName"
    onchange="switchOperation( this.value ); return true;">
    <option value="process,," SELECTED>process</option></select>
    </span>
       <span style="align: right" class="testpage-edit-modes">
    <input id="mode_html" name="mode" type="radio" onclick="switchMode( this.value ); return true;"
    VALUE="html" Checked />
    HTML Form</span>
    <input id="mode_xml" name="mode" type="radio" onclick="if(!validateAllAtomicInputs(this.form)){ this.checked = false; document.getElementById('mode_html').checked = true; } else { switchMode( this.value ) }; return true;"
    VALUE="xml" />
    XML Source
    </div>
    <div id="editor"></div>
    </div>
    <div>
    <p><i>Note: XML source view contents will not be reflected in the HTML form view</i></p>
    </div>
    <div class="extras">
    <label>
    <span><a class="expander-closed" id="tp_http_transport" href="javascript:toggleExpand('http-params','tp_http_transport')"><span class="alt">---</span></a></span>
    <span>Show Transport Info</span>
    </label>
    <div id="http-params" class="extras" style="font-size:12px;padding-left:20px;display:none">
    <table><tr>
    <td class="testpage-input">HTTP Authentication
    </td><td class="testpage-input"><input type="checkbox" class="testpage-checkbox" name="transport-enablement" style="font-size:12px; margin-left:10px"> Enable
    </td>
    </tr><tr><td>
    <table><tr><td class="testpage-input">
    User Name</td><td><input class="testpage-input-box"
    type="text"
    name="form_user"/></td>
    </tr>
    <tr><td class="testpage-input">
    Password</td><td><input class="testpage-input-box"
    type="password"
    name="form_password"/>
    </td></tr>
    </table>
    </td></tr>
    </table>
    <div id="soap-action" class="extras">
    <label>
      SOAP Action  
    </label>
    <span id="testpage-soap-action" class="extras">
    <input class="testpage-input-box" type="text" id="soapAction" name="soapAction" size="35"/>
    </span>
    <span><input type="checkbox" class="testpage-checkbox" name="soapAction_cb" id="soapAction_cb"
    onclick="javascript:toggleDisabled(this, 'soapAction')" style="font-size:12px; margin-left:10px"/> Enable</span>
    </div>
    </div>
    </div>
    <div id="stress" class="extras">
    <div>
    <span><a class="expander-closed" id="tp_stress_info" href="javascript:toggleExpand('stressInfo','tp_stress_info')"><span class="alt">---</span></a></span>
    <span>Perform stress test</span>
    <span> <input type="checkbox" class="testpage-checkbox" name="stress" onclick="handleStressInfo( this )" style="font-size:12px; margin-left:10px"><span> Enable </span></span>
    <div id="stressInfo" style="font-size:12px;padding-left:20px;display:none">
    <table cellpadding="1" cellspacing="0" width="100%" summary="">
    <tr>
    <td width="300" class="testpage-input">
    Number of Concurrent Threads </td>
    <td class="testpage-input">
    <input type="text" name="stress_threadCount" value="10" size="4" />
    (threads) </td>
    </tr>
    <tr>
    <td class="testpage-input">
    Number of Loops </td>
    <td class="testpage-input">
    <input type="text" name="stress_loopCount" value="5" size="4" />
    (loops) </td>
    </tr>
    <tr>
    <td class="testpage-input">
    Delay </td>
    <td class="testpage-input">
    <input type="text" name="stress_delay" value="1000" size="4" />(milliseconds) </td>
    </tr>
    </table>
    </div>
    </div></div>
    <input type="hidden" name="reliability" value="true"/>
    <input type="hidden" name="security" value="true"/>
    <input align="right" name="invokeMessage" type="submit" value="Invoke" class="button"/><div id="validation_error_message"></div>
    </form>
    <h2> </h2>
    <p><font face="Arial" size="1">Copyright &copy; 2003, 2006, Oracle. All rights reserved.</font></p>
    </body></html>
    Is this a setting or configuration problem in my SOA suite install ?
    Needless to say the BPEL process does not execute.
    Can anyone help ?

    Hi Lonneke
    Thanks for responding....
    You are correct in seeing that the two services are different in name.
    However they are identical in function.
    I created the service POSyncComp in my earlier version of JDev and deployed it to my local OC4J.
    Which is launched by a PeopleSoft call using PeopleCode.
    I have now rewritten this service in my new JDev and called it POSyncCompInt and deployed to home in an SOA suite implementation.
    So whilst I test and before I roll the original service call out, I have both.
    I have duplicated the PeopleCode and tweaked the message call, so that for testing purposes, and before I drop the current working version I have both calls in my PeopleCode event.
    The original POSyncComp call still works, but the call to the 'new replacement' does not.
    Hence the log shows both calls.... with slightly different names.
    The strange thing is that the PeopleSoft LOG shows very similar code in the Request Message, but the response from the new call shows the HTML Form that I get if I run the second BPEL process from the SOA BPEL console.
    So it looks like it is addressing the URL correctly.... but it suggests that stand alone OC4J returns a different response to the SOA suite which I am using for the new version of the BPEL process.... Is this configuration ?
    It hints at the xsd file and the complex message type at entry to the BPEL process.
    I can run the new process from the SOA suite BPEL Console with no problems.
    I hope that clarifies your question about two different service names

  • BPEL process blue print not importable by JDeveloper

    Hi
    I have a troublesome BPEL process that is not being imported into JDeveloper. Others work fine and the closed loop process change management works great.
    However, this particular one is annoying.
    On selecting the process, JDeveloper downloads the required information. I click 'Next' and/or 'Finish' and it starts 'Creating Project'. That's all it does. Eventually it finishes and nothing has been added to the project.
    Has anyone seen this before, or know where a log may be of the process to debug it?
    Any help most appreciated.
    I am using 10.1.3.4 BPA Suite and 10.1.3.3 JDev
    Cheers
    Chris

    Aha
    I get the following exception occuring.
    ## download =C:\DOCUME~1\cbell\LOCALS~1\Temp\bpaserver_download20348.zip
    ## download =C:\DOCUME~1\cbell\LOCALS~1\Temp\bpaserver_download20349.zip
    java.io.IOException
    at oracle.ide.net.URLFileSystem.copy(URLFileSystem.java:297)
    at oracle.tip.tools.ide.common.bpeldesigner.util.Helper.copyFiles(Helper.java:130)
    at oracle.tip.tools.ide.pm.projectwizard.JDevProjectBuilder.createExistingBluePrintProject(JDevProjectBuilder.java:144)
    at oracle.tip.tools.ide.pm.projectwizard.JDevProjectBuilder.createIDEProject(JDevProjectBuilder.java:71)
    at oracle.tip.tools.ide.pm.projectwizard.BPELProjectWizard.handleFinish(BPELProjectWizard.java:57)
    at oracle.tip.tools.ide.common.graph.wizard.JWizard$1.run(JWizard.java:400)
    at java.lang.Thread.run(Thread.java:595)
    Think I may raise an SR.
    Cheers
    Chris

  • Sequential Instantiation of BPEL instances for a BPEL process

    Hi,
    We are using Oracle SOA 10.1.3.4 & AIA2.5. We have a situation where the instances of a particular bpel process have to be executed in sequence. Also, the new instance should NOT be instantiated unless the previous instance is completed.
    For example.. Lets say a SyncBPELReqABCS is invoking SyncBPELProvABCS via ESB. SyncBPELReqABCS is looping and spawning multiple instances of SyncBPELProvABCS in a certain sequential order in Asynchronous Fire-and-Forget model. Lets say bpel-instance#1, bpel-instance#2 and bpel-instance#3 are instances of SyncBPELProvABCS process. Even though SyncBPELReqABCS invokes (spawns) SyncBPELProvABCS in a fire and forget model, the bpel-instance#2 should not begin unless bpel-instance#1 is completed and bpel-instance#3 shuld not begin unless bpel-instance#2 is completed. This is because there is a dependancy between instacnes of SyncBPELProvABCS process.
    Can this be achieved in Oracle SOA?? Can we restrict the instacnes of SyncBPELProvABCS to be created in this manner?
    This is similar to "incompatability" of concurrent programs in ORACLE EBusiness Suite where one concurrent program waits till another concurrent program completes.
    Please let me know if I am not clear. Appreciate an immediate help!
    Thanks,

    Hello,
    Now that I look back at this tread, I can see that the questions I was asking and those of the original poster were somewhat different.
    But they both fall under the heading of "Sequential Instantiation of BPEL instances for a BPEL process", and so I thought I would post some findings we've come across regarding that topic here.
    There were a couple steps that helped us achieve the behavior we were looking for, and the were...
    1) Change the BPEL oneWayDeliveryPolicy from "async.persist" to "sync"
    This can be done in a couple locations. The first is within the EM application that comes bundled with SOA 11g, and the place to go is:EM > [farm name] > SOA > soa-infra (right click) > SOA Administration > BPEL Properties > More BPEL Configuration Properties > OneWayDeliveryPolicyOnce that value has been changed to "sync" (without the quotes), you'll need to stop and start the managed servers that run your SOA instance(s).
    As you might expect, making a change at the "server level" like this impacts the default behavior of all composites deployed within your SOA instance. The second place to make this change - within the deployment descriptors for your BPEL process - impacts only the BPEL process that is being modified. To make the change at this level, you would edit your project's composite.xml file and, for each BPEL component, specify:  <component name="BPELProcess1" version="2.0">
        <implementation.bpel src="BPELProcess1.bpel"/>
        <property name="bpel.config.oneWayDeliveryPolicy">sync</property>
        <property name="bpel.config.transaction">required</property>
      </component>What does this change do? Well, I don't claim to have a complete understanding, but in theory it prevents a thread handoff from taking place between the service that is initiates your BPEL process (like a receive) and the actual BPEL engine thread that processes the request.
    In our case, where calls between (and within) composites were all of the synchronous "fire and forget" variety, this change also caused the entire processing of a message (across three different composites) to happen in a single thread (each message handoff was one-way, and with the oneWayDeliveryPolicy set to "sync", each was handled in a synchronous manner).
    This also seemed to have the effect of serializing our message processing. For example, in a test case where a BPEL process reads from a JMS queue and 250 messages are enqueued, with the oneWayDeliveryPolicy set to "async.persist", I'd typically go in to EM and, on each refresh, find 5-8 instances of the composite that processes those messages to be in a "Running" state. Once the change to "sync" was made, I'd only see at most only 2 (where one had actually already finished; the audit system just hadn't yet caught up to that fact yet).
    This also means that, with a "sync" delivery policy, messages (at least in our environment) are processed more slowly, but that was ok with us as we were more concerned with the behavior than the speed.
    For details on this and other BPEL deployment descriptor properties, see:
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10224/bp_app_deploydesc.htm
    Also, it's important to note that making the above change will alter the boundaries of your transactions as well as how faults are propagated. For more details, see:
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10224/soa_transactions.htm
    2) Front BPEL process with a Mediator object and enable message resequencing
    While we're using the above change as a standard practice in our environment, this second change has only been nominally tested - but it could be of interest and so I'll mention it here.
    Once you've updated your composite to include a mediator object in front of your BPEL process (if there isn't one there already), edit the .mplan for your mediator and change the "Resequence Level" from the default value of "operations" to "component". Then change the "Resequence Mode" from "off" to "FIFO" and specify an X-Path expression by which the mediator will be able to group your messages. This will help ensure that the messages are being processed in the order you expect.
    More information about resequencing within the mediator component can be found:
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10224/med_resequencer.htm
    Hopefully the above information is useful - if not for the original poster, then for someone who comes along later with similar questions.
    - Nathan

  • Assign Statement using EDI 850 XML Problem - No BPEL Process Instantion

    I am currently experiencing the following problem: I receive an EDI 850 message via AQ, and then when I try to copy one of the segments in the message
    to a temporary variable, my BPEL process instantiation never shows up in the BPEL console display, nor does it error out anywhere where I can see.
    Note: if I take out this assign activity, the BPEL process instantiation does show in the console, and does complete.
    Can someone tell me where to look inside of the BPEL engine for any error information and perhaps explain why this situation happens in the first place. Also, if anyone can tell me if my syntax below for the extraction is correct, that would also be great.
    Arthur (203-921-5925)
    </schema>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" >
    <import namespace="http://www.edifecs.com/xdata/100"
    schemaLocation="850.xsd" />
    </schema>
    </types>
    <message name="Header_msg">
    <part name="Header" element="tns:Header"/>
    </message>
    <message name="Transaction-850_msg">
    <part name="Transaction-850" element="imp1:Transaction-850"/>
    </message>
    <variable name="Variable_1" element="ns3:Segment-CTT"/>
    <variable name="Receive_PO_Dequeue_InputVariable"
    messageType="ns1:Transaction-850_msg"/>
    <sequence name="main">
    <receive name="Receive_PO" partnerLink="X12_4010_850_PO_DEQ"
    portType="ns1:Dequeue_ptt" operation="Dequeue"
    variable="Receive_PO_Dequeue_InputVariable" createInstance="yes"
    bpelx:headerVariable="Variable_Receive_X12_4010_850_PO_Hdr"/>
    <assign name="abc_test_assign">
    <copy>
    <from expression="bpws:getVariableData('Receive_PO_Dequeue_InputVariable',
    'Transaction-850','/ns3:Transaction-850/ns3:Loop-CTT/ns3:Segment-CTT')"/>
    <to variable="Variable_1"/>
    </copy>
    </assign>

    Hi Arthur,
    Please verify the namespace in the xml instance matches the xsd used in BPEL. In many cases, the data cannot be copied/transformed successfully if there is a mismatch in namespace.
    Eng

  • DBAdapter polling for new or changed records not issuing callback within an asynchronous BPEL process?

    Hi,
    I have a requirement to poll a database table withing an asynchronous process. The reason I want to use a receive within an asynchronous BPEL is because the process needs to be notified many times thru polling. So might need many receive activities.
    I have developed a process as described below :-
    1. Created an asynchronous process.
    2. Created a Database adapter for polling a table. Logical delete strategy is being used.
    3. Have put a receive activity from the DB Adapter created.
    4. Created a correlation set consisting of a single property(String)
    5. Created a property alias to refer to
    a. the input string of the asynchronous process. (unique for this process)
    b. the input from the database adapter (unique for this process)
    I initiate this process from the console. Then I inserted a record the table with proper inputs.
    But the BPEL waits indefinitely at the receive activity.
    When I try to poll the table from an empty BPEL process, it works perfectly fine.
    Regards
    Kabir

    Hi Kabir,
    Please refer the following sample for your usecase.
    Though Please be aware that one instance of BPEL process will correlate with only one message if you have one receive activity. Not all the messages tht DBAdapter polls.
    bpel-305-InboundCorrelationShows how to perform message correlation within BPEL
    Also Refer the following in Developer guide.
    http://docs.oracle.com/cd/E28280_01/dev.1111/e10224/bp_correlate.htm#CHDFHAAE
    If you want to keep polling and receiving the messages in the same BPEL process you might have to put the receive activity in a while loop construct. But as a design this is not a good design.
    Can you elaborate your requirement to understand better and suggest better solution.

Maybe you are looking for