Occasionally - BPEL variable is empty

We have a process that prepares a large variable (purchase order) via transform for an invoke. Most of the time it performs with no problems but sometimes it gets in a state where that transform will create a totally empty output.
This continues with each new instance until restarting the server which fixes the issue. Any ideas what would cause this sporadic problem?
Thanks,

Hi,
I have seen very similar behaviour with variable initialisation in BPEL, and it does seem to clear out after a composite redeploy or a server restart.
It looks like a bug, but I have no idea how to reproduce, so it's hard to investigate around something that happens only occasionally with unknown reason...
Hope someone can find a way to reproduce it... Then it can possibly be fixed..
Cheers,
Vlad

Similar Messages

  • How to display a BPEL variable using Java Embedding

    Hi, hope someone can help, I'm sure this is something very simple but for the life of me can't seem to find it through the tutorials including the Dev guide.
    Question
    =======
    How can I display user defined and BPEL variables in the process activity "Java Embedding" ?
    ex: System.out.println(bpws:getVariableData("myDatabaseParameterVariable")
    This example doesn't work but this is basically what I am trying to achieve.
    I would appreciate any help with this.
    Rookie

    Actually that's all the code I have.... System.out.println(myDatabaseArg);
    myDatabaseArg is a simple parameter defined in the database adapter configuration wizard which is used as a criteria to retrieve data.
    Just before I invoke the Read I use the Java Embedding to display the content of the parameter.

  • BPEL Variables in to Transform activity (XSL)

    Hi,
    I need to access a BPEL variable from within a Transform activity (XSL).
    I need an output like this:
    <XML>
    <val1>1</val1>
    <val2>2</val2>
    <val3>3</val3>
    <val4>4</val4>
    </XML>
    Val1 and val2 is reachable from the xsd in the Transform activity (source variable). A DB-adapter is used to provide these data.
    Val3 and val4 is present in the BPEL, within BPEL variables.
    I have created a Transform activity with source = result of DP-adapter (val1 + val2), but will then need to get val3 + val4 (BPEL vars) from inside the Transform activity as well.
    How can I do this ?
    I have tried passing the variables in as parameters, but can't get this to work. I either only get the parameters, or only get the values from the DB-adapter, as it seems I only can have 1 source.
    Similar thread, but with no answer:
    Global Variables in to XSL

    Thank you for answering.
    The link you're referring to is the thing that I mentioned that I couldn't get to work.
    Works fine when just passing parameters, but when I already have a source (like my DB-adapter output), and want the parameters as well, it's getting tricky. Seems there can only be 1 source: Parameters or DB-adapter output.
    What I need is values from a source (DB-adapter output) + be able to send BPEL variables to the same Transform activity (XSL).
    Have you tried this ? Is it at all possible ?

  • How to set values to bpel variables from Java

    I have a java class to create files and populate some contents into it. On success it returnes "File Created"
    I used the following code to achieve it :-
    WriteFiles objWriteFiles=new WriteFiles();
    String para=((oracle.xml.parser.v2.XMLElement)getVariableData("inputVariable","payload","/client:FileTestProcessRequest/client:HO_ORG_ID")).getFirstChild().getNodeValue();
    String result=objWriteFiles.writeHeaderInfo(para);
    (writeHeaderInfo is a method in my java class)
    addAuditTrailEntry(result);
    I works fine..Now I want to assign this reult value to a bpel variable .. I tried doin it like below:-
    setVariableData("outputVariable","payload","/client:FileTestProcessResponse/client:result" , result)
    but its not working...I get a fault ...
    Can anyone help me out...
    Thanks,
    Githa.R.S

    In this example :
       <!-- Invoke the EmployeeStatus Java class instead of web service -->
       <bpelx:exec name="invokeJavaExec" language="java" version="1.4">
          <![CDATA[
             EmployeeStatus e = new EmployeeStatus();
                String firstName = ((Element)getVariableData(
                                 "EmployeeTravelStatusRequest", "employee",
                                 "/employee/FirstName")).getNodeValue();
                String lastName = ((Element)getVariableData(
                                   "EmployeeTravelStatusRequest", "employee",
                                   "/employee/LastName")).getNodeValue();
                String empStatus = e.getTravelStatus(firstName, lastName);
                addAuditTrailEntry("Employee status is: " + empStatus);
                setVariableData("EmployeeTravelStatusResponse", "travelClass",
                             "/travelClass", empStatus);
          ]]>
       </bpelx:exec>they dont use namespaces in the xpath-expression, can you try that ?

  • Hotsync occasionally results in an empty calendar in the Palm desktop software.

    Hotsync occasionally results in an empty calendar in the Palm desktop software.
    Updated to most current version - 6.2. That did not help.
    Downgraded to 4.2.1 based on some discussions I read here, but that didn't help either.
    Hotsync logs show successful sync when the problem occurs.
    Re-syncing repopulates the calendar and gives an error about dates older than 1971.
    Anyone have any suggestions?
    Thank you!
    Post relates to: Palm TX

    I hate to bump but any help would be **greatly** appreciated!!
    I'm at my wits end with this problem...

  • Accessing BPEL Variables in XSLT

    Hi All,
    In a BPEL PM process I need to be able to access a global BPEL process variable in the XSL transformation. When I use any functions in the "Transform" activity I do not see the BPEL variables in scope. Any idea on how can this can be done ?
    Regards,
    Venkatesh.

    This causes a problem with the XSL Mapper. If I try to add an XPath-expression component to use this function I get the Warning message :-
    "Function of name "bpws:getVariableData" not found."
    If I continue, the following XSL segment is generated :-
    <tns:comment>
    <xsl:value-of select="bpws:getVariableData(?,?,?)"/>
    </tns:comment>
    This compiles ok, but when I run the business process, I get the following error from the transformation component :-
    XPath expression failed to execute. Error while processing xpath expression, the expression is "ora:processXSLT("transformDimToRAN.xsl", bpws:getVariableData("invokeDimensionGateway_getFutOptTradesSelect_lastProcessedTradeRef_OutputVariable", "FutOptTradesCollection"))", the reason is Extension function http://schemas.xmlsoap.org/ws/2003/03/business-process/ : getVariableData is unknown. Please verify the xpath query.

  • ICM - CVP single step transfer, peripheral variables are empty

    Hi,
    The we do the Single Step Transfer, peripheral variables are empty when the call reachs the CVP. Please help
    The call scenario:
    1-      Customer dial 181
    2-      Call queued on ICM
    3-      Agent receive the call
    4-      Agent do single step transfer and send the call (with data(PV1..PV10)) to CVP through ICM
    5-      CVP play the number received from ICM
    Currently, data set in the PV1-PV10 are empty once reach the ICM…
    I need the these data to be available to play it to the caller..
    I am using:
    CAD 7.2
    CVP 7.2

    If the call goes to an agent do you see the data? Are you using a cti rp to make the transfer or dnp?
    david

  • Accessing BPEL variables in XSL

    Hi,
    Did anyone have success accessing BPEL variables in XSL? If so can
    you please let me know how you did it? I tried bpws:getVariableData
    without much luck.
    Any information will be of great help.
    Thanks
    Raj

    I don't think that's really what XSL is for. It's really about taking a single XML document, and generating another XML document, based on the first.
    If you want to pass in variables from BPEL, then write a complex type that contains the main XML document you need, plus all the other inputs you need.
    As an example, I was doing some XSL work and needed to also supply it with a default date to set when nothing else was present.
    My complex type would have been something like:
    <complexType name="ProcessDataInputType">
    <sequence>
    <element name="defaultDate" type="date"/>
    <element name="data" type="tns:MyDataType"/>
    </sequence>
    </complexType>

  • Couldnot initialize bpel variable.

    Hi,
    I have created a bpel based on a wsdl that is in MDS. The wsdl has call back interface also. I have some other services running fine based on the same wsdl.
    But I am getting 'Could not initialize bpel variable : inputVariable' when i compile my project. Kindly help me in this.
    Thanks,
    Sri

    Try the suggestions mentioned in the thread:
    Could not initialize variable. An error occurs while initializing BPEL .
    Thans,
    Navaneeth

  • BPEL Process returns "empty variable/expression result."

    Hi,
    I have an Asynchronous BPEL Process which uses a DB Adapter (which in turn uses a custom SQL Procedure) to insert a value in to a table and return a sequence value generated in the procedure back to the BPEL Process. The process inserts the value in to the table but the sequence is not returned back and i get the below error,
    <selectionFailure xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/">
    <part name="summary">
    <summary>
    empty variable/expression result.
    xpath variable/expression expression "/ns2:OutputParameters/ns2:X_NO" is empty at line 94, when attempting reading/copying it.
    Please make sure the variable/expression result "/ns2:OutputParameters/ns2:X_NO" is not empty.
    </summary>
    </part>
    </selectionFailure>
    If i see the process flow the invoke activity shows the sequence value is returned from the procedure but when the invoke activity passes that value to the Assign activity its lost and the above error is displayed.
    The details i see in Invoke activity is below,
    <messages>
    <Invoke_1_DBProcWrite_InputVariable>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="InputParameters">
    <InputParameters
    xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/APPS/SUR_NEW_BPEL_PROC/">
    <P_NAME>Vivek</P_NAME>
    </InputParameters>
    </part>
    </Invoke_1_DBProcWrite_InputVariable>
    <Invoke_1_DBProcWrite_OutputVariable>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="OutputParameters">
    <db:OutputParameters xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:db="http://xmlns.oracle.com/pcbpel/adapter/db/APPS/SUR_NEW_BPEL_PROC/">
    <X_NO>9</X_NO>
    </db:OutputParameters>
    </part>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    name="response-headers">[]</part>
    </Invoke_1_DBProcWrite_OutputVariable>
    </messages>
    I use Jdeveloper version 10.1.3.3.0.4157. I did not recieve this error in Jdeveloper 10.1.3.1.
    Please let me know how to resolve this issue.
    Regards, Suresh

    I have exactly the same problem!!!! I would appreciate someone from Product or other to explain why I can see the incoming variable being created but when XPath expression is attempted to extract a value so I can do an assignment I get a "empty variable/expression result".
    Using JDEV10.1.3.3 and SOA 10.1.3.3 advanced install. My process is receiving a R12 Business Event listed here:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <WF_EVENT_T xmlns="http://xmlns.oracle.com/xdb/APPS/BES_EVENT/BES_EVENT">
    <PRIORITY xmlns="">50</PRIORITY>
    <SEND_DATE xmlns="">2008-04-30T13:40:33.000-05:00</SEND_DATE>
    <RECEIVE_DATE xmlns="">2008-04-30T13:40:40.000-05:00</RECEIVE_DATE>
    <CORRELATION_ID xmlns="" />
    - <PARAMETER_LIST xmlns="">
    - <PARAMETER_LIST_ITEM>
    <NAME>BO_ID</NAME>
    <VALUE>123456</VALUE>
    </PARAMETER_LIST_ITEM>
    - <PARAMETER_LIST_ITEM>
    <NAME>#CURRENT_PHASE</NAME>
    <VALUE>201</VALUE>
    </PARAMETER_LIST_ITEM>
    </PARAMETER_LIST>
    <EVENT_NAME xmlns="">oracle.apps.ar.hz.PersonBO.create</EVENT_NAME>
    <EVENT_KEY xmlns="">777666</EVENT_KEY>
    <EVENT_DATA xmlns="" />
    - <FROM_AGENT xmlns="">
    <NAME>WF_BPEL_QAGENT</NAME>
    <SYSTEM>VIS12.US.ORACLE.COM</SYSTEM>
    </FROM_AGENT>
    <TO_AGENT xmlns="" />
    <ERROR_SUBSCRIPTION xmlns="">TBo0FQQPy6ngQKjAuQAXWA==</ERROR_SUBSCRIPTION>
    <ERROR_MESSAGE xmlns="" />
    <ERROR_STACK xmlns="" />
    </WF_EVENT_T>

  • Aassign xsi:nill values from element to BPEL variable - Urgent..Plz..

    Hi all,I have a BPEL process which calls a Webservice,and at the end it transforms the output of the Webservice to the Output Variable in my BPEL process,but the thing is this process retuns elements with xsi:nil="true" and I get an error which says
    *Could not initiate the BPEL process because the input xml is not well formed, the reason is :
    Error parsing envelope: (4, 3679) Namespace prefix &apos;xsi&apos; used but not declared. Please correct the input xml.*
    I have verified the WSLD,.bpel file,the xsd..they all have xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    Heres the code of the assign
    <from xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    variable="Invoke_P_getlV_OutputVariable"
    part="parameters"
    query="/ns7:getCViewResponse/ns7:getCViewReturn"/>
    <to xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    variable="outputVariable" part="payload"
    query="/ns1:GetOfferResponse/ns1:getCVResponse/ns1:getCViewReturn"/>
    Please temme how do I get this to wrk...I need to get this working immediatly..

    If you need to "clean" some xml from null values (empty tags) you can create an XSLT (like RemoveNullTags.xsl) with the following code:
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
    <xsl:apply-templates select="@*|node()"/>
    </xsl:template>
    <xsl:template match="@*|node()">
    <xsl:choose>
    <xsl:when test="normalize-space(.)">
    <xsl:copy>
    <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
    </xsl:when>
    <xsl:when test="count(./*)">
    <xsl:copy>
    <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
    </xsl:when>
    <xsl:otherwise>
    </xsl:otherwise>
    </xsl:choose>
    </xsl:template>
    </xsl:stylesheet>
    This xslt will remove all the empty tags on your XML. So after you create this and paste it on your project, you need to use it into an ASSIGN activity like this:
    <assign name="Remove_Nulls">
    <copy>
    <from expression="ora:processXSLT('RemoveNullTags.xsl',bpws:getVariableData('inputVariable','payload'))"/>
    <to variable="inputVariable" part="payload"
    query="/ns2:writeCollectedDeleteElement"/>
    </copy>
    <copy>
    <from expression="ora:processXSLT('RemoveNullTags.xsl',bpws:getVariableData('inputVariable','payload'))"/>
    <to variable="inputVariable" part="payload"
    query="/ns2:writeCollectedDeleteElement"/>
    </copy>
    </assign>
    As you can see in this sample, i make 2 copy operations because i have xml arrays, so i need a copy operation for each child the xml element have.
    HTH,
    Andres

  • How to put SOAP body in BPEL variable

    Hi everybody,
    I have a BPEL process which needs to pick up a SOAP-message from a queue, transform the body and send the result to a webservice.
    The process is running deployed and picks up the soap message. In the receive action I see the SOAP message - envolope, header and body - as expected (shown below).
    - <businessEventBody>
    - <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="body">
    - <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    - <SOAP-ENV:Header>
    <wsa:To>
    http://testhost/CCS/Service_Endpoint
    </wsa:To>
    - <wsa:From>
    <wsa:Address>
    http://localhost/CCS/Service_Endpoint
    </wsa:Address>
    - <wsa:Metadata>
    - <device xmlns:hl7="urn:hl7-org:v3" xmlns="urn:hl7-org:v3">
    <id root="1.3.6.1.4.1.25208.20.100.50" extension="CCSMESSAGING"/>
    </device>
    </wsa:Metadata>
    </wsa:From>
    <wsa:Action>
    urn:hl7-org:v3:CCS_POCD_IN009010CS14
    </wsa:Action>
    <wsa:MessageID>
    MSG_ID1208340800216
    </wsa:MessageID>
    </wsse:Security>
    </SOAP-ENV:Header>
    - <SOAP-ENV:Body>
    - <CCS_POCD_IN009010CS14 xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <id xsi:type="II" root="1.3.6.1.4.1.25208.20.100.30" extension="com.scandihealth.ccs.NoteInformerCS14com.csc.hat.collaboration.Collaboration@127.0.0.1:1208340800190:0.9747211212965656"/>
    <employerCCS_IdentifiedOrganization classCode="ORG" determinerCode="INSTANCE">
    <id xsi:type="II" root="1.2.2.1" extension="18573" displayable="false"/>
    <id xsi:type="II" root="1.3.6.1.4.1.25208.20.20" extension="5234102" displayable="false"/>
    <code xsi:type="CE" code="ENTERPRISE" codeSystem="1.3.6.1.4.1.25208.20.10.20" codeSystemName="CcsOrgUnitType" displayName="Enterprise"/>
    - <name xsi:type="EN" use="L">
    <given>88</given></name>
    - <name xsi:type="EN" use="AL">
    <given>mnemo-88</given>
    </name>
    - <name xsi:type="EN" use="C">
    <given>Enterprise 88</given>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    </part>
    </businessEventBody>
    Now what I want to do is simply assign the body to a variable as a string (using a copy operation), however all I get is a few scattered excerpts from the body of the message (as shown here).
    <javaInput>
    http://testhost/CCS/Service_Endpoint
    http://localhost/CCS/Service_Endpoint
    urn:hl7-org:v3:CCS_POCD_IN009010CS14
    MSG_ID1208340800216
    88
    mnemo-88
    Enterprise 88
    81.1
    mnemo-81.1
    Unit 81.1
    88
    mnemo-88
    Enterprise 88
    </javaInput>
    My FormatMessageToGS.bpel file is as shown here:
    <?xml version = "1.0" encoding = "UTF-8" ?>
    <process name="FormatMessageToGS"
    targetNamespace="http://xmlns.ccs.scandihealth.com/FormatMessageToGS"
    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:ns4="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:ns7="http://xmlns.oracle.com/pcbpel/adapter/opaque/"
    xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:bees="http://xmlns.oracle.com/pcbpel/adapter/jms/BusinessEventErrorService/"
    xmlns:ns5="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
    xmlns:ns6="http://com.scandihealth.ccs.webservices.messaging.common/CCSMessageServiceRemote.wsdl"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:ns1="http://com.scandihealth.ccs.webservices.task.common/CCSBPELTaskServiceRemote.wsdl"
    xmlns:ccstypes="http://ccs.scandihealth.com/workflow/types/"
    xmlns:ehdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.esb.server.headers.ESBHeaderFunctions"
    xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:ns2="http://com.scandihealth.ccs.webservices.security.common/CCSSecurityServiceRemote.wsdl"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    xmlns:jms="http://xmlns.oracle.com/pcbpel/adapter/jms/"
    xmlns:bes="http://xmlns.oracle.com/pcbpel/adapter/jms/BusinessEventService/">
    <bpelx:exec import="javax.xml.transform.*"/>
    <bpelx:exec import="javax.xml.transform.stream.*"/>
    <bpelx:exec import="java.io.*"/>
    <bpelx:exec import="java.util.*"/>
    <!--
    PARTNERLINKS
    List of services participating in this BPEL process
    -->
    <partnerLinks>
    <partnerLink name="BusinessEventService"
    partnerLinkType="bes:Consume_Message_plt"
    myRole="Consume_Message_role"/>
    </partnerLinks>
    <!--
    VARIABLES
    List of messages and XML documents used within this BPEL process
    -->
    <variables>
    <variable name="businessEventBody" messageType="ccstypes:body_msg"/>
    <variable name="businessEventInboundHeader"
    messageType="jms:InboundHeader_msg"/>
    <variable name="javaInput" type="xsd:string"/>
    <variable name="javaOutput" type="xsd:string"/>
    <variable name="FirstXSL" type="xsd:string"/>
    <variable name="SecondXSL" type="xsd:string"/>
    <variable name="SimplerXML" type="xsd:string"/>
    <variable name="OutputToGS" type="xsd:string"/>
    </variables>
    <!--
    ORCHESTRATION LOGIC
    Set of activities coordinating the flow of messages across the
    services integrated within this business process
    -->
    <sequence name="main">
    <receive name="ReceiveBusinessEvent" partnerLink="BusinessEventService"
    portType="bes:Consume_Message_ptt" operation="Consume_Message"
    variable="businessEventBody" createInstance="yes"
    bpelx:headerVariable="businessEventInboundHeader"/>
    <!-- <throw faultName="deliberateFault" /> -->
    <scope name="XSLT">
    <sequence name="Sequence_1">
    </scope>
    </sequence>
    </process>
    And my types.wsdl is like this:
    <definitions targetNamespace="http://ccs.scandihealth.com/workflow/types/"
    xmlns:tns="http://ccs.scandihealth.com/workflow/types/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <schema targetNamespace="http://ccs.scandihealth.com/workflow/types/"
    xmlns="http://www.w3.org/2001/XMLSchema">
    <element name="stringElement" type="string"/>
    <complexType name="ccsExceptionType">
    <sequence>
    <element name="faultString" type="string"/>
    <element name="detail" type="string"/>
              </sequence>
    </complexType>
    </schema>
    </types>
    <message name="body_msg">
    <part name="body" element="tns:stringElement"/>
    </message>
    <message name="createTaskResponseMessage"/>
    <message name="ccsExceptionMessage">
    <part name="ccsException" type="tns:ccsExceptionType"/>
    </message>
    </definitions>
    Does anybody have any idea as to what I am doing wrong, and more interesting how I can make it right?
    Any help is truly appreciated.
    Kind regards
    Aagaard

    How did you define headerID?
    You can also see an example here:
    http://java.net/projects/oraclesoasuite11g/pages/BPEL
    Arik

  • Error in Passing BPEL variable Contents to BPEL Transform (XSLT)

    Hi,
    Problem Statement:
    ·     I want to Transform data, from schema1 to schema2.
    ·     Schema1 is basically a collection lets say collection of A. in XML terms, it has multiple same type of child elements under the root element.
    ·     Schema2 associated with each child element of Schema1.
    ·     In the Loop, I want to iterate through the schema1 data and iteration count would be as much as number of child elements in it.
    ·     Pick one child element (using index in XPATH) and use it to associate with Schema2 elements.
    ·     In this process I wanted to pass 2 parameters to BPEL Transform activity using properties datatype. (ref: http://blogs.oracle.com/rammenon/2007/05/07)
    ·     However it is not realizing the parameters passed to it.
    Please also suggest me a location to upload the related code for any verification.
    Please suggest the flaw in this and suggestions to rectify.
    Thanks
    Regards
    Joy

    Example counting nodes.
    ora:countNodes('Invoke_FileSyncRead_SynchronousRead_OutputVariable','Root-Element','/ns1:Root-Element/ns1:SiteInfo')
    Set that to Integer variable $count.
    Then set new variable type integer $interator = 1.
    That will give you a proper loop counter for your payload.
    AS far as mapping only certain elements, I would just transform 1st, then pick out what you need with an explicit assign activity to whatever you want to pass that to.
    Hope that helps.

  • BPEL variable access problem - ORABPEL-02118

    Hi,
    I have a method which accesses the variable of a BPEL process. It worked well with the Soa Suite 10.1.3.1, but I re-install the SOA Suite with the Advanced installation and applied the 10.1.3.3 patch and now I have this error message:
    0 - ORABPEL-02118
    Variant not found.
    The variant "PatientRecordVariable" has not been declared in the current scope. All variants must be declared in the scope before being accessed.
    Please check that the variant "PatientRecordVariable" is properly declared; otherwise there may be a misspelling in the name of the variant.
    <2007-07-26 11:56:27,829> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "instance manager": [com.collaxa.cube.engine.EngineException: Variant not found.
    The variant "PatientRecordVariable" has not been declared in the current scope.  All variants must be declared in the scope before being accessed.
    Please check that the variant "PatientRecordVariable" is properly declared; otherwise there may be a misspelling in the name of the variant.
    ORABPEL-02118
    Variant not found.
    The variant "PatientRecordVariable" has not been declared in the current scope. All variants must be declared in the scope before being accessed.
    Please check that the variant "PatientRecordVariable" is properly declared; otherwise there may be a misspelling in the name of the variant.
         at com.collaxa.cube.engine.core.Scope.getVariantRV(Scope.java:522)
         at com.collaxa.cube.engine.CubeEngine.getFieldValue(CubeEngine.java:2956)
         at com.collaxa.cube.ejb.impl.InstanceManagerBean.getFieldValue(InstanceManagerBean.java:288)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAs(Subject.java:396)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:648)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at InstanceManagerBean_RemoteProxy_4bin6i8.getFieldValue(Unknown Source)
         at com.oracle.bpel.client.InstanceHandle.getField(InstanceHandle.java:229)
         at webUI.GetTaskData.doGet(GetTaskData.java:50)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    My code does the following calls:
    Locator locator = new Locator("default", "bpel");
    WhereCondition where = new WhereCondition(SQLDefs.CI_cikey + " = ?");
    where.setString(1, taskId);
    IInstanceHandle[] instances = locator.listInstances( where );
    IInstanceHandle instanceHandle = instances[0];
    System.out.println(instanceHandle.getTitle());
    HashMap inst = (HashMap)instanceHandle.getField("PatientRecordVariable");
    XMLElement dataXML = (XMLElement)inst.get("payload");
    String data = XMLHelper.printXML(dataXML);
    The problem is at the "getField" method. I was wondering if somebody encountered this error and know how to solve it. I think it should also be possible to access the variable directly from the database (I'm using XE) but I don't know in which table to look.
    Any help would be greatly appreciated. Thanks.
    Amir

    When I display the debugTrace message for the process instance using
    System.out.println(instanceHandle.getDebugTrace());
    it gives me this:
    <variant key="_$$process-start-time" type="long">1185481662531</variant>
    <variant key="_$$++is-sync-operation" type="boolean">false</variant>
    <variant key="++properties" id="1" ns1:type="ns2:HashMap">
    </variant>
    <variant key="_$$audit-trail-count" type="int">1</variant>
    <variant key="_$$audit-detail-count" type="int">0</variant>
    <variant key="_$$main-scope" id="2" xmlns:ns3="http://www.w3.org/2001/XMLSchema" ns1:type="ns3:string">BpPrc0.1</variant>
    <variant key="_$$operation-name" id="3" xmlns:ns4="http://www.w3.org/2001/XMLSchema" ns1:type="ns4:string">initiate</variant>
    <variant key="_$$variable-name" id="4" xmlns:ns5="http://www.w3.org/2001/XMLSchema" ns1:type="ns5:string">PatientRecordVariable</variant>
    <variant key="_$$++wi-global-table" id="5" xmlns:ns6="com.collaxa.cube.engine.core" ns1:type="ns6:WorkItemLookupTable2">
    <work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BpRcv0</node-id><scope-id>BpSeq0.3</scope-id><count-id>1</count-id></key><state>closed.finalized</state></work-item><work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BpAss1</node-id><scope-id>BpSeq0.3</scope-id><count-id>5</count-id></key><state>closed.finalized</state></work-item><work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BpInv0</node-id><scope-id>BpSeq0.3</scope-id><count-id>4</count-id></key><state>closed.finalized</state></work-item><work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BpInv1</node-id><scope-id>BpSeq0.3</scope-id><count-id>6</count-id></key><state>closed.finalized</state></work-item><work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BpAss0</node-id><scope-id>BpSeq0.3</scope-id><count-id>2</count-id></key><state>closed.finalized</state></work-item><work-item ns1:type="ns2:WorkItem">
    <key ns1:type="ns2:WorkItemKey">
    <instance-id>70017</instance-id><node-id>BxExe1</node-id><scope-id>BpSeq0.3</scope-id><count-id>3</count-id></key><state>closed.finalized</state></work-item></variant>
    <variant key="_$$audit-event-count" type="int">16</variant>
    </scope><object-store></object-store></scope-context></cube-instance><work-items></work-items></debug-trace>
    There is a variant element with the attribute key whose value is "_$$variable-name" and the element has the value "PatientRecordVariable". I don't know if this is related to my problem, but if it is, I still don't understant why it could not get the data of this variable.
    Is there any way to get bpel processes' variable data from the database? I browsed the tables but I haven't found them. Hope somebody knows it.
    Amir

  • Bpel variable

    HI,
    I am trying to create a variable in the bpel and the variable is of type 'Element'.Imported the schema file from MDS.when i am trying to compile,it is showing error as *Error(40): XML element "{http://oracle.com/service/B2BHeader}B2BHeader" of variable "Variable2" is not defined*.
    So,any suggestions would be great.
    Regards,
    Praveen

    Hi Praveen,
    Is the xsd you tried to use valid? Can you check by creating a dummy SOA composite in where a BPEL component is using a WSDL based on the xsd schema you try to use? Tried to deploy and see if this works. Of course in the BPEL component make sure you assign input to output to make it compile.
    Is your MDS correctly configured in adf-config.xml file? If your local MDS is point to the database make sure the schema is deployed to MDS. In case of file based make sure the xsd is stored in the correct MDS file directory.
    Thanks
    Sander

Maybe you are looking for

  • Using redirection operator ( ) in Runtime.exec()

    I am trying to execute a command "cat abc.txt > 123.log" from my Java program using Runtime.exec(). However, the exec() command isnt able to interpret ">" as an operator, instead it uses this as a string. Any suggestions on how I can run the above co

  • How to use table type in bulk collect

    Hi experts, How to use table type in bulk collect see the procedure used( oracle 10g) and error is PLS-00597: expression 'REQ_REC' in the INTO list is of wrong type CREATE OR REPLACE PROCEDURE SAMPLE_SP IS TYPE TYP_A AS OBJECT ( COLMN1 TABLE1.COLM1%T

  • Problems with E mail on my MAC using SAFARI

    When I click on the purple E mail button I then get onto the Login page. The toolbar then displays (for an instant only) British  Telecommunications PLC  highlighted in GREEN and then   signin1.bt.com. As I say the green highlighted part disappears -

  • Is there any 3rd party plugin that turn on native HDV editing feature?

    Hello, I love iMovie, but I'd really like to see native HDV editing feature. I guess Apple will never do this, so maybe there is some 3rd party plugin for iMovie that will allow to edit HDV without recompression?

  • CS5 Master Suite Education Version Multiple Licenses

    I want to purchase the CS5 Master Suite Education Version but I want 5 licenses. In the past this was possible to do and get a small discount. Is this still possible with CS5?