Help Needed: Issue in ora:parseEscapedXML function in BPEL

Hello All-
We are facing issue while using the XSLT Function ora:parseEscapedXML in SOA 11g. Following is our scenario:
1.     We are using DB Adapter to poll for records in the database. One of the fields in the polled records is a CLOB type which contains a XML message.
2.     Our requirement is to get the XML Message as a String in the BPEL Process, parse it to XML and then assign to Complex Type XML Element.
3.     We are using ora:parseEscapedXML function to achieve the same. However we are getting error "Empty Variable/Expression result. The XPATH variable or expression is empty"
If anybody has faced similar issues, kindly provide us the resolution/pointers on how to resolve it.
Thanks in advance. Please let me know if you need any additional information from my side.
Regards,
Dibya

Reading Xml file from clob column in the staging table
CLOB has to be treated as string in xsd/xml in BPEL. Hope you have read the following document http://download-east.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#CHDIEBJD. Still valid for 11g.

Similar Messages

  • How to use ora:parseEscapedXML() Function with String Content

    Hello,
    I am receiving a ResponseMessage that returns a string, but the content of the string is actually XML. I have tried to use the ora:parseEscapedXML() function to parses the string (see XML Fragment below) to return structured XML data that can be assigned to typed BPEL variables. The documentation is very limited for this (I've looked in the Developer Guide draft that is available at the OraBPEL site).
    2 customer records from XML literal fragment copied from string result:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <recordset>
    <customer>
    <CustNum>AROUT</CustNum>
    <CustLName>Hardy</CustLName>
    <CustFname>Thomas</CustFname>
    <CustEmail>[email protected]</CustEmail>
    <CustAddress>120 Hanover Sq.</CustAddress>
    <CustCity>London</CustCity>
    <CustRegion></CustRegion>
    <CustPostalCode>WA1 1DP</CustPostalCode>
    <CustCountry>UK</CustCountry>
    </customer>
    <customer>
    <CustNum>BSBEV</CustNum>
    <CustLName>Ashworth</CustLName>
    <CustFname>Victoria</CustFname>
    <CustEmail>Victoria.Ashworth@B&apos;s.com</CustEmail>
    <CustAddress>Fauntleroy Circus</CustAddress>
    <CustCity>London</CustCity>
    <CustRegion></CustRegion>
    <CustPostalCode>EC2 5NT</CustPostalCode>
    <CustCountry>UK</CustCountry>
    </customer>
    The copy rule for assigning CustNum to accountnumber that fails:
    <copy>
    <from expression="ora:parseEscapedXML(bpws:getVariableData('DataService_OutputVariable','invokeSpecMsgReturn','/recordset/customer/CustNum'))"/>
    <to variable="outputVariable" part="payload" query="/client:QueryResult/client:customer/client:accountNumber"/>
    </copy>
    Any help would be greatly appreciated.
    Thanks,
    Sean

    Hello,
    I am attempting to provide more information in order to hopefully get some better guidance here.
    1) The BPEL process I built receives input from a client that is one of city name or region name or postal code or country name and returns a list of customer records with their AccountNumber, LastName, FirstName, Email, Address, City, Region, PostalCode and Country. The BPEL flow invokes a packaged integration Web Service that retuns the records in a string whose content is XML (see XML fragment below).
    2) The string content returned is vaiable based on the input (i.e. city name="London")
    Two customer records from XML literal fragment copied from string result:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <recordset>
    <customer>
    <CustNum>AROUT</CustNum>
    <CustLName>Hardy</CustLName>
    <CustFname>Thomas</CustFname>
    <CustEmail>[email protected]</CustEmail>
    <CustAddress>120 Hanover Sq.</CustAddress>
    <CustCity>London</CustCity>
    <CustRegion></CustRegion>
    <CustPostalCode>WA1 1DP</CustPostalCode>
    <CustCountry>UK</CustCountry>
    </customer>
    <customer>
    <CustNum>BSBEV</CustNum>
    <CustLName>Ashworth</CustLName>
    <CustFname>Victoria</CustFname>
    <CustEmail>Victoria.Ashworth@B&apos;s.com</CustEmail>
    <CustAddress>Fauntleroy Circus</CustAddress>
    <CustCity>London</CustCity>
    <CustRegion></CustRegion>
    <CustPostalCode>EC2 5NT</CustPostalCode>
    <CustCountry>UK</CustCountry>
    </customer>
    I want to <assign> each record from the packaged integration service result (the string whose content is XML) to a complexType variable defined within the BPEL Process WSDL (see example below).
    XML fragment from BPEL WSDL:
    <element name="QueryResult" type="client:recordType"/>>
    <complexType name="recordType">
    <sequence>
    <element name="customer" type="client:customerType" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <complexType name="customerType">
    <sequence>
    <element name="accountNumber" type="string"/>
    <element name="lastName" type="string"/>      
    <element name="firstName" type="string"/>
    <element name="email" type="string"/>
    <element name="address" type="string"/>
    <element name="city" type="string"/>
    <element name="region" type="string"/>
    <element name="postalcode" type="string"/>
    <element name="country" type="string"/>
    </sequence>                         
    </complexType>
    I have read through the tutorial and reviwed the XPath Funtion example in the reference (C:\OraBPELPM_1\integration\bpelpm\orabpel\samples\references\XPathFunction), but I am stsill very unclear as to how to handle this. I would appreciate any and all help.
    Thanks,
    Sean

  • Help needed using content and structure functionality

    Several times now I have had users who wanted to move libraries or lists, etc. from one place within a site collection to another.
    The problem is that often, when they go into content and structure, select their source, the only action that appears is Delete, rather than also the copy or move functionality.
    Even when I connect to the farm with the farm account, I see the same issue - the copy and move actions are greyed out. The farm account is one of the site collection owners, as well as of course in the farm admin group.
    Are there certain types of things which cannot be copied or moved? One user is just trying to move a folder of files from a document library to a different location (from working to completed), while another user wants to move most of the files from an old
    project to a new project.
    I am having a tough time understanding why sometimes this works and sometimes it doesn't.

    Thank you for your answer. The user did try to use the windows explorer method, and got an error saying that the operation could not find the source.
    I appreciate the note about moving the files individually. I have suggested that.
    I also appreciate the caution about using move not copy if the versions are needed.
    In one case we have a user who is trying to consolidate 2 different sharepoint sites into 1 site.
    She has asked about moving one into the other.
    I presume that any moving that takes place will overwrite an object of the same name that exists on the other side? Or is there a prompt to the user before the overwrite takes place?
    Thank you so much for your help.

  • Help needed in calling a javascript function from a jsp

    Hey guys,
    I need help.
    In my jsp I have a field called date. When i get date field from the database, it is a concatination of date and time field, so I wrote a small javascript function to strip just the date part from this date and time value.
    The javascript function is
    function formatDate(fieldName)
              var timer=fieldName;
              timer = timer.substring(5,7)+"/"+timer.substring(8,10)+"/"+timer.substring(0,4);
              return timer;
    Now I want to call this javascript function from the input tag in jsp where I am displaying the value of date. Check below
    This is one way I tried to do:
    <input size="13" name="startDate" maxLength="255" value=<script>formatDate("<%=startDate%>")</script> onChange="checkDate(this)">
    I even tried this:
    <input size="13" name="startDate" maxLength="255" value="'formatDate(<%=startDate%>)'" onChange="checkDate(this)">
    But it dosen't work
    Please help. I am struggling on this for days.
    Thanks,
    Ruby

    Hey all you developers out there , Pleaseeee help me with this one.

  • Help needed for creating a bookmark function

    Hi there,
    I am creating an application which in a kind of way gives the user the possibilty to make the same things as he reads an ebook written in html as if he would read a normal book. He highlights some lines, he makes some bookmarks and he can take some notes. All the changes he makes are saved in a database
    I finished the highlighting function and now want to make the bookmark function. What I imagined is sth like the acrobat reader's bookmark manager so I will put it on the left side of a splitpane. The user will be able to add or delete a bookmark in the html ebook with a name of the bookmark and the link and these bookmarks will be saved in the database.
    Do you have any suggestions how I can solve this? Which api should I read/use, do you know some examples? How I can make bookbarks in some parts of the pages and not only the whole pages. I mean the the page will load after the press of the bookmark to go to a certain place in that page and not in the begging. In general some ideas how I have to work?
    Thanks

    It's a swing. I can send you the application if you want but it's 10 classes to post it here.

  • ITunes help needed, issue while restoring iOS device

    Hello everyone
    Today i decided to restore my iPod touch 5th generation, which was in DFU. While i was downloading the iPod firmware (1.3GB) suddenly the wifi stopped and itunes said that there was an error and so restarted the download from the beginning.
    The problem is that i cannot find out where the file wich I was downloading at the beginning is, considering that i was almost at the end of the download and Idon't want to have more that 1GB corrupted fiel on my hard disk.
    Can anyone tell me how to find out where it is and delete it?
    Thanks

    The files are located here: ~/Library/iTunes/iPod Software Updates
    Note: The tilde "~" represents your Home directory.

  • Ora:parseEscapedXML error when trying to execute

    Hi,
    I have tried implementing the ora:parseEscapedXML function, I have used the following expression to copy the data in the CODE node to a variable also called CODE.
    ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/client:TestXML2ProcessRequest/client:input','/Acc_Type/code'))
    I get the following error message:
    ORABPEL-09500 XPath expression failed to execute. Error while processing xpath expression, the expression is "ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/client:TestXML2ProcessRequest/client:input','//Acc_Type/code'))", the reason is FOTY0001: type error. Please verify the xpath query.
    I am not sure if the format of my expression is correct especially - '/Acc_Type/code'
    Thanks

    ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/client:testBPELProcessRequest/client:input'))
    This one is generated for me when i create the assign.
    I think the last part is wrong :
    ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/client:TestXML2ProcessRequest/client:input/somenamespaceheretoo:Acc_Type/somenamespaceheretoo:code'))
    does this one work?
    i think you need just 1 xpath query on the end

  • Java class containing parseEscapedXML function?

    I'm interested in using the ora:parseEscapedXML function in some Java code. What class implements this function, and what library contains that class?
    Thanks for your time,
    Paul Camann

    Hi,
    You could try to do this on your own.
    You need to write a piece of code that converts the escaped entities [&amp;&gt;&lt;&apos; etc] to their actual characters, and then write a simple DOM parsing logic to parse it into a document.

  • Pass XML inside ora:parseEscapedXML

    How to pass XML inside ora:parseEscapedXML ?? Like
    ora:parseEscapedXML(' <PersonalDetails><FirstName></FirstName><PreferredName></PreferredName><Nationality></Nationality></PersonalDetails>')
    It works fine. But problem is how to get variable values inside <FirstName></FirstName> ? Like <FirstName> some variable </FirstName>.
    Thanks

    Hi ,
    assign the xml content to the string variable like ex:ErrorData then call the ora:parseEscapedXML function like ora:parseEscapedXML(bpws:getVariableData('ErrorData')) to another string variable.
    ex with out parseEscapedXML ..the xml looks like this
    <ErrorDataStr>
    <ErrorDataStr xsi:type="ns:string">*<parameters xmlns:ns1="http://www.testing.com/ErrorReport" xmlns="http://www.testing.com/ErrorReport">*<ns1:item><ns1:ProcessInfo>n</ns1:ProcessInfo><ns1:BusinessProcessName>a</ns1:BusinessProcessName><ns1:BusinessProcessInstanceId>a</ns1:BusinessProcessInstanceId><ns1:BusinessProcessStep>a</ns1:BusinessProcessStep><ns1:ImplementationCode>ss</ns1:ImplementationCode><ns1:StatusCode>s</ns1:StatusCode><ns1:ErrorCode>s</ns1:ErrorCode><ns1:ErrorDescription>s</ns1:ErrorDescription><ns1:ErrorType>s</ns1:ErrorType><ns1:ErrorDateTime>3-oct-2011</ns1:ErrorDateTime></ns1:item></parameters></ErrorDataStr>
    </ErrorDataStr>
    using parseEscapedXML --xml file looks like this
    <ErrorDataStr>
    <ErrorDataStr>
    <ns1:item>
    <ns1:ProcessInfo>n</ns1:ProcessInfo>
    <ns1:BusinessProcessName>a</ns1:BusinessProcessName>
    <ns1:BusinessProcessInstanceId>a</ns1:BusinessProcessInstanceId>
    <ns1:BusinessProcessStep>a</ns1:BusinessProcessStep>
    <ns1:ImplementationCode>ss</ns1:ImplementationCode>
    <ns1:StatusCode>s</ns1:StatusCode>
    <ns1:ErrorCode>s</ns1:ErrorCode>
    <ns1:ErrorDescription>s</ns1:ErrorDescription>
    <ns1:ErrorType>s</ns1:ErrorType>
    <ns1:ErrorDateTime>3-oct-2011</ns1:ErrorDateTime>
    </ns1:item>
    </ErrorDataStr>
    </ErrorDataStr>

  • Urgent help needed; Database shutdown issues.

    Urgent help needed; Database shutdown issues.
    Hi all,
    I am trying to shutdown my SAP database and am facing the issues below, can someone please suggest how I can go about resolving this issue and restart the database?
    SQL> shutdown immediate
    ORA-24324: service handle not initialized
    ORA-24323: value not allowed
    ORA-01089: immediate shutdown in progress - no operations are permitted
    SQL> shutdown abort
    ORA-01031: insufficient privileges
    Thanks and regards,
    Iqbal

    Hi,
    check SAP Note 700548 - FAQ: Oracle authorizations
    also check Note 834917 - Oracle Database 10g: New database role SAPCONN
    regards,
    kaushal

  • Help needed in writing a function.

    I am using Oracle 11g and SQL plus. I am a complete newbie, so I need some help here in writing a function. I guess my question is more about writing the trigonometric functions within the function.
    latA, longA latB, longB // these are the four input parameters,
    theta = longA - longB
    distX = sin( latA * PI / 180) * sin ( latB * PI /180) + cos ( latA * PI/180) * cos ( latB * PI/180) * cos ( theta * PI / 180)
    distY = acos(distX) // this is arc cosine
    distZ = distY * 180 / PI // PI refers to the mathematical PI
    distP = distZ * 60 * 1.1515; // this value should be returned. Of course the intermediate variable names don't matter.
    Please help. Thanks.

    CREATE OR REPLACE FUNCTION fucntion_name(latA IN NUMBER, longA IN NUMBER, latB IN NUMBER, longB IN NUMBER) RETURN NUMBER
    IS
    pi      CONSTANT NUMBER:=3.14159;
    theta NUMBER;
    distX  NUMBER;
    distY  NUMBER;
    distZ  NUMBER;
    distP  NUMBER;
    BEGIN
    theta :=longA - longB;
    distX :=sin( latA * PI /180) * sin ( latB * PI /180) + cos ( latA * PI/180) * cos ( latB * PI/180) * cos ( theta * PI / 180);
    distY :=acos(distX); --this is arc cosine
    distZ :=distY * 180/PI;  --PI refers to the mathematical PI
    distP :=distZ * 60 * 1.1515; --this value should be returned. Of course the intermediate variable names don't matter.
    RETURN distP;
    END;Edited by: Ora on May 3, 2011 11:46 PM

  • Need to capture the output of parseEscapedXML() function in a variable

    Hi All,
    In my BPEL process, I am fetching the XML data from the database which is stored in a CLOB column, using the database adapter. As it is in a string type I am using parseEscapedXML() function to get the XML data out.
    I have done the following:
    Imported the XSD to the project. Created a variable of element type and in the type explorer , navigated to 'Project Schema Files' -> My .XSD file -> complex XML element. But when I use this variable in any of my process activities, I get the following compilation error:
    Error(58):
    [Error ORABPEL-10010]: unresolved element
    [Description]: in line 58 of "<bpel procedure path>", XML element "{http://schemas.xmlsoap.org/ws/2003/03/business-process/}OutboundPaymentInstruction" of variable "Variable_2" is not defined.
    [Potential fix]: Make sure the XML element "{http://schemas.xmlsoap.org/ws/2003/03/business-process/}OutboundPaymentInstruction" is defined in one of WSDLs that are referenced by the deployment descriptor.
    Which WSDL file is the error referring to (I use empty BPEL process as the template)
    Could anyone please let me know how do I create a variable which is of my XSD type and use the variable for further transformation.
    Thanks a lot.
    Regards,
    Prad

    Prad,
    Did you get this resolved? I am having the same issue and can not get it to work.
    Thanks
    Troy
    Message was edited by:
    user641994

  • Need HELP (Project Issue) : Having 3 individual VIs, datalogger.vi, start vi, amksms.vi done. (How to run the VIs in sequence order - datalogger start amksms combine into 1 VIs? )

    Need HELP (Project Issue) : Having 3 individual VIs, datalogger.vi, start vi, amksms.vi done.
    (How to run the VIs in sequence order - datalogger > start > amksms combine into 1 VIs? )

    VIs in icon.
    how would it able to run in the sequence order:
    data first, follow by start and lastly amk sms.
    Attachments:
    dsa.jpg ‏10 KB

  • Facing issues in using parseEscapedXML

    Hi All,
    I am getting a payload as input to the BPEL process. The payload is of type XML as given below
    <tro:XXXTicket>
    <!--Optional:
    --><tro:name>XXXX</tro:name>
    <!--Optional:
    --><tro:age>21</tro:age>
    </tro:XXXTicket>.
    I want to get the value of the name to a string variable.
    I am using parseEscapedXML to do this but i am facing an issue in this, the ouput which i get is like
    Optional XXXX
    Optional 21.
    I want only the value of nam which is XXXX.
    I have used the following XQUERY
    ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/ns3:FaultMessage'))
    Do I need to change something in the XQuery expression? I am new to BPEL so not sure how it works. Any help on this wil be highly thankful.

    Hi All,
    I am getting a payload as input to the BPEL process. The payload is of type XML as given below
    <tro:XXXTicket>
    <!--Optional:
    --><tro:name>XXXX</tro:name>
    <!--Optional:
    --><tro:age>21</tro:age>
    </tro:XXXTicket>.
    I want to get the value of the name to a string variable.
    I am using parseEscapedXML to do this but i am facing an issue in this, the ouput which i get is like
    Optional XXXX
    Optional 21.
    I want only the value of nam which is XXXX.
    I have used the following XQUERY
    ora:parseEscapedXML(bpws:getVariableData('inputVariable','payload','/ns3:FaultMessage'))
    Do I need to change something in the XQuery expression? I am new to BPEL so not sure how it works. Any help on this wil be highly thankful.

  • Help needed with Vista 64 Ultimate

    "Help needed with Vista 64 UltimateI I need some help in getting XFI Dolby digital to work
    Okay so i went out and I bought a yamaha 630BL reciever, a digital coaxial s/pdif, and a 3.5mm phono plug to fit perfectly to my XFI Extreme Music
    -The audio plays fine and reports as a PCM stream when I play it normally, but I can't get dolby digital or DTS to enable for some reason eventhough I bought the DDL & DTS Connect Pack for $4.72
    When I click dolby digital li've in DDL it jumps back up to off and has this [The operation was unsuccessful. Please try again or reinstall the application].
    Message Edited by Fuzion64 on 03-06-2009 05:33 AMS/PDIF I/O was enabled under speakers in control panel/sound, but S/PDIF Out function was totally disabled
    once I set this to enabled Dolby and DTS went acti've.
    I also have a question on 5. and Vista 64
    -When I game I normally use headphones in game mode or 2. with my headphones, the reason for this is if I set it on 5. I get sounds coming out of all of the wrong channels.
    Now when I watch movies or listen to music I switch to 5. sound in entertainment mode, but to make this work properly I have to open CMSS-3D. I then change it from xpand to stereo and put the slider at even center for 50%. If I use the default xpand mode the audio is way off coming out of all of the wrong channels.
    How do I make 5. render properly on vista

    We ended up getting iTunes cleanly uninstalled and were able to re-install without issue.  All is now mostly well.
    Peace...

Maybe you are looking for