OSB Replace

Hi,
cant we do a replace action on the "fault" variable.
I was trying this and couldnt do.
Thanks.

You can replace the values of $fault variable (for example - Replace ./ctx:errorCode in variable fault with '500'). But you can not change the structure of fault variable.
$fault variable has a fixed defined schema and you can not replace its content with an XML which does not follow that schema. You can check the schema of $fault variable here:
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/userguide/context.html#wp1060634
Details section of $fault is of type xs:anyType and you can put any custom content there, apart from that you can change the values of errorCode and reason if needed.
That is one way to send fault back, you can of course define a SOAP Fault if you are using a WSDL based service. Remember that you will need to replace contents of $body and NOT $fault with the SOAP Fault XML that you want to send back.

Similar Messages

  • OSB replace action failed..

    very urgent help needed.
    Scenario:
    1. My proxy service (new wsdl based) calls business (legacy wsdl based).
    2. I want to transform input format from new format schema to legacy format schema.
    3. I write a Xquery and Replace ./* in variable body with Xquery. Binding variable is accepted as $body.
    4. Individually tested, works like a charm; but when proxy is exected-throws following error:
    BEA-382513: OSB Replace action failed updating variable "body": line 29, column 1: {err}XP0006: "element {http://schemas.xmlsoap.org/soap/envelope/}Body { {http://www.w3.org/2004/07/xpath-datatypes}untypedAny }": bad value for type element {http://myURL}SwapnilRequest { {http://www.w3.org/2001/XMLSchema}anyType }
    here myURL is namespace defined for input format "SwapnilRequest".
    In short, the content of variable "body" are not changed even after transformation.
    Please help.
    Thanks and Regards,
    Swapnil Kharwadkar.

    Dear Eric,
    Following is Xquery:
    (:: pragma bea:global-element-parameter parameter="$aMA_UpdateRQ1" element="ns0:AMA_UpdateRQ" location="AMA_UpdateRQ.xsd" ::)
    (:: pragma bea:schema-type-return type="ns1:ListOfAyLoyMemberPortalProspectTopElmt" location="AY%20LOY%20Member%20Portal%20Prospect_blore.wsdl" ::)
    declare namespace ay = "http://www.siebel.com/xml/AYRES%20Member%20Information%20–%20Long%20Portal";
    declare namespace com = "http://com.finnair";
    declare namespace asi = "http://siebel.com/asi/";
    declare namespace xf = "http://tempuri.org/GetNewCard_WithSiebel_XQuery/A_getProfile_Xquery/newResponse/";
    declare namespace pros="http://com.finnair/prospectProcessing/";
    declare function xf:A_blore_QueryByExample_Request($AMA_UpdateRQ as element(com:AMA_UpdateRQ))
    as element(asi:ListOfAyLoyMemberPortalProspectTopElmt) {
    let $AMA_UpdateRQ := $AMA_UpdateRQ
    return
    <asi:ListOfAyLoyMemberPortalProspectTopElmt>
    <ay:ListOfAyLoyMemberPortalProspect>
    <ay:Contact>
    <ay:Id>{ data($AMA_UpdateRQ/com:UniqueID/@ID) }</ay:Id>
    <ay:ContactId>{ data($AMA_UpdateRQ/com:UniqueID/@ID) }</ay:ContactId>
    </ay:Contact>
    </ay:ListOfAyLoyMemberPortalProspect>
    </asi:ListOfAyLoyMemberPortalProspectTopElmt>
    declare variable $AMA_UpdateRQ as element() external;
    xf:A_blore_QueryByExample_Request($AMA_UpdateRQ)

  • BEA-382513: OSB Replace action failed: bad value for type element anyType

    Hello, in OSB I get this strange error message on my XQUERY TRANSFORMATION.
    *<faultstring>BEA-382513: OSB Replace action failed updating variable "response":*
    com.bea.wli.common.xquery.XQueryException:
    *Error parsing XML: {err}XP0006: "*
    *element {http://xmlns.oracle.com/pcbpel/adapter/db/top/CS2AdapterSelectOffenePosten_v0_5}Cs2DebitorOpVieCollection*
    *{ {http://www.w3.org/2004/07/xpath-datatypes}untypedAny }":*
    bad value for type element
    *{http://xmlns.oracle.com/pcbpel/adapter/db/top/CS2AdapterSelectOffenePosten_v0_5}cs2RechungungenResponse*
    *{ {http://www.w3.org/2001/XMLSchema}anyType }*
    *</faultstring>*
    I'm a pl/sql developer and I have no idea what this error message is telling me.
    In this forum I'v read someting about a wrong namespace declaration. I can't see any wrong value on my xml (ok, I'm not the specialist here...)
    Maybe someone of you xquey cracks might have a look at my code?
    This is what I have:
    _1.) a XQuery variable called cs2RechnungenResponse with this content:_
    <cs2:Cs2DebitorOpVieCollection
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:cs2="http://xmlns.oracle.com/pcbpel/adapter/db/top/CS2AdapterSelectOffenePosten_v0_5">
         <cs2:Cs2DebitorOpVie>
              <cs2:f40Konto>333</cs2:f40Konto>
              <cs2:AMT_BEZEICHNUNG>Amt für Gesundheit</cs2:AMT_BEZEICHNUNG>
              <cs2:f40Belnr>555</cs2:f40Belnr>
              <cs2:f40Sohab>S</cs2:f40Sohab>
              <cs2:f40Dmbet>100</cs2:f40Dmbet>
              <cs2:f40Fadat>2011-05-05T00:00:00.000+02:00</cs2:f40Fadat>
              <cs2:f40Valut>2011-05-05T00:00:00.000+02:00</cs2:f40Valut>
              <cs2:f40Mahns/>
              <cs2:f40F40Sj>0</cs2:f40F40Sj>
         </cs2:Cs2DebitorOpVie>
    </cs2:Cs2DebitorOpVieCollection>
    _2. a xquery with this code:_
    (:: pragma bea:global-element-parameter parameter="$cs2RechnungenResponse" element="ns2:cs2RechnungenResponse" location="../adapters/cs2_adapters/xsd/CS2AdapterSelectOffenePosten_v0_5_table.xsd" ::)
    (:: pragma bea:global-element-return element="ns0:getDebitorRechnungResponse" location="../../interfaces/RechnungServiceTypes_v0_6.xsd" ::)
    declare namespace ns3 = "http://www.llv.li/common/types/v1";
    declare namespace ns2 = "http://xmlns.oracle.com/pcbpel/adapter/db/top/CS2AdapterSelectOffenePosten_v0_5";
    declare namespace ns1 = "http://www.llv.li/fin/types/v1";
    declare namespace ns0 = "http://www.llv.li/fin/services/rechnungService/v1";
    declare namespace xf = "http://tempuri.org/fin_sb/RechnungsService/transformations/CARI_CS_2DBAdpter_to_RechnungsServiceGetOffenePosten_v0_5/";
    declare function xf:CARI_CS_2DBAdpter_to_RechnungsServiceGetOffenePosten_v1_0($cs2RechnungenResponse as element(ns2:cs2RechnungenResponse))
    as element(ns0:getDebitorRechnungenResponse) {
    <ns0:getDebitorRechnungenResponse schemaVersion="0.6">
              if ($cs2RechnungenResponse/ns2:Cs2DebitorOpVie) then
              <ns0:debitorRechnungList>
         for $Cs2DebitorOpVie in $cs2RechnungenResponse/ns2:Cs2DebitorOpVie
         return
         <ns0:debitorRechnung>
              <ns1:peid>0</ns1:peid>
              <ns1:rechnungsnummer>{ data($Cs2DebitorOpVie/ns2:f40Belnr) }</ns1:rechnungsnummer>
              <ns1:rechnungsdatum>{ xs:date(fn-bea:remove-timezone-from-dateTime(data($Cs2DebitorOpVie/ns2:f40Fadat))) }</ns1:rechnungsdatum>
              <ns1:faelligAm>{ xs:date(fn-bea:remove-timezone-from-dateTime(data($Cs2DebitorOpVie/ns2:f40Valut))) }</ns1:faelligAm>
         <ns1:behoerde>{ data($Cs2DebitorOpVie/ns2:AMT_BEZEICHNUNG) }</ns1:behoerde>
         <ns1:positionList>
              <ns1:position>
                   <ns1:positionsnummer>1</ns1:positionsnummer>
                                                 <ns1:betrag>{ data($Cs2DebitorOpVie/ns2:f40Dmbet) }</ns1:betrag>
                                                 <ns1:waehrung>
                                                      <ns1:isoCode>CHF</ns1:isoCode>
                                                      <ns1:bezeichnung>Schweizer Franken</ns1:bezeichnung>
                                                 </ns1:waehrung>
              </ns1:position>
              </ns1:positionList>
         <ns1:status>offen</ns1:status>
              if ($Cs2DebitorOpVie/ns2:f40Mahns/text() > "") then
                   <ns1:mahnstufe>{ xs:int(data($Cs2DebitorOpVie/ns2:f40Mahns)) }</ns1:mahnstufe>
              else ()
         </ns0:debitorRechnung>
         </ns0:debitorRechnungList>
         else ()
    <ns0:resultatStatus>
         <ns3:code>Erfolgreich</ns3:code>
         <ns3:beschreibung>Rechnungen aus MFK fehlen</ns3:beschreibung>
    </ns0:resultatStatus>     
    </ns0:getDebitorRechnungenResponse>
    declare variable $cs2RechnungenResponse as element(ns2:cs2RechnungenResponse) external;
    xf:CARI_CS_2DBAdpter_to_RechnungsServiceGetOffenePosten_v1_0($cs2RechnungenResponse)
    _3. this should result in this response, but it doesn't_
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <v1:getDebitorRechnungenResponse schemaVersion="0.6" xmlns:v1="http://www.llv.li/fin/services/rechnungService/v1">
    <v1:debitorRechnungList>
    <v1:debitorRechnung>
    <v11:peid xmlns:v11="http://www.llv.li/fin/types/v1">333</v11:peid>
    <v11:rechnungsnummer xmlns:v11="http://www.llv.li/fin/types/v1">555</v11:rechnungsnummer>
    <v11:rechnungsdatum xmlns:v11="http://www.llv.li/fin/types/v1">2011-05-05</v11:rechnungsdatum>
    <v11:faelligAm xmlns:v11="http://www.llv.li/fin/types/v1">2011-05-05</v11:faelligAm>
    <v11:behoerde xmlns:v11="http://www.llv.li/fin/types/v1">Amt für Gesundheit</v11:behoerde>
    <v11:positionList xmlns:v11="http://www.llv.li/fin/types/v1">
    <v11:position>
    <v11:positionsnummer>1</v11:positionsnummer>
    <v11:betrag>100</v11:betrag>
    <v11:waehrung>
    <v11:isoCode>CHF</v11:isoCode>
    <v11:bezeichnung>Schweizer Franken</v11:bezeichnung>
    </v11:waehrung>
    </v11:position>
    </v11:positionList>
    <v11:status xmlns:v11="http://www.llv.li/fin/types/v1">offen</v11:status>
    </v1:debitorRechnung>
    </v1:debitorRechnungList>
    <v1:resultatStatus>
    <v11:code xmlns:v11="http://www.llv.li/common/types/v1">Erfolgreich</v11:code>
    <v11:beschreibung xmlns:v11="http://www.llv.li/common/types/v1">Rechnungen aus MFK fehlen</v11:beschreibung>
    </v1:resultatStatus>
    </v1:getDebitorRechnungenResponse>
    </soap-env:Body>
    </soapenv:Envelope>
    But I do not get this expectet result, all I get is the BEA-382513: OSB Replace action failed: bad value for type element anyType?
    Any help would be appreciated.
    Thanks
    Best regards
    rk

    cs2RechungungenResponse or cs2RechnungenResponse ? the error message says cs2RechungungenResponse, but the actual element is cs2RechnungenResponse (one less "u")

  • OSB JMS Consumer

    Hi Friends,
    I have a requirement where I need to develop a OSB service which will:
    1. Poll Message from JMS (A specific schema element)
    2. Write this message to DB using routing (JCA adapter, send schema as is to business service)
    I am able to poll JMS message in OSB, however while routing it to business service that will write to DB using JCA adapter I am facing following error.
    OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items
    Although I can print the JMS message by "$body/." meaning I have an element.
    Could you please shade some light on this?
    Thanks,
    Sachin

    Are you mediator for schema transformation? This error is faced mostly when source request schema fails to map destination schema (DB interface).

  • OSB download 250 MG file results in error Error parsing XML: {err}FORG0005

    Hi,
    Using OSB 11.1.1.5. I have service to download files from Oracle ECM. Running into an issue where the file size is over 250 MB service is failing. Giving me an error
    OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items
    I have service callout to get the binary content of the file and it's taking over 5 minutes and then this error. I also set Read Timeout and Connection Timeout to 20 seconds at the business service level
    but looks like it's not taking that timeout values and still waiting over 5 minutes before it dies. My JTA Timeout is set to 12 minutes. After service callout I have a log to write the output but it's not even getting there and throwing that error above
    How can I trap that kind of errors. How can I set timeout at service level i.e. if after 1 minute if the file is still downloading close the connection etc.
    I don't want to have some many open threads in the back ground as this service is being called in a loop to download files. Smaller files like 30 MG downloads fine but the larger ones are not.
    I have a error hndler at the root level but the error is not trapped there either. Looks like system errors are not getting trapped.
    So Just wondering if OSB is suitable to download that huge files.
    Thanks

    The reason for the error is the xquery is not able to find the values in the input... Check the input and namespaces...
    Try...
    <ns1:value1>{ data($addition1/ns0:value1) }</ns1:value1>
    <ns1:value2>{ data($addition1/ns0:value2) }</ns1:value2>Cheers,
    Vlad

  • OSB transformation error- BEA-382513- Error parsing XML

    Hi Gurus -
    I am struggling to fix one OSB Xquery transformation error
    <con:errorCode>BEA-382513</con:errorCode>
    <con:reason>OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items
    I am passing SIL formatted data to this transformation an expecting a transformation but its keep on failing, I have tested the transformation and thats looking good.
    This is my replace operation where I am doing transformation.
    Replace [ node contents ] of [ ./* ]
    in [ body ] with
    XQuery Resource: TestProject/Common/Transformation/XQJMS2DBTransformation
    Variable Names And Bindings:
    commonInterfaceLayout1 - $body/*:CommonInterfaceLayout
    transformation file
    (:: pragma bea:global-element-parameter parameter="$commonInterfaceLayout1" element="ns0:CommonInterfaceLayout" location="../../Common/Schema/CommonInterfaceLayout.xsd" ::)
    (:: pragma bea:global-element-return element="ns1:EaiAuditCollection" location="../../Common/Schema/XSD_InsertEAIAuditDBTable.xsd" ::)
    declare namespace ns1 = "http://xmlns.oracle.com/pcbpel/adapter/db/top/InsertEAIAuditDBTable";
    declare namespace ns0 = "http://eai.fpl.com/schema/CommonInterfaceLayout";
    declare namespace xf = "http://tempuri.org/ErrorHandlingR1V1/XQJMS2DB/";
    declare function xf:XQJMS2DB($commonInterfaceLayout1 as element(ns0:CommonInterfaceLayout))
    as element(ns1:EaiAuditCollection) {
    <ns1:EaiAuditCollection>
    <ns1:EaiAudit>
    <ns1:eaiAuditId></ns1:eaiAuditId>
    <ns1:messageId>{ data($commonInterfaceLayout1/ns0:Header/ns0:MessageId) }</ns1:messageId>
    <ns1:messageDate>{ data($commonInterfaceLayout1/ns0:Header/ns0:MessageReceivedDate) }</ns1:messageDate>
    <ns1:messageType>{ data($commonInterfaceLayout1/ns0:Header/ns0:MessageType) }</ns1:messageType>
    <ns1:messageSource>{ data($commonInterfaceLayout1/ns0:Header/ns0:MessageSource) }</ns1:messageSource>
    <ns1:messageTarget>{ data($commonInterfaceLayout1/ns0:Header/ns0:MessageTarget) }</ns1:messageTarget>
    <ns1:appUniqId>{ data($commonInterfaceLayout1/ns0:Header/ns0:ApplicationUniqueId) }</ns1:appUniqId>
    <ns1:payload>{ data($commonInterfaceLayout1/ns0:Body) }</ns1:payload>
    <ns1:componentName>{ data($commonInterfaceLayout1/ns0:Header/ns0:ComponentName) }</ns1:componentName>
    <ns1:clientId>{ data($commonInterfaceLayout1/ns0:Header/ns0:ClientId) }</ns1:clientId>
    <ns1:createDate>{ fn:current-date() }</ns1:createDate>
    <ns1:processFlag></ns1:processFlag>
    </ns1:EaiAudit>
    </ns1:EaiAuditCollection>
    declare variable $commonInterfaceLayout1 as element(ns0:CommonInterfaceLayout) external;
    xf:XQJMS2DB($commonInterfaceLayout1)
    pls advice whats wrong I am doing here.
    Edited by: KumarB on Feb 7, 2013 9:56 PM

    update - I dont see this error any more but transformation is not happening. as a result of transformation, i get same message as output .. no change in it.

  • Changing the namespace prefix in OSB body content

    I would like to change the namespace prefix of the namespace in the content of the Body in OSB (Replacing g: with dg:)
    For example:
    <g:Information>
    <g:firtName>John<g:firstName>
    <nc:date>1970-01-01<nc:date>
    </g:Information>
    should become
    <dg:Information>
    <dg:firtName>John<dg:firstName>
    <nc:date>1970-01-01<nc:date>
    </dg:Information>
    Any idea how can I do this?

    Re: Namespace replace/rename issue in ALSB
    Regards,
    Anuj

  • OSB - help in XQuery

    Hi,
    I am having a replace in proxy service to transform AIA format to custom format.
    I have a XQuery file for this.
    In Replace :
    XPath - .
    In variable - body
    Expression - browsed the xquery resource
    - in bind variables:
    variable name - createssalesorder1
    binding - $body (what should I give for binding??)
    Replace node contents
    The XQuery file is :
    (:: pragma bea:global-element-parameter parameter="$createSalesOrder1" element="ns5:CreateSalesOrder" location="../../aia_11_1/AIAComponents/EnterpriseObjectLibrary/Core/EBO/SalesOrder/V2/SalesOrderEBM.xsd" ::)
    (:: pragma bea:global-element-return element="ns1:order" location="../schemas/ean.ucc/order/Order.xsd" ::)
    declare namespace ns2 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/EBO/SalesOrder/V2";
    declare namespace ns1 = "urn:ean.ucc:order:2";
    declare namespace ns4 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2";
    declare namespace ns3 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/Common/V2";
    declare namespace ns0 = "urn:ean.ucc:2";
    declare namespace ns5 = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/SalesOrder/V2";
    declare namespace xf = "http://tempuri.org/df.om_1.0/transforms/AIASalesOrder2GS1OrderProxy/";
    declare function xf:AIASalesOrder2GS1OrderProxy($createSalesOrder1 as element(ns5:CreateSalesOrder))
    as element(ns1:order) {
    <ns1:order>
    <orderIdentification>
    <uniqueCreatorIdentification>{ fn:string($createSalesOrder1/ns4:Identification/ns4:ID/@schemeID) }</uniqueCreatorIdentification>
    <contentOwner>
    <additionalPartyIdentification>
    <additionalPartyIdentificationType>BUYER_ASSIGNED_IDENTIFIER_FOR_A_PARTY</additionalPartyIdentificationType>
    </additionalPartyIdentification>
    </contentOwner>
    </orderIdentification>
    <orderPartyInformation>
    <seller>
    <additionalPartyIdentification>
    <additionalPartyIdentificationType>SUPPLIER_ASSIGNED_IDENTIFIER_FOR_A_PARTY</additionalPartyIdentificationType>
    </additionalPartyIdentification>
    </seller>
    </orderPartyInformation>
    </ns1:order>
    declare variable $createSalesOrder1 as element(ns5:CreateSalesOrder) external;
    xf:AIASalesOrder2GS1OrderProxy($createSalesOrder1)
    When I test the proxy service using console, I get
         BEA-382513: OSB Replace action failed updating variable "body": Error parsing XML: {err}XP0006: "element {http://schemas.xmlsoap.org/soap/envelope/}Body { {http://www.w3.org/2004/07/xpath-datatypes}untypedAny }": bad value for type element {http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/SalesOrder/V2}CreateSalesOrder { {http://www.w3.org/2001/XMLSchema}anyType }
    I am new to XQuery and any help on where am I going wrong on this?
    Also is there an example/tutorial for the above scenario?
    Thanks
    Ganesh

    Hello Ganesh,
    Try with "$body/*" in the binding.
    If it does not work then please paste the input xml of the proxy here. Actualiy, your proxy's input xml must be having an element of type "ns5:CreateSalesOrder" and you have to give that element's X-path in Xquery binding.
    Regards,
    Anuj

  • OSB for-each working procedure.

    Hi,
    I am new to OSB, can some one explain how does this for-each works. I am totally confused it with java for-each. Please explain it with an example xml or what ever to iterate.
    Thanks,
    Raj.

    Hi,
    If you have a repeating element in your XML input (as shown in the below eg), then you can use for-each to get each EmployeeID and assign it to a different variable.
    for eg:
    <Employee>
    <EmployeeID>114505</EmployeeID>
    <EmployeeID>114506</EmployeeID>
    </Employee>You might be intrested in
    Re: OSB : Replace action inside a for loop
    Regards,
    Ramesh

  • Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items

    Hi ,
    Good Morning to all
    in osb replace action am using xquery transformation resource.
    source code of xquery is :
    ====================================================================================
    (:: pragma bea:global-element-parameter parameter="$addition1" element="ns0:Addition" location="../wsdl/NewWSDLFile.wsdl" ::)
    (:: pragma bea:global-element-return element="ns1:process" location="../bpelprocess1_client_ep.wsdl" ::)
    declare namespace ns1 = "http://xmlns.oracle.com/POProcessing/AdditionOSB/BPELProcess1";
    declare namespace ns0 = "http://www.example.org/NewWSDLFile/";
    declare namespace xf = "http://tempuri.org/ServiceCallout/trans/route/";
    declare function xf:route($addition1 as element(ns0:Addition))
    as element(ns1:process) {
    <ns1:process>
    <ns1:value1>{ data($addition1/value1) }</ns1:value1>
    <ns1:value2>{ data($addition1/value2) }</ns1:value2>
    </ns1:process>
    declare variable $addition1 as element(ns0:Addition) external;
    xf:route($addition1)
    =====================================================
    at the time of running "error is Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items " in replace action.
    how to resolve this problem...
    Thanks & Regards
    venky

    The reason for the error is the xquery is not able to find the values in the input... Check the input and namespaces...
    Try...
    <ns1:value1>{ data($addition1/ns0:value1) }</ns1:value1>
    <ns1:value2>{ data($addition1/ns0:value2) }</ns1:value2>Cheers,
    Vlad

  • Reg : xp20:current-dateTime() gives error

    Hi,
    When i use xp20:current-dateTime() function in XSLT 1.0 inside OSB ( replace activity ), it works fine when used alone ,but gives following error when used with dn:lookupvalue functio ( custom xpath function)
    BEA-382513: OSB Replace action failed updating variable "body":
    java.lang.NoSuchMethodException: For extension function, could not find method
    oracle.tip.pc.services.functions.Xpath20.current-dateTime([ExpressionContext,] ).
    Checked both static and instance methods.
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    Please let me know any other datetime function which gives current date time in the following format
    2012-05-23T06:00:11+00:00
    or plz let me knoiw the solution to the above error

    <?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="../xsd/CrediTransfer.xsd"/>
    <rootElement name="CreditTransferRequest" namespace="http://vodafone.com.mt/Siebel_Order_Creation"/>
    </source>
    </mapSources>
    <mapTargets>
    <target type="XSD">
    <schema location="../xsd/CrediTransfer.xsd"/>
    <rootElement name="CreditTransferResponse" namespace="http://vodafone.com.mt/Siebel_Order_Creation"/>
    </target>
    </mapTargets>
    <!-- GENERATED BY ORACLE XSL MAPPER 11.1.1.5.0(build 110418.1550.0174) AT [FRI APR 06 15:04:12 IST 2012]. -->
    ?>
    <xsl:stylesheet version="1.0"
    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:mhdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.mediator.service.common.functions.MediatorExtnFunction"
    xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
    xmlns:oraext="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dvm="http://www.sLabs.com/soa-utilities/osb/soa.utilities.dvm.LookupTable"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:med="http://schemas.oracle.com/mediator/xpath"
    xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:bpm="http://xmlns.oracle.com/bpmn20/extensions"
    xmlns:xdk="http://schemas.oracle.com/bpel/extension/xpath/function/xdk"
    xmlns:xref="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:bpmn="http://schemas.oracle.com/bpm/xpath"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:socket="http://www.oracle.com/XSL/Transform/java/oracle.tip.adapter.socket.ProtocolTranslator"
    xmlns:soc="http://vodafone.com.mt/Siebel_Order_Creation"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:con="http://www.bea.com/wli/sb/stages/transform/config"
    xmlns:fn="www.w3.org/2004/07/xpath-functions/"
    exclude-result-prefixes="xsi xsl xsd soc bpws xp20 mhdr bpel oraext dvm hwf med ids bpm xdk xref bpmn ora socket ldap con fn">
    <xsl:template match="/">
    <xsl:variable name="ErrorMessage" select="/con:message"/>
    <!--
    <xsl:variable name="ErrorMessageTwo" select="fn:substring(ErrorMessage,1,4)"/>
    -->
    <soc:CreditTransferResponse>
    <soc:return>
    <soc:StandardResponse>
    <soc:success>
    <xsl:value-of select="dvm:lookupValue('AbstractionLayer_errorCodes','ErrorCode','2','Success','DefaultValue')"/>
    </soc:success>
    <soc:returnCode>
    <xsl:value-of select="dvm:lookupValue('AbstractionLayer_errorCodes','ErrorCode','2','returnCode','DefaultValue')"/>
    </soc:returnCode>
    <soc:message>
    <xsl:value-of select="substring($ErrorMessage,1,4)"/>
    </soc:message>
    <!--
    <soc:message>
    <xsl:value-of select="dvm:lookupValue('AbstractionLayer_errorCodes','ErrorCode','2','Message','DefaultValue')"/>
    </soc:message>
    -->
    <soc:date>
    <xsl:value-of select="xp20:current-dateTime()"/>
    </soc:date>
    </soc:StandardResponse>
    </soc:return>
    </soc:CreditTransferResponse>
    </xsl:template>
    </xsl:stylesheet>

  • Inserting data into database using service callout

    Hi,
    Im using 3 service callout for calling 3 database projects in osb. Im getting output from first two service call outs. In last service callout i have to insert data into data base which is output from service callout. im getting fault while inserting data. Can any body help me with any samples for inserting data into data base which is output from another service callout
    BEA-382513: OSB Replace action failed updating variable "body": com.bea.wli.common.xquery.XQueryException: Error parsing XML: {err}XP0006: "element {http://www.w3.org/2003/05/soap-envelope}Body { {http://www.w3.org/2004/07/xpath-datatypes}untypedAny }": bad value for type element {http://xmlns.oracle.com/pcbpel/adapter/db/POC/NRICHMENT/}OutputParameters { {http://www.w3.org/2001/XMLSchema}anyType }

    Hi prabu,
    I tried with several inputs but im getting same error. How to map to data base input of third service call out with output values of second service call out?
    Any sample blogs

  • Replacing default namespace in OSB message flow

    I'm in the process of setting up a simple OSB proxy and could use some help figuring out how to change a default namespace in the response from the business service.
    The proxy and business service use different namespaces which we'll call "http://foo.com/namespace/proxy" and "http://foo.com/namespace/business". In my routing request message flow, the contents of $body look like this and I'm able to use a Rename action with XQuery expression "./sof:*" to change "http://foo.com/namespace/proxy" to "http://foo.com/namespace/business":
    <sof:Execute xmlns:sof="http://foo.com/namespace/proxy">
    <sof:adminName>MyAdaptor</sof:adminName>
    <sof:request>
    [escaped payload omitted]
    </sof:request>
    </sof:Execute>
    This works fine, but in the response message flow, I need to revert the namespace and am having difficulty because the response uses a default namespace instead of using a prefix:
    <ExecuteResponse xmlns="http://foo.com/namespace/business">
    <ExecuteResult>
    [escaped payload omitted]
    </ExecuteResult>
    </ExecuteResponse>
    If I define a prefix P2L in the expression editor to correspond to "http://foo.com/namespace/business", I'm able to reference the ExecuteResponse element as "./P2L:ExecuteResponse", but then I get stuck.
    If I try use a Rename action to change the namespace for "./P2L:*", only the ExecuteResponse element is renamed to <sof:ExecutResponse xmlns:sof="http://foo.com/namespace/proxy">. Upstream in the calling application, there's an XML stream reader exception because (I assume) ExecuteResult is not found and parsed.
    I also tried using a Replace action against "./P2L:ExecuteResponse/@xmlns" to replace its contents with "http://foo.com/namespace/proxy". I also tried "./P2L:ExecuteResponse/@P2L:xmlns". Neither worked.
    Can anyone tell me what I'm doing wrong, or suggest a different approach? Assume that changing the calling application or business service is not an option.
    Thanks!

    >
    If I define a prefix P2L in the expression editor to correspond to "http://foo.com/namespace/business", I'm able to reference the ExecuteResponse element as "./P2L:ExecuteResponse", but then I get stuck.
    If I try use a Rename action to change the namespace for "./P2L:*", only the ExecuteResponse element is renamed to <sof:ExecutResponse xmlns:sof="http://foo.com/namespace/proxy">. Upstream in the calling application, there's an XML stream reader exception because (I assume) ExecuteResult is not found and parsed.
    >
    You pattern "./P2L:\*" matches just one element so it's ok that the payload's namespace wasn't touched. If you want to rename namespace for all elements try "//P2L:*". However, I'm not sure whether this is what you want. Try do describe what you do, what you want and what you get instead.
    >
    I also tried using a Replace action against "./P2L:ExecuteResponse/@xmlns" to replace its contents with "http://foo.com/namespace/proxy". I also tried "./P2L:ExecuteResponse/@P2L:xmlns". Neither worked.
    >
    I think it's not a good approach to replace content of xmlns as this attribute is not a common xml attribute.

  • How to carry out Dynamic Replace action in OSb

    Hi all
    I want to do a dynamic replace in OSB.
    like
    Lets my input be :-
    <cli:AccountInquiryRequest xmlns:cli="http://client.accountInquiry.dto.cards.nab.cz.fc.ofss.com">
    <cli:requestUID>string</cli:requestUID>
    <cli:cardType>string</cli:cardType>
    <cli:AcctId>5</cli:AcctId>
    <cli:scr>AcctId</cli:scr>
    <cli:dest>requestUID</cli:dest>
    </cli:AccountInquiryRequest>
    So what i want to do is check for element name in <scr>(in this case AcctId) and then replace the contains of the <AcctId> with the contains of the element name given in <dest>(in this case its requestUID)
    so in this case i want to replace the contain of requestUID with AcctId .
    Please help !!!
    Thanks

    I think you need to determine the xpath used for replace at runtime.. You can try looking at xslt xalan:evaluate function for this.
    The function syntax is as :
    <xsl:value-of select="xalan:evaluate($XPath)"/>
    You need to construct $XPath to point to right xpath . e.g concat("$body/*:",$body/*:dest)
    This will make $XPath to = $body/*:requestUID
    You can then pass this xpath string to xalan:evaluate.

  • OSB, XSLT, Assign and Replace

    Hi
    We are using OSB and using Assign and Replace over our codes....
    Noticed 2 things:
    Using ASSIGN, created a non-referential variable.... (ie When I am working with a XML (ie $body), if I grab certain parts of it's element, the new variable is a copy of the element and its not a reference therefore any change in the variable does not reflect on $body)... Is this TRUE? Will using an XQUERY function/proc give me a referential context?
    Using a REPLACE/INSERT, the XPATH setting cannot accept a variable ie //targetlist/targetitem[{$idx}]/targetdata.... IS this TRUE? How can variables be used within XPATH?
    Regards,
    Dax

    >
    Noticed 2 things:
    Using ASSIGN, created a non-referential variable.... (ie When I am working with a XML (ie $body), if I grab certain parts of it's element, the new variable is a copy of the element and its not a reference therefore any change in the variable does not reflect on $body)... Is this TRUE?
    >
    This is correct. New variable is a copy of the element and its not a reference.
    >
    Will using an XQUERY function/proc give me a referential context?
    >
    Xquery will return a new thing. So, it will not give you a referential context.
    >
    Using a REPLACE/INSERT, the XPATH setting cannot accept a variable ie //targetlist/targetitem[{$idx}]/targetdata.... IS this TRUE? How can variables be used within XPATH?
    >
    Never tried this. Will have to check.
    By the way what exactly is the problem statement. What you want to do?

Maybe you are looking for

  • Ipod was corrupted i restored it now windows and itunes does not recognize

    one day i plugged my 80g classic in to charge and sync. itunes diagnosed my ipod as corrupted and said please click restore,so i did now my windows computer and itunes does not recognize it at all i have a new 1g shuffle and it works fine. wat do i d

  • Help- Changing iweb podcasting site and adding feedburner

    I set up a podcast with iweb then realized I wanted to change a few things. 1. I want to change the website name in iweb from "Site 2" to "Awake Podcast" When I do this it changes the feed, and I can't access the old feed. 2. I wanted to change the f

  • How to define ASM failure groups!

    Hi all, I have 4 disk on both disk controller SATA controller ASMDISKO1 ASMDISKP1 SCSI controller ASMDISKR1 ASMDISKS1 I created diskgroup test as below: CREATE DISKGROUP TEST EXTERNAL REDUNDANCY FAILGROUP controller1 DISK 'ORCL:ASMDISKO1', 'ORCL:ASMD

  • Testing a webservice proxy client.

    Hello, I am new to JEE and JAX-WS. I generated a client from the webservice interface. It automatically created all the java classes for me. I am writing a simple test class with "main method" to call this web service method. I get null pointer excep

  • I can't find my country in facetime or imessages?

    hello i have an ipod touch 4 i open facetime and imessages i sign in , then it tells me to choose a country or region but i can't find my country please help thank you