Clear BPEL Processes

How to clear and delete all the deployed BPEL processes from BPEL console? Undeploying them one by one is a painful process.
Any shorter route?

Hi deepak,
You can also go through the following links:
http://orasoa.blogspot.com/2007/03/delete-bpel-instances.html
http://orasoa.blogspot.com/2007/02/delete-bulk-bpel-instances.html
Cheers,
Abhi...

Similar Messages

  • Clear wsdl cache every time a bpel process call is made.

    Hi All,
    I have a bpel process which gets input xml of the size of 6MB. This bpel process interacts with a java component using the WSIF approach to reorder the xml input recieved.
    The strange problem that i am currently encountering right now is for each time the bpel process execution time scales up. For example, the first time i fired the request, the bpel process took 29 seconds to completely execute. The second time it took 39 seconds and the third time it has taken around 56 seconds to execute.
    When i cleared the wsdl cache from within the bpel console, the execution again came down to around 21 seconds.
    Can i know which is the property which we can set in bpel.xml file of the bpel process to clear the wsdl cache each time a request is fired.
    Thanks in Advance,
    Vijay S

    Jay,
    You don't say how these links on the menu page are constructed. If you are using an apex list then for each list entry there would be a target page section in which you would put the target page ID in the Clear Cache field. For example, if the link goes to a page in the current application, say page 10, then you'd put 10 in the Clear Cache field.
    If you are building a link yourself, just put 10 (for page 10) in the clear-cache position of the f?p URL, e.g.,
    f?p=&APP_ID.:10:&APP_SESSION.::NO:10:P10_ITEM:&SOME_ITEM.
    Scott

  • 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.

  • BPEL process state "Off"

    Hi,
    I had created one BPEL process which reads from FTP Remote server and writes to local file directory.
    After reading from Remote FTP server I am deleting file from the server. In the remote server I had created on user to interact with FTP server with all permissions. When the BPEL process executed FTP Adapter is deleting the File successfully from remote location but BPEL state is changed to “Off”.
    When I checked the logs, I found there is problem with Delete permission. Actually as mentioned above file is deleted successfully in the remote location.
    OPMN logs:
    <File Adapter::Outbound> Processing file : /click/xelusparts/feeds/jabilparts/outbound/process/\po_28.txt
    <File Adapter::Outbound> Sending message to Adapter Framework for posting to BPEL engine: {
    file=/click/xelusparts/feeds/jabilparts/outbound/process/\po_28.txt
    <2007-06-11 19:00:42,677> <DEBUG> <default.collaxa.cube.engine.deployment> <CubeProcessHolder::loadAndBind> Check if process FTPRetrieveTOFileWriteProcess, revision 1.0 needs to be reloaded
    <2007-06-11 19:00:42,709> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> registered wsdl at http://dt1521-localhost.com:80/orabpel/default/FTPRetrieveTOFileWriteProcess/1.0/_FTPRetrieveTOFileWriteProcess.wsdl
    <2007-06-11 19:00:42,709> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> got wsdl at: http://dt1521-localhost.com:80/orabpel/default/FTPRetrieveTOFileWriteProcess/1.0/_FTPRetrieveTOFileWriteProcess.wsdl
    <2007-06-11 19:00:42,724> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Sucessfully sent message : /click/xelusparts/feeds/jabilparts/outbound/process/\po_28.txt to Adapter Framework.
    <2007-06-11 19:00:42,724> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Deleting file : /click/xelusparts/feeds/jabilparts/outbound/process/\po_28.txt after processing.
    <2007-06-11 19:00:42,724> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Host name is 'DT1521-localhost.com'.
    <2007-06-11 19:00:42,724> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Reading reply from DT1521-localhost.com
    <2007-06-11 19:00:42,818> <DEBUG> <default.collaxa.cube.ws> <WSInvocationManager::invoke> operation: Write, partnerLink: <partnerLink name="FileWriter" partnerLinkType="{http://xmlns.oracle.com/pcbpel/adapter/file/Write/}Write_plt">
    <myRole name="null">
    <ServiceName>null</ServiceName>
    <PortType>null</PortType>
    <Address>null</Address>
    </myRole>
    <partnerRole name="Write_role">
    <ServiceName>null</ServiceName>
    <PortType>{http://xmlns.oracle.com/pcbpel/adapter/file/Write/}Write_ptt</PortType>
    <Address>null</Address>
    </partnerRole>
    <conversationId>bpel://localhost/default/FTPRetrieveTOFileWriteProcess~1.0/10610-BpInv1-BpSeq1.3-3</conversationId>
    <properties>{}</properties>
    </partnerLink>
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> registered wsdl at D:\OraHome_1\integration\orabpel\domains\default\tmp\.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar\Write.wsdl
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> got wsdl at: D:\OraHome_1\integration\orabpel\domains\default\tmp\.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar\Write.wsdl
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <WSInvocationManager::invoke> def is file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/Write.wsdl
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::invoke> opName=Write, parnterLink=<partnerLink name="FileWriter" partnerLinkType="{http://xmlns.oracle.com/pcbpel/adapter/file/Write/}Write_plt">
    <myRole name="null">
    <ServiceName>null</ServiceName>
    <PortType>null</PortType>
    <Address>null</Address>
    </myRole>
    <partnerRole name="Write_role">
    <ServiceName>{http://xmlns.oracle.com/pcbpel/adapter/file/Write/}Write</ServiceName>
    <PortType>{http://xmlns.oracle.com/pcbpel/adapter/file/Write/}Write_ptt</PortType>
    <Address>null</Address>
    </partnerRole>
    <conversationId>bpel://localhost/default/FTPRetrieveTOFileWriteProcess~1.0/10610-BpInv1-BpSeq1.3-3</conversationId>
    <properties>{}</properties>
    </partnerLink>
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::doShortCut> Parner Property optShortCut
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> ResourceAdapterMetaData Connection Created
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/Write.wsdl [ Write_ptt::Write(opaque) ] - Looking up Resource Adapter JDNI location 'eis/FileAdapter'
    <2007-06-11 19:00:42,834> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Managed Connection Created
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Creating Connection
    <2007-06-11 19:00:42,834> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Connection Created
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Creating FileInteraction
    <2007-06-11 19:00:42,834> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> FileInteraction Created
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> Instantiating outbound JCA interactionSpec oracle.tip.adapter.file.outbound.FileInteractionSpec
    <2007-06-11 19:00:42,834> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> Populating outbound JCA interactionSpec oracle.tip.adapter.file.outbound.FileInteractionSpec with properties: {FileNamingConvention=spob230_%SEQ%.txt, OpaqueSchema=true, ElapsedTime=60, NumberMessages=1, PhysicalDirectory=c:\inbound_dir, FileSize=1024000}
    07/06/11 19:00:42 file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/fileAdapterOutboundHeader.wsdl
    07/06/11 19:00:42 file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/fileAdapterOutboundHeader.wsdl
    07/06/11 19:00:42 file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/Write.wsdl
    <2007-06-11 19:00:42,849> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/D:/OraHome_1/integration/orabpel/domains/default/tmp/.bpel_FTPRetrieveTOFileWriteProcess_1.0.jar/Write.wsdl [ Write_ptt::Write(opaque) ] - Invoking JCA outbound Interaction
    <2007-06-11 19:00:42,849> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> File Adapter received an input Record
    <2007-06-11 19:00:42,849> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Waiting outside sync object.....
    <2007-06-11 19:00:42,849> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Batcher created using staging : true with number of messages : 1
    <2007-06-11 19:00:42,849> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Input Record: javax.xml.transform.dom.DOMSource@e5394c
    <2007-06-11 19:00:42,849> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Translating....
    <2007-06-11 19:00:42,849> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Outbound Translation done.
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Refreshed (staging/num Messages) file count : 1
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Host DT1521-localhost.com FTP command: USER orabpel
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Wrote to Control File
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Batching staging File: staging0
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Batcher sending to sender for output file writing
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Sending File to output Dir
    <2007-06-11 19:00:42,865> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FileAgent.putFile() puts spob230_17.txt in c:\inbound_dir begins ...
    <2007-06-11 19:00:42,865> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Done Writing to output file spob230_17.txt in dir c:\inbound_dir !!
    <2007-06-11 19:00:42,881> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> End clearing Control File
    <2007-06-11 19:00:42,881> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Deleting staging File: staging0
    <2007-06-11 19:00:42,881> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> End clearing Control File
    <2007-06-11 19:00:42,881> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Interaction gets a ok response
    <2007-06-11 19:00:42,881> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Done with Input Record
    <2007-06-11 19:00:43,256> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FTP Command: USER, reply:
    331 Password required for orabpel
    <2007-06-11 19:00:43,256> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Host DT1521-localhost.com FTP command: PASS
    <2007-06-11 19:00:43,506> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FTP Command: PASS, reply:
    230 Login OK
    <2007-06-11 19:00:43,506> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Host DT1521-localhost.com FTP command: CWD /click/xelusparts/feeds/jabilparts/outbound/process/
    <2007-06-11 19:00:43,615> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FTP Command: CWD, reply:
    250 Directory successfully changed
    <2007-06-11 19:00:43,615> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Host DT1521-localhost.com FTP command: DELE po_28.txt
    <2007-06-11 19:00:43,709> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FTP Command: DELE, reply:
    200 Deleted file "po_28.txt".
    <2007-06-11 19:00:43,709> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> FTPClient.deleteFile(): 200 Deleted file "po_28.txt".
    <2007-06-11 19:00:43,709> <ERROR> <default.collaxa.cube.ws> <File Adapter::Outbound> FTPClient.deleteFile(): Unable to delete file po_28.txt', reply code = 200
    <2007-06-11 19:00:43,709> <DEBUG> <default.collaxa.cube.ws> <File Adapter::Outbound> Processer thread calling onFatalError with exception Error deleting file from FTP Server.
    Unable to delete file from server.
    Please ensure whether the remote file has delete permission.
    <2007-06-11 19:00:43,709> <FATAL> <default.collaxa.cube.activation> <AdapterFramework::Inbound> [Get_ptt::Get(opaque)] - Resource Adapter requested Process shutdown!
    <2007-06-11 19:00:43,709> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - performing endpointDeactivation for portType=Get_ptt, operation=Get
    <2007-06-11 19:00:43,709> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Endpoint De-activation called in adapter for endpoint : /click/xelusparts/feeds/jabilparts/outbound/process/
    <2007-06-11 19:00:43,725> <DEBUG> <default.collaxa.cube.engine.deployment> <CubeProcessHolder::loadAndBind> Check if process FTPRetrieveTOFileWriteProcess, revision 1.0 needs to be reloaded
    <2007-06-11 19:00:44,037> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::onStateChanged State is changed for process 'bpel://localhost/default/FTPRetrieveTOFileWriteProcess~1.0/', state=OFF
    <2007-06-11 19:00:44,037> <DEBUG> <default.collaxa.cube.engine.deployment> <CubeProcessHolder::updateRevision> Updated state for process FTPRetrieveTOFileWriteProcess (revision 1.0) to 1
    Thanks,
    Vidya

    Hi SR,
    You can do this by having a BPEL process with a java embedding containing below code.
    * Input Variables
    String processName   = (String)getVariableData("processName");                                                                                 
    String revision      = (String)getVariableData("revision");             
    * Declare variables.
    IBPELProcessHandle procHandle = null;            
    Locator loc = null;            
    BPELProcessMetaData bpelProcessMetadata = null;             
    try{               
         * get Locator Instance
        loc = getLocator();                            
         * Lookup Process. Revision optional.
        if(revision == null || revision.trim().equals(""))            
          procHandle = loc.lookupProcess( processName );             
        else            
          procHandle = loc.lookupProcess(processName, revision);             
        if(procHandle == null)          
          throw new Exception("Unable to find process: " + processName);          
         * Get Metadata of the process.
        bpelProcessMetadata = procHandle.getMetaData();             
         * Set Lifecycle to Retired.
         * Use setState(IBPELProcessConstants.STATE_OFF) to change process state to off.
        bpelProcessMetadata.setLifecycle(IBPELProcessConstants.LIFECYCLE_RETIRED);    
         * Finally update the process with the modified metadata.
        procHandle.updateMetaData(bpelProcessMetadata);                   
    }catch (Exception e)                            
      addAuditTrailEntry(e);              
    }If you want you can schedule this process.
    Regards
    PavanKumar.M

  • 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

  • A simple BPEL process

    Hi all,
    I'm working on Petri Nets verification and I'm new to BPEL but I need a simple BPEL process to proceed and I'm running out of time.
    The needed function in BPEL is a one that takes x and y and returns z=y/x.
    Your help is highly appreciated.
    Thanks.

    That gave me a syntax error when I tried to parse it to PNML (Petri Net Markup Language) using BPEL2OWFN tool (http://www.gnu.org/software/bpel2owfn/). It said: syntax error , unexpected K_FROM.
    I know this simple example process that I've used before:
    +<process name="exampleprocess" targetNamespace="www.gnu.org/software/bpel2owfn">+
    +<partnerLinks>+
    +<partnerLink name="PL" partnerLinkType="PLT"+
    myrole="exampleprocess" partnerRole="exampleuser" />
    +</partnerLinks>+
    +<sequence>+
    +<receive partnerLink="PL" operation="req" createInstance="yes" />+
    +<reply partnerLink="PL" operation="ack" />+
    +</sequence>+
    +</process>+
    I need to plugin the function that gets 2 numbers and return z=x/y in that bpel code. The function must be a free one written in the code, and not a one got from another place (using <from> tage for example).
    I hope I'm clear.
    Thanks in advance.

  • 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

  • How to create and deploy a JSP which calls a BPEL process in JDEVELOPER

    Hi Gurus,
    I don't know how to create a JSP in JDEVELOPER which call a BPEL process. I have gone through the tutorials. Since, I am new to JDEVELOPER I need some help.
    1. How to create a JSP (I know creating application and project, also I know JSP coding)
    2. How to deploy this JSP?
    3. For the Synchronos BPEL project, the build.xml is created automatically, in this forum, I see people talking about ear war .deploy etc. How do we get them automatically created. Or do we need to create them manually. If it has to be manual some sample scripts would be of great help.
    Any help in this regard would be really great.
    Thanks in advance,
    Sankar.

    I found the following tutorial which clearly explains how to deploy J2EE apps.
    http://www.oracle.com/technology/obe/obe1013jdev/deployment/deployment.htm
    I created a simple jsp file in a project, followed the steps in the tutorial and it got deployed onto: http://localhost:9700
    For invoking BPEL process through JSP, I have reused the jsp files available in : 102.InvokingProcesses\jsp and changed the processes and input accordingly.
    Please post me a query in this thread, if any of you want any specific details.

  • How to get response from an asynchronous BPEL process in Java

    I'm experimenting with BPEL and doesn't seem to be able to get response from an asynchronous BPEL process. Here's the deal:
    I have a BPEL process that takes a string as input, and gives another string as output. This is a asyncronous process.
    I want to initiate this BPEL process as a web service so I generate a Webservice Proxy in JDeveloper 10g (10.1.3.0.4). The function to call the process is now called "initiate" and takes three arguments: the input string, a "org.xmlsoap.schemas.ws._2003._03.addressing.EndpointReferenceType replyTo" and a
    "org.xmlsoap.schemas.ws._2003._03.addressing.AttributedURI messageID".
    HTTP-Analyzer shows that invoking the BPEL process with initiate("somestring", null, null) results in sending a SOAP message to the BPEL process, which returns a "202 Accepted". How do I get the response from the process? My intuition tells me that I have to use that second argument, that EnpointReferenceType thing. How do I use that?
    Another question: If a asynchronous BPEL process does not exists (so the endpoint does not exist) the Java proxy does not throw an error when runned. It does not even sends a message. It exits with status 0! (This happens for example when deploying a new version of a process and when the "old" version is undeployed). Calling a non-existing synchronous BPEL process, the Java proxy DOES throw an error.

    Clemens,
    That all sounds logical. But somehow it is still a mystery for me ... Somehow I don't see what should be done.
    To call the async BPEL process I have the following procedure:
    initiate(String input, org.xmlsoap.schemas.ws._2003._03.addressing.EndpointReferenceType replyTo, org.xmlsoap.schemas.ws._2003._03.addressing.AttributedURI messageID)
    The first argument is the input for my BPEL process. The second is the address to a webservice that should handle the callback, right? The third is a messageID (makes sense, but why of the type AttributedURI?).
    Here lies my problem. It is not clear to me how these EndpointReferenceType & AttributedURI work. I can't find anything on the net about it. The AXIS examples as where mentioned earlier use other types (namely the "org.xmlsoap.schemas.ws.addressing.MessageID" and "org.xmlsoap.schemas.ws.addressing.ReplyTo") which are completely different.
    What I did so far:
    - I created an webservice proxy that listens on the onResult endpoint of the BPEL process.
    - I created an webservice proxy that calls the BPEL process through the initiate procedure, but it is not completely clear to me how to construct the EndPointreferenceType replyTo, and the MessageID. I did something like this:
    EndpointReferenceType replyTo = new EndpointReferenceType();
    // callback service running on local machine
    // This URI class is the java.net's version
    URI replyToURI = new URI("http://vaccinatie:8988/syncro-callback-context-root/stringconcatCallbackBindingPort");
    // This AttributedURI is the org.xmlsoap.schemas.ws._2003._03.addressing's version
    AttributedURI address = new AttributedURI();
    // the only public methos that made sense to me:
    address.set_value(replyToURI);
    replyTo.setAddress(address);
    // call the BPEL process
    myPort.initiate("test123", replyTo, address);
    But the above doesn't work (largely because I don't know what I'm doing here prob.:-) ) It does send the "test123" message, and the BPEL process does process it, but I don't seem to get the callback right.
    I hope this makes my problems somewhat clearer. I hope someone can help me, because I'm just a beginner in this whole "web service area" and seems to do something terribly wrong here, because it should be very simple. Thx.

  • BPEL Process showing as service in SOA 11g version

    Hi All,
    Morning...need some help with this as we are currently stuck with this.
    In the SOA Suite 10g version (10.1.3.3) when we deployed a parent bpel process making a call to another bpel process ( child process ) via the partner link (by mentioning the complete WSDL location/url for the deployed child process in the partner link). When we see the flow/audit trail for such a bpel process in the BPEL Console it shows the separate flow diagrams of the bpel instances for the parent as well child process..
    Now when we have migrated such a bpel process to SOA Suite 11g (J developer : 11.1.1.4) by opening up the project file ( .jpr ) for both the processes in Jdev 11g version and going through the migration steps in the wizard. It finally says migration to version 11.1.1.4 is successful
    Now we deploy the child process successfully to the server --> Then compile/build the parent process --> deploy this parent as well.
    1.Now when we see the composite.xml for the parent process in Design view it shows the child bpel process partner link in the External References section.
    2.In the front end we invoke the parent process , it completes successfully ..we could see the flow diagram for this parent process..
    But for the child bpel process we don't see a new separate instance created in the front end in the EM console
    Could someone please let us know how this could be achieved so that we could see a separate bpel instance for the child bpel process as well..what settings/properties could be changed..
    We need to see separate instances for the parent as well child bpel process within the BPEL Console.
    With regards

    Hi Todd,
    first of all thanks for your response..i am putting below what exactly is happening.
    1. We trigger the parent process..
    Go to SOA Composite for parent process --> Dashboard --> Recent Instances ---
    there it shows the composite instance id lets say 123 for parent process..
    We click the hyperlink for this instance id --> it opens up the Flow Trace screen -- on the right side it mentions the ECID value. this is correct ...
    Now below it shows the Trace section. here in tabular format it shows below columns :
    Usage Instance Type Composite Instance
    Service parent process name (hyperlinked) BPEL Component composite instance # 123
    Reference child process name web service(local invocation) composite instance # 456
    Now if we need to see the flow trace for the parent process we click the hyperlink just mentioned above and it opens up the flow trace page showing the bpel process instance details for parent process.
    On the top right side it shows the BPEL id for this parent process. this is fine...
    Now if we need to see the same flow details for the child bpel process..how do we see this in the frontend.
    In the older version of SOA 10g Bpel Console 10.1.3.3 we used to see these 2 bpel processes separately in the BPEL Console under the BPEL processes tab & there we could see the instances for the child process with complete flow trace/audit details
    This is the problem we are facing now..hope it is clear now.
    Thanks

  • Unable to invoke a EJB from a BPEL process

    I am unable to invoke a EJB from a BPEL process. Whenever I try to test it from the oracle EM, I get the below exception. I am using WebLogic 10.3.3, SOA suite 11.1.1.3 and JDev 11.1.1.3 .
    This is what I see from the EM....
    Non Recoverable System Fault :
    javaInterface attribute for the binding is missing or the inteface class is not available.
    Below is a part of the stack trace from the soa server log…
    Caused By: oracle.classloader.util.AnnotatedClassNotFoundException:
    Missing class: com.abc.GreetingEJBBean
    Dependent class: oracle.integration.platform.blocks.ejb.SDOEjbReferenceD
    elegateImpl
    Loader: sun.misc.Launcher$AppClassLoader@20929799
    Code-Source: /C:/Oracle_latest/Middleware/home_11gR1/Oracle_SOA1/soa
    /modules/oracle.soa.fabric_11.1.1/fabric-runtime.jar
    Configuration: /C:/Oracle_latest/Middleware/home_11gR1/Oracle_SOA1/soa
    /modules/oracle.soa.fabric_11.1.1/fabric-runtime.jar
    Piece of xml from the composite.xml
    <reference name="GreetingService"
    ui:wsdlLocation="http://123.45.218.140:7001/GreetingEJBBean/GreetingEJBBeanService?wsdl">
    <interface.wsdl interface="http://abc.com/#wsdl.interface(GreetingEJBBean)" />
    <binding.ejb uri="GreetingEJB-GreetingEJB-GreetingEJB"
    javaInterface="com.abc.GreetingEJB"/>
    </reference>
    Looks like its not able to find the javaInterface mentioned above.
    I have a simple EJB with one business method and a very simple BPEL process.
    @Stateless(name = "GreetingEJB", mappedName = "GreetingEJB-GreetingEJB-GreetingEJB")
    @WebService
    public class GreetingEJBBean implements GreetingEJB {
    public GreetingEJBBean() {
    public String greetUser(String name){
    return ("Hello " + name);
    Any help would be greatly appreciated.

    I haven't tried from a BPEL process, but I have had success (as in Lucas's blogs) of using services and references as EJB Java Interface. This is with EJB java interfaces solely of base types (i.e. String foo(String s)).
    At high level here's what I have noted so far:
    1. Per Lucas's blog, @javaInterface is not being added to the ejb.binding automatically but it's not clear to me when this is and is not required given that interface.java is specified for the reference or service. Would interface.java and @javaInterface ever be different? I've been adding @javaInterface manually anyways since Lucas is a smart guy and I'd rather avoid errors. :-)
    2. Dropping an EJB interface jar in SCA-INF/lib works, but I've had the problem that the JDeveloper SOA Plugin doesn't see those classes until I stop and restart JDeveloper. Until then, I'm confronted with the java->wsdl mapping error. I was sort of primed to figure this one out since I ran into similar issues with SOA SpringBean components.
    3. Dropping EJB interface source in SCA-INF/src is more reliable, because then I can build the project (i.e. create SCA-INF/classes) and the JDeveloper SOA Plugin seems to resolve these brand new classes immediately.
    4. I've tried to invoke an EJB java-interface reference with a slightly complicated java interface (a class parameter with some fields, one of which is an array of another class). The auto-generated WSDL doesn't look exactly right to me (but I'm new to JAXB). Mediator maps to it just fine and the project compiles and deploys normally but fails at runtime. I have not researched in depth. It's not clear to me from the documentation and release notes whether I should expect for it to work, or whether I should expect to have to create my own JAXB mapping. If the latter, I really need a good example!

  • 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

  • Multiple BPEL Process Managers in one environment?

    Hi,
    I'm quite new to the Oracle SOA product line, so please be gentle when my question doesn't make sense.
    I’m in the process of designing a new enterprise architecture based on service orientation. I’m looking at the Oracle SOA Suite software to get a better understanding of what things will look like when getting to the actual implementation.
    Some internal projects are moving fast, so I’m trying to get an understanding on how things will work out in the future. One case has my current attention, related to the BPEL Process Manager.
    A 3rd party vender is offering a specific solution which is using or based on the BPEL Process Manager. This solution can be purchased as a black-box. From the perspective of my new architecture I would like to purchase the SOA suite as a whole. New developments will most likely be using the BPEL Process Manager for orchestration. But when purchasing the black-box application, the environment will be extended with an extra BPEL Process Manager. My first thought is to try and incorporate the BPEL processes from the 3rd party vendor onto one single BPEL Process Manager. But I also think two BPEL Process Managers can have advantages.
    I’m not sure how to go forward with this. How should I handle this? Is it common to have multiple BPEL Process Managers in one environment or should I pursue maximum integration and only go for one BPEL Process Manager?

    Hi,
    We have similar situation at my current client site and we are going with two seperate BPEL PM installs for various reasons. One of the main driver in our case is conflicting in timelines of two seperate projects.
    But my suggestion is to go with single enterprise install if that's not breaking the 3rd-party vendor supporting contracts. This has obviously benefits of redecued infrastructure/administrative and other related costs. How many processes does the vendor has as part of their solution? If they are handful you know it doesn't justify having seperate environments.
    On the otherhand having two seperate installs isn't bad either depending on how big or small your SOA service/process orchestration footprint is. We don't have complete handle on the performance/scalability aspects of BPEL PM based on number of processes deployed. But as you can see that may be one of drivers to have redundancy in BPEL PM servers.
    End of the day there is no clear cut answer. If you have funding and resources, go with two seperate instances. But from architectural perspective better to have single install with clustering for better performance/scalability.
    HTH
    Regards,
    Rajesh

  • Problems with: orcl:lookup-xml in BPEL process transformation activity

    All,
    I'm trying to do a lookup (using orcl:lookup-xml) from a transform activity within a BPEL process.
    The function editor in JDeveloper tells me that the following params are needed:
    - docURL
    - parentXPath
    - keyXPath
    - lookupXPath
    - key
    All of this is clear! In the examples I can find on the oracle site, the value for the docURL is always like: "file:/x:/somefile.xml". This works fine when I test the xsl on my local development pc. However when I deploy to my test environment (SOA Suite on Linux) this file reference isn't going to work obviously.
    I want the docURL to point to an XML file which I include in the deploy of the BPEL process. Can anyone tell me how to do this?
    Hope you can help!
    Message was edited by:
    Chris Everett NL

    Is this xml-file on some relative path of your bpel process, or can you ship it in the same directory inwhich also the .bpel file exists ?

  • Message protection (Encryption) through OWSM in BPEL process 11g

    What is my requirements ?_
    I want to encrypt the messages in BPEl process using OWSM message protection policies
    What is the configuration i am using ?_
    Weblogic Server 10.3.3
    Soa Server 11.1.1.3.0
    Oracle JDeveloper 11.1.1.3.0
    What I have done so far ?_
    (1) Created one Sync BPEl process (CalledAddition) which take two input and add them and give the output
    (2) Created one more Sync BPEL process (CallerProcess) which takes two input and call the above created bpel process
    (CalledAddition) and get the response back as addition of two number.
    Now I want to Add OWSM Message protection policy to Encrypt the message in Main BPEl process(CallerProcess) and the called service (CalledAddition) decrypt the message upon invocation. It is a very simple scenario.
    For this purpose I have done the following OWSM Policy Configuration:
    (1) Created a java keystore as follows
    keytool -genkey -keyalg RSA -keystore test_keystore.jks -storepass welcome1 -alias client_key -keypass welcome1 -dname "CN=Client, OU=WEB AGE, C=US" -keysize 1024 -validity 1460
    (2) Copy the keystore (test_keystore.jks) to location domain/config/fmwconfig.
    (3) Go to EM console/WeblogicDomain/Security/Credential and delete the map oracle.wsm.security and then again created it, with no key inside.
    (4) Go to EM console/WeblogicDomain/Security/SecurityProviderConfiguration and configure the above created keystore as follows:
    (i) Keystore Type=JKS, Keystore Path=./test_keystore.jks, password=welcome1, confirmPassword=welcome1
    (ii) Signature Key:
    Key Alias=client_key, Signature Password=welcome1, confirmPassword=welcome1
    (iii)Encryption Key:
    Crypt Alias=client_key, Crypt Password=welcome1, confirmPassword=welcome1
    (5) Now restart the server (both Weblogic and SOA server)
    (6) Now again go to EM console/WeblogicDomain/Security/Credential and open expand the oracle.wsm.security map, Automatically
    the following keys are made inside it:
    (i) sign-csf-key
    (ii) enc-csf-key
    (iii) keystore-csf-key
    Created one more key inside it explicitly:
    (iv) basic.credentials with username=weblogic and password=welcome1
    (7) Go to EM console/WeblogicDomain/WebServices/Policy and cretaed the following policies:
    oracle/wss11_message_protection_service_policy:
    (i) select policy oracle/wss11_message_protection_service_policy from list and click on create like button. This will create a copy of the policy with different name.
    (ii) Give the new name as oracle/wss11_message_protection_service_policy_Copy ( which is by default)
    (iii) Local Optimization = off and enabled is checked
    (iv) Attachment Attributes …..
    Applies To=Service BIndings and Service Category=Service Clients
    (v) Assertions …..
    Select middle assertion MessageProtection and Advertised=checked and Enforced=checked
    (vi) Configuration....
    Add following Configure properties, if present already edit them as follows:
    (a) name=keystore.enc.csf.key, property set=standard-security-properites, value=enc-csf-key, Type=Optional
    (b) name=keystore.sig.csf.key, property set=standard-security-properites, value=sign-csf-key, Type=Optional
    (c) name=role, property set=standard-security-properites, Default=ultimateReceiver, Type=Optional
    (v) Setting.........
    Done the following setting
    - Message Security/include timestamp=unchecked
    - Message Signing Setting/Include entire body=unchecked (since we need only encryption, no signing of message)
    - Message Encrypt Setting/include entire body=checked
    (vi) Validate and save
    (vi) Thus a new policy is made in domain with name oracle/wss11_message_protection_service_policy_Copy
    Simmilarly create oracle/wss11_message_protection_client_policy:
    (ii) Give the new name as oracle/wss11_message_protection_client_policy_Copy ( which is by default)
    (iv) Attachment Attributes …..
    Applies To=Service BIndings and Service Category=Service Endpoint
    (vi) Configuration....
    Add following Configure properties, if present already edit them as follows:
    (a) name=keystore.recipient.alias, property set=standard-security-properites, value=client_key, Type=Optional
    (b) name=role, property set=standard-security-properites, Default=ultimateReceiver, Type=Optional
    (vi) Thus a new policy is made in domain with name oracle/wss11_message_protection_client_policy_Copy
    Rest of the steps(i,iii and v) are same as described above in case of service policy
    After creating the policies in domain attach them to the bpel process as follows:
    (1) Go to SOA project (CallerProcess) in EM console.
    (2) Click on policy tab
    (3) First attach the client policy (oracle/wss11_message_protection_client_policy_Copy) to the endpoint of the process CallerProcess.
    (4) Then attach the service policy (oracle/wss11_message_protection_serivce_policy_Copy) to the reference in CallerProcess which is calling CalledAddition.
    (5) Now test the process (CallerProcess)
    pass input say 10 and 20 in input
    Upon testing it give the following error_
    Web Service invocation Failed:
    oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: InvalidSecurity : error in processing the WS-Security security header
    I have made all thing clear. I have gone through several documents but unable to find the solution. If anyone please help me in this case.
    Thanks

    I have followed same steps and getting same errror.
    User 868153, were you able to resolve this issue.
    Appreciate your help.
    Thanks

Maybe you are looking for