Error in transformation in OSB
Hi all,
I am getting following error in transformation in OSB console:
<con:reason>
OSB Assign action failed updating variable "PaymentRequestsPCMToEBS": com.bea.wli.common.xquery.XQueryException: 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/pcbpel/adapter/db/top/PollPaymentStatusDB}StgPcmInPaymentReqCollection { {http://www.w3.org/2001/XMLSchema}anyType }
</con:reason>
If I test the same in OEPE then there are no errors.
Here is the payload:
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
<pay:InputParameters xmlns:pay="http://xmlns.oracle.com/pcbpel/adapter/db/sp/PaymentStatus">
<!--Optional:-->
<pay:P_INT_NAME>string</pay:P_INT_NAME>
<!--Optional:-->
<pay:P_SOURCE_MESSAGE_REF>string</pay:P_SOURCE_MESSAGE_REF>
<!--Optional:-->
<pay:P_SOURCE_ENTITY_REF>string</pay:P_SOURCE_ENTITY_REF>
<!--Optional:-->
<pay:P_HEADER_REC>
<!--Optional:-->
<pay:INTERFACE_SOURCE_CODE>string</pay:INTERFACE_SOURCE_CODE>
<!--Optional:-->
<pay:BATCH_ID>string</pay:BATCH_ID>
<!--Optional:-->
<pay:GROUP_CODE>string</pay:GROUP_CODE>
<!--Optional:-->
<pay:HEADER_DESCRIPTION>string</pay:HEADER_DESCRIPTION>
<!--Optional:-->
<pay:PR_NUMBER>string</pay:PR_NUMBER>
<!--Optional:-->
<pay:HEADER_ATTRIBUTE3>string</pay:HEADER_ATTRIBUTE3>
<!--Optional:-->
<pay:HEADER_ATTRIBUTE4>string</pay:HEADER_ATTRIBUTE4>
<!--Optional:-->
<pay:NOTE_TO_BUYER>string</pay:NOTE_TO_BUYER>
<!--Optional:-->
<pay:DELIVER_TO_REQUESTOR_NAME>string</pay:DELIVER_TO_REQUESTOR_NAME>
<!--Optional:-->
<pay:CURRENCY_CODE>string</pay:CURRENCY_CODE>
<!--Optional:-->
<pay:EXPENDITURE_ORGANIZATION_CODE>string</pay:EXPENDITURE_ORGANIZATION_CODE>
<!--Optional:-->
<pay:ORGANIZATION_CODE>string</pay:ORGANIZATION_CODE>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_NAME>string</pay:SUGGESTED_VENDOR_NAME>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_ID>1000.00</pay:SUGGESTED_VENDOR_ID>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_SITE>string</pay:SUGGESTED_VENDOR_SITE>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_SITE_ID>1000.00</pay:SUGGESTED_VENDOR_SITE_ID>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_CONTACT>string</pay:SUGGESTED_VENDOR_CONTACT>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_CONTACT_ID>1000.00</pay:SUGGESTED_VENDOR_CONTACT_ID>
<!--Optional:-->
<pay:SUGGESTED_VENDOR_PHONE>string</pay:SUGGESTED_VENDOR_PHONE>
<!--Optional:-->
<pay:ACCRUAL_ACCOUNT_ID>1000.00</pay:ACCRUAL_ACCOUNT_ID>
<!--Optional:-->
<pay:VARIANCE_ACCOUNT_ID>1000.00</pay:VARIANCE_ACCOUNT_ID>
<!--Optional:-->
<pay:BUDGET_ACCOUNT_ID>1000.00</pay:BUDGET_ACCOUNT_ID>
<!--Optional:-->
<pay:AMOUNT>1000.00</pay:AMOUNT>
<!--Optional:-->
<pay:CERTIFIED_DATE>2008-09-29T02:49:45</pay:CERTIFIED_DATE>
</pay:P_HEADER_REC>
<!--Optional:-->
<pay:P_LINES_TAB>
<!--Zero or more repetitions:-->
<pay:P_LINES_TAB_ITEM>
<!--Optional:-->
<pay:QUANTITY>1000.00</pay:QUANTITY>
<!--Optional:-->
<pay:UNIT_OF_MEASURE>string</pay:UNIT_OF_MEASURE>
<!--Optional:-->
<pay:UNIT_PRICE>1000.00</pay:UNIT_PRICE>
<!--Optional:-->
<pay:ITEM_SEGMENT1>string</pay:ITEM_SEGMENT1>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT1>string</pay:CHARGE_ACCOUNT_SEGMENT1>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT2>string</pay:CHARGE_ACCOUNT_SEGMENT2>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT3>string</pay:CHARGE_ACCOUNT_SEGMENT3>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT4>string</pay:CHARGE_ACCOUNT_SEGMENT4>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT5>string</pay:CHARGE_ACCOUNT_SEGMENT5>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT6>string</pay:CHARGE_ACCOUNT_SEGMENT6>
<!--Optional:-->
<pay:CHARGE_ACCOUNT_SEGMENT7>string</pay:CHARGE_ACCOUNT_SEGMENT7>
<!--Optional:-->
<pay:PROJECT_NUM>string</pay:PROJECT_NUM>
<!--Optional:-->
<pay:TASK_NUM>string</pay:TASK_NUM>
<!--Optional:-->
<pay:EXPENDITURE_TYPE>string</pay:EXPENDITURE_TYPE>
<!--Optional:-->
<pay:DESTINATION_ORGANIZATION_CODE>str</pay:DESTINATION_ORGANIZATION_CODE>
<!--Optional:-->
<pay:LINE_ATTRIBUTE2>string</pay:LINE_ATTRIBUTE2>
<!--Optional:-->
<pay:NEED_BY_DATE>2014-09-19T00:18:33</pay:NEED_BY_DATE>
<!--Optional:-->
<pay:DISTRIBUTION_ATTRIBUTE5>string</pay:DISTRIBUTION_ATTRIBUTE5>
<!--Optional:-->
<pay:CURRENCY_UNIT_PRICE>1000.00</pay:CURRENCY_UNIT_PRICE>
<!--Optional:-->
<pay:CURRENCY_AMOUNT>1000.00</pay:CURRENCY_AMOUNT>
<!--Optional:-->
<pay:ITEM_DESCRIPTION>string</pay:ITEM_DESCRIPTION>
<!--Optional:-->
<pay:CATEGORY_SEGMENT1>string</pay:CATEGORY_SEGMENT1>
<!--Optional:-->
<pay:TAX_CODE>string</pay:TAX_CODE>
<!--Optional:-->
<pay:DISTRIBUTION_ATTRIBUTE9>string</pay:DISTRIBUTION_ATTRIBUTE9>
<!--Optional:-->
<pay:REMARKS>string</pay:REMARKS>
<!--Optional:-->
<pay:LIABLE_FOR_WHT>string</pay:LIABLE_FOR_WHT>
</pay:P_LINES_TAB_ITEM>
</pay:P_LINES_TAB>
</pay:InputParameters>
In transformation I am using following code for converting String to Decimal
for $vendorSiteId in $stgPcmInPaymentReqCollection1/ns1:StgPcmInPaymentReq[1]/ns1:vendorSiteId
return
<ns0:SUGGESTED_VENDOR_SITE_ID>{ xs:decimal(data($vendorSiteId)) }</ns0:SUGGESTED_VENDOR_SITE_ID>
Please let me know if I am missing anything.
your payload doesn't seem to be correct.
if you're trying to parse a soap envelop i would expect a soap:Body tag
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
<soap:Body>
<pay:InputParameters xmlns:pay="http://xmlns.oracle.com/pcbpel/adapter/db/sp/PaymentStatus">
</soap:Body>
Similar Messages
-
Hi all,
I am new to OSB. I am having trouble to understand how to do XSL transformation in OSB.
I have created a business service which targets wsdl with a particular schema for the input message. I have created a separate wsdl for the proxy service with another schema the input message.
I have to invoke the business service from proxy service. For this, I have added a route node and then a routing activity. In the request line of the routing activity i have used an assign where i will use XSLT to map input message of the proxy wsdl to the input message of the business service.
How do we access other variables when creating an XSLT?
Is my approach to the problem correct?
JohnHi,
I am doing that in an replace action.
In my flow I have the proxy service, then a pipeline, then I have the route.
In the pipeline I have replaced the input request using a XQuery transformation. When I test it, I see the input is coming till the route.
But the same pay load is valid and workin if I pass it when I invoke the route service independently. when i use it in the flow its not working.
Simply it says the system error
Below is the complete trace data
(receiving request)
Initial Message Context
added $body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<proj:alertReportDataRequestMessage xmlns:proj="http://www.projgis.org/PROJGISMessageSchema">
<proj:header>
<proj:RequestId>3333</proj:RequestId>
<proj:ReqTransactionId>333</proj:ReqTransactionId>
<proj:ConsumerId>string</proj:ConsumerId>
<proj:ReqTimestamp>2008-09-29T07:19:45</proj:ReqTimestamp>
</proj:header>
<proj:NameOfTenant>string</proj:NameOfTenant>
<proj:AddressOfTenant>string</proj:AddressOfTenant>
<proj:RentalAmount>string</proj:RentalAmount>
<proj:StartDateOfRent>2014-09-19T04:48:33</proj:StartDateOfRent>
<proj:EndDateOfRent>2006-08-19T22:57:14+05:30</proj:EndDateOfRent>
<proj:SalesOfOrder>string</proj:SalesOfOrder>
</proj:alertReportDataRequestMessage>
</soapenv:Body>
added $header
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
added $inbound
<con:endpoint name="ProxyService$PROJGISProject$PROXYSERVICE$GetRentalExpiryAlertsData" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>insertClientReport</con:operation>
</con:service>
<con:transport>
<con:uri>
/PROJGISProject/PROXYSERVICE/GetRentalExpiryAlertsData
</con:uri>
<con:mode>request-response</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="http:HttpRequestMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
<http:SOAPAction>
"http://xmlns.bodhtree.com/GetRentalExpiryAlertsData/insertClientReport"
</http:SOAPAction>
</tran:headers>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="http:HttpResponseMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpResponseHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml</http:Content-Type>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
</con:response>
</con:transport>
<con:security>
<con:transportClient>
<con:username><anonymous></con:username>
</con:transportClient>
</con:security>
</con:endpoint>
added $messageID
2570677769696620240-29ef401f.12cef26de6e.-7ef1
PipelinePairNode1
stage2
Message Context Changes
changed $body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<ins:ClientReportCollection xmlns:ins="http://xmlns.oracle.com/pcbpel/adapter/db/top/InsertClientReportTable">
<ins:ClientReport>
<ins:alertNo>1</ins:alertNo>
<ins:tenentName>string</ins:tenentName>
<ins:address>string</ins:address>
<ins:rentalAmt>string</ins:rentalAmt>
<ins:startDate>2014-09-19T04:48:33</ins:startDate>
<ins:endDate>2006-08-19T22:57:14+05:30</ins:endDate>
<ins:salesDocument>string</ins:salesDocument>
<ins:transId>333</ins:transId>
</ins:ClientReport>
</ins:ClientReportCollection>
</soapenv:Body>
changed $inbound
<con:endpoint name="ProxyService$PROJGISProject$PROXYSERVICE$GetRentalExpiryAlertsData" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>insert</con:operation>
</con:service>
<con:transport>
<con:uri>
/PROJGISProject/PROXYSERVICE/GetRentalExpiryAlertsDataPush
</con:uri>
<con:mode>request</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="http:HttpRequestMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
<http:SOAPAction>
"http://xmlns.bodhtree.com/GetRentalExpiryAlertsData/insertClientReport"
</http:SOAPAction>
</tran:headers>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="http:HttpResponseMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpResponseHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml</http:Content-Type>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
</con:response>
</con:transport>
<con:security>
<con:transportClient>
<con:username><anonymous></con:username>
</con:transportClient>
</con:security>
</con:endpoint>
changed $header
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
RouteNode1
Routed Service
Route to: "GetRentalExpiryAlertsDataPush"
$outbound:
<con:endpoint name="ProxyService$PROJGISProject$PROXYSERVICE$GetRentalExpiryAlertsDataPush" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>insertClientReport</con:operation>
</con:service>
<con:transport>
<con:mode>request</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="http:HttpRequestMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml</http:Content-Type>
</tran:headers>
</con:request>
</con:transport>
<con:security>
<con:doOutboundWss>false</con:doOutboundWss>
</con:security>
</con:endpoint>
$body (request):
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<ins:ClientReportCollection xmlns:ins="http://xmlns.oracle.com/pcbpel/adapter/db/top/InsertClientReportTable">
<ins:ClientReport>
<ins:alertNo>1</ins:alertNo>
<ins:tenentName>string</ins:tenentName>
<ins:address>string</ins:address>
<ins:rentalAmt>string</ins:rentalAmt>
<ins:startDate>2014-09-19T04:48:33</ins:startDate>
<ins:endDate>2006-08-19T22:57:14+05:30</ins:endDate>
<ins:salesDocument>string</ins:salesDocument>
<ins:transId>333</ins:transId>
</ins:ClientReport>
</ins:ClientReportCollection>
</soapenv:Body>
$header (request):
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
$attachments (request):
<con:attachments xmlns:con="http://www.bea.com/wli/sb/context"/>
Message Context Changes
added $outbound
<con:endpoint name="ProxyService$PROJGISProject$PROXYSERVICE$GetRentalExpiryAlertsDataPush" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>insertClientReport</con:operation>
</con:service>
<con:transport>
<con:uri>
/PROJGISProject/PROXYSERVICE/GetRentalExpiryAlertsDataPush
</con:uri>
<con:mode>request</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="http:HttpRequestMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
</tran:headers>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="http:HttpResponseMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpResponseHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml</http:Content-Type>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">1</tran:response-code>
</con:response>
</con:transport>
<con:security>
<con:doOutboundWss>false</con:doOutboundWss>
</con:security>
</con:endpoint>
changed $body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<ins:ClientReportCollection xmlns:ins="http://xmlns.oracle.com/pcbpel/adapter/db/top/InsertClientReportTable">
<ins:ClientReport>
<ins:alertNo>1</ins:alertNo>
<ins:tenentName>string</ins:tenentName>
<ins:address>string</ins:address>
<ins:rentalAmt>string</ins:rentalAmt>
<ins:startDate>2014-09-19T04:48:33</ins:startDate>
<ins:endDate>2006-08-19T22:57:14+05:30</ins:endDate>
<ins:salesDocument>string</ins:salesDocument>
<ins:transId>333</ins:transId>
</ins:ClientReport>
</ins:ClientReportCollection>
</soapenv:Body>
changed $inbound
<con:endpoint name="ProxyService$PROJGISProject$PROXYSERVICE$GetRentalExpiryAlertsData" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>insert</con:operation>
</con:service>
<con:transport>
<con:uri>
/PROJGISProject/PROXYSERVICE/GetRentalExpiryAlertsDataPush
</con:uri>
<con:mode>request</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="http:HttpRequestMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
<http:SOAPAction>
"http://xmlns.bodhtree.com/GetRentalExpiryAlertsData/insertClientReport"
</http:SOAPAction>
</tran:headers>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="http:HttpResponseMetaData" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="http:HttpResponseHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<http:Content-Type>text/xml</http:Content-Type>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
</con:response>
</con:transport>
<con:security>
<con:transportClient>
<con:username><anonymous></con:username>
</con:transportClient>
</con:security>
</con:endpoint>
changed $header
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
Service Error Handler
$fault: <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380000</con:errorCode>
<con:location>
<con:node>RouteNode1</con:node>
<con:path>response-pipeline</con:path>
</con:location>
</con:fault>
System Error Handler
$fault: <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380000</con:errorCode>
<con:location>
<con:node>RouteNode1</con:node>
<con:path>response-pipeline</con:path>
</con:location>
</con:fault>
Is there any place where I can refer how to work with passing data from current flow to the next flow.
Do i need to do the transformation before invoking the route, or inside the route service request pipeline?
Do I need to change the method, URI etc as wells? before invoking the routing?
--Khaleel -
Error while transforming XML in mediator
I have a mediator on my composite that routes from a webservice to an ADF-BC Service.
I mapped the input from my webservice to the input of my ADF BC SDO. That works. When i look in the enterprise manager, the parameters are routed correctly.
The service will return a record so i need a transformation from the SDO to the webservice. When i create this, and test the transformation i get a transformation failed error.
When in JDeveloper, you can test the XSL and let JDev generate an XML to test the XSL. With that XML it works but when i look at the payload in the enterprise manager of my service, it looks completly different.
This is the error i see in my EM: Error in transforming message part "parameters" using "xsl/getUserResponse_To_getUserResponse.xsl"
here is an example of the XML generated by JDev that WORKS with the XSL:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ns4:getUserResponse xmlns:ns4="http://myserver.com/">
<return>
<classificationCode>17</classificationCode>
<companyAddress>14</companyAddress>
<companyVAT>CompanyVat1</companyVAT>
<createdBy>CreatedBy21</createdBy>
<creation>2010-09-15T09:32:31.314</creation>
<dn>Dn22</dn>
<email>Email8</email>
<firstLanguage>FirstLanguage9</firstLanguage>
<firstName>Firstname3</firstName>
<jobFunction>JobFunction18</jobFunction>
<lastModification>2010-09-15T09:32:31.314</lastModification>
<lastModifiedBy>LastModifiedBy20</lastModifiedBy>
<lastName>Lastname4</lastName>
<login>Login2</login>
<mobile>Mobile12</mobile>
<password>Password5</password>
<personalWorkAddress>15</personalWorkAddress>
<photo>MTY=</photo>
<remarks>Remarks19</remarks>
<secondLanguage>SecondLanguage10</secondLanguage>
<status>13</status>
<telephoneWork>TelephoneWork11</telephoneWork>
<title>Title6</title>
<userContact>7</userContact>
<validFrom>2010-09-15T09:32:31.314</validFrom>
<validTo>2010-09-15T09:32:31.314</validTo>
</return>
</ns4:getUserResponse>This is the payload i see in the enterprise manager that will not get transformed:
<message>
<parts>
<part name="parameters">
<ns2:getUserResponse>
<ns2:result>
<ns1:CompanyVat>1234</ns1:CompanyVat>
<ns1:Login>Yannick</ns1:Login>
<ns1:Firstname>Yannick</ns1:Firstname>
<ns1:Lastname>Ongena</ns1:Lastname>
<ns1:Password xsi:nil="true"/>
<ns1:Title xsi:nil="true"/>
<ns1:UserContact xsi:nil="true"/>
<ns1:Email xsi:nil="true"/>
<ns1:FirstLanguage xsi:nil="true"/>
<ns1:SecondLanguage xsi:nil="true"/>
<ns1:TelephoneWork xsi:nil="true"/>
<ns1:Mobile xsi:nil="true"/>
<ns1:Status xsi:nil="true"/>
<ns1:CompanyAddress xsi:nil="true"/>
<ns1:PersonalWorkAddress xsi:nil="true"/>
<ns1:Classification xsi:nil="true"/>
<ns1:JobFunction xsi:nil="true"/>
<ns1:Remarks xsi:nil="true"/>
<ns1:ValidFrom>2010-09-14T08:52:05.0Z</ns1:ValidFrom>
<ns1:ValidTo>2010-09-14T08:52:05.0Z</ns1:ValidTo>
<ns1:LastModification>2010-09-14T08:52:05.0Z</ns1:LastModification>
<ns1:LastModifiedBy xsi:nil="true"/>
<ns1:Creation>2010-09-14T08:52:05.0Z</ns1:Creation>
<ns1:CreatedBy xsi:nil="true"/>
<ns1:Dn xsi:nil="true"/>
</ns2:result>
</ns2:getUserResponse>
</part>
</parts>
</message> As you can see... it looks different.
However the mapping is based upon the WSDL's from my webservice and ADF-BC service. I can't see what i'm doing wrong.
As last, here is the XSL:
<?xml version="1.0" encoding="UTF-8" ?>
<?oracle-xsl-mapper
<!-- SPECIFICATION OF MAP SOURCES AND TARGETS, DO NOT MODIFY. -->
<mapSources>
<source type="WSDL">
<schema location="http://idirblockap008:7001/UserDataService/UserDataService?wsdl"/>
<rootElement name="getUserResponse" namespace="/myServer/dataaccess/common/types/"/>
</source>
</mapSources>
<mapTargets>
<target type="WSDL">
<schema location="../public_html/WEB-INF/wsdl/UserService.wsdl"/>
<rootElement name="getUserResponse" namespace="http://myServer.com/"/>
</target>
</mapTargets>
<!-- GENERATED BY ORACLE XSL MAPPER 11.1.1.2.0(build 091103.1205.1216) AT [WED SEP 15 09:45:29 CEST 2010]. -->
?>
<xsl:stylesheet version="1.0"
xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:xpath20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
xmlns:types="/myServer/dataaccess/common/types/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns4="http://myServer.com/"
xmlns:tns="/myserver/dataaccess/common/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:ora="http://schemas.oracle.com/xpath/extension"
xmlns:socket="http://www.oracle.com/XSL/Transform/java/oracle.tip.adapter.socket.ProtocolTranslator"
xmlns:errors="http://xmlns.oracle.com/adf/svc/errors/"
xmlns:mhdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.mediator.service.common.functions.MediatorExtnFunction"
xmlns:oraext="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
xmlns:ns1="commonj.sdo/xml"
xmlns:dvm="http://www.oracle.com/XSL/Transform/java/oracle.tip.dvm.LookupValue"
xmlns:ns5="http://infrabel.businesscorner.com/types"
xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/"
xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
xmlns:med="http://schemas.oracle.com/mediator/xpath"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ns3="commonj.sdo/java"
xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
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:ns0="commonj.sdo"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
exclude-result-prefixes="xsi xsl types tns soap wsdl errors ns1 ns2 ns3 ns0 xsd ns4 soap12 mime ns5 bpws xpath20 ora socket mhdr oraext dvm hwf med ids xdk xref ldap">
<xsl:template match="/">
<ns4:getUserResponse>
<return>
<classificationCode>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Classification"/>
</classificationCode>
<companyAddress>
<xsl:value-of select="/types:getUserResponse/types:result/tns:CompanyAddress"/>
</companyAddress>
<companyVAT>
<xsl:value-of select="/types:getUserResponse/types:result/tns:CompanyVat"/>
</companyVAT>
<createdBy>
<xsl:value-of select="/types:getUserResponse/types:result/tns:CreatedBy"/>
</createdBy>
<creation>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Creation"/>
</creation>
<dn>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Dn"/>
</dn>
<email>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Email"/>
</email>
<firstLanguage>
<xsl:value-of select="/types:getUserResponse/types:result/tns:FirstLanguage"/>
</firstLanguage>
<firstName>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Firstname"/>
</firstName>
<jobFunction>
<xsl:value-of select="/types:getUserResponse/types:result/tns:JobFunction"/>
</jobFunction>
<lastModification>
<xsl:value-of select="/types:getUserResponse/types:result/tns:LastModification"/>
</lastModification>
<lastModifiedBy>
<xsl:value-of select="/types:getUserResponse/types:result/tns:LastModifiedBy"/>
</lastModifiedBy>
<lastName>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Lastname"/>
</lastName>
<login>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Login"/>
</login>
<mobile>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Mobile"/>
</mobile>
<password>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Password"/>
</password>
<personalWorkAddress>
<xsl:value-of select="/types:getUserResponse/types:result/tns:PersonalWorkAddress"/>
</personalWorkAddress>
<photo>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Photo"/>
</photo>
<remarks>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Remarks"/>
</remarks>
<secondLanguage>
<xsl:value-of select="/types:getUserResponse/types:result/tns:SecondLanguage"/>
</secondLanguage>
<status>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Status"/>
</status>
<telephoneWork>
<xsl:value-of select="/types:getUserResponse/types:result/tns:TelephoneWork"/>
</telephoneWork>
<title>
<xsl:value-of select="/types:getUserResponse/types:result/tns:Title"/>
</title>
<userContact>
<xsl:value-of select="/types:getUserResponse/types:result/tns:UserContact"/>
</userContact>
<validFrom>
<xsl:value-of select="/types:getUserResponse/types:result/tns:ValidFrom"/>
</validFrom>
<validTo>
<xsl:value-of select="/types:getUserResponse/types:result/tns:ValidTo"/>
</validTo>
</return>
</ns4:getUserResponse>
</xsl:template>
</xsl:stylesheet>Am i doing something wrong in the mediator?
Edited by: Yannick Ongena on Sep 15, 2010 9:52 AMHere is the output of the log:
<Sep 15, 2010 2:07:52 PM CEST> <Error> <oracle.webservices.service> <OWS-04115> <An error occurred for port: FabricProvider: javax.xml.rpc.soap.SOAPFaultException: oracle.tip.mediator.infra.exception.MediatorException: ORAMED-01201:[Error in transform operation]Error occurred while transforming payload.Possible Fix:Review the XSL or source payload. Either the XSL defined does not match with the payload or payload is invalid..>
java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: oracle.tip.mediator.infra.exception.MediatorException: ORAMED-01201:[Error in transform operation]Error occurred while transforming payload.Possible Fix:Review the XSL or source payload. Either the XSL defined does not match with the payload or payload is invalid.
at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:575)
at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381)
at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:298)
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:597)
at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1245)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:698)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:285)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.emSDK.license.LicenseFilter.doFilter(LicenseFilter.java:101)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:41)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.eml.app.AuditServletFilter.doFilter(AuditServletFilter.java:179)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:203)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.core.app.perf.PerfFilter.doFilter(PerfFilter.java:141)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:542)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: oracle.tip.mediator.infra.exception.MediatorException: ORAMED-01201:[Error in transform operation]Error occurred while transforming payload.Possible Fix:Review the XSL or source payload. Either the XSL defined does not match with the payload or payload is invalid.
at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:260)
at oracle.sysman.emSDK.webservices.wsdlparser.OperationInfoImpl.invokeWithDispatch(OperationInfoImpl.java:985)
at oracle.sysman.emas.model.wsmgt.PortName.invokeOperation(PortName.java:716)
at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:569)
... 68 more
Caused by: javax.xml.ws.soap.SOAPFaultException: oracle.tip.mediator.infra.exception.MediatorException: ORAMED-01201:[Error in transform operation]Error occurred while transforming payload.Possible Fix:Review the XSL or source payload. Either the XSL defined does not match with the payload or payload is invalid.
at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:882)
at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:715)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:226)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:97)
at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:256)
... 71 moreAnd this is the operation part of the mediator:
<operation name="getUser" deliveryPolicy="AllOrNothing" priority="4"
validateSchema="false">
<switch>
<case executionType="direct" name="UserDataService.getUser">
<action>
<transform>
<part name="$out.parameters"
function="xslt(xsl/getUserSmall_To_getUserSmall.xsl, $in.parameters)"/>
</transform>
<invoke reference="UserDataService" operation="getUser">
<onReply>
<transform>
<part name="$out.parameters"
function="xslt(xsl/getUserSmallResponse_To_getUserSmallResponse.xsl, $in.parameters)"/>
</transform>
<reply/>
</onReply>
<onFault type="ServiceException"/>
</invoke>
</action>
</case>
</switch>
</operation>Edited by: Yannick Ongena on Sep 15, 2010 2:08 PM
Edited by: Yannick Ongena on Sep 15, 2010 2:39 PM -
Can not Update icloud for win7 Gets
Sheep error during transformation. check that the indicated transmitter propagating path is valid.
tryet in appel updater and tryet downloading from apple but the sameHi,
Found a note explaining the significance of these errors.
It says:
"NZE-28862: SSL connection failed
Cause: This error occurred because the peer closed the connection.
Action: Enable Oracle Net tracing on both sides and examine the trace output. Contact Oracle Customer support with the trace output."
For further details you may refer the Note: 244527.1 - Explanation of "SSL call to NZ function nzos_Handshake failed" error codes
Thanks & Regards,
Sindhiya V. -
'Error applying transforms' when trying to install Xcelsius 2008 fp3.2
Hello
I've just tried to install Xcelsius 2008 fp3.2 (I am currently on Xcelsius 2008 sp3). I did read the installation notes, and I wonder if the problem I had is related to the fact that I am not logged in as administrator (I'm on XP).
The package extracted and as the installer ran I got the message:
'Error applying transforms. Verify that the specified transform oaths are valid'.
Thanks
PhilHi Phil,
Can be...
To resolve this error, copy all files from the disc to a local computer location (for example, the desktop). Install Crystal Xcelsius from the setup.exe file at that location.
Hope this helps.
Kind Regards,
Marcio -
Convertion of String to XML node using Xquery transformation in OSB
How to convert string to XML node elementusing a built in function using Xquery transformation in OSB?
check this out - http://www.javamonamour.org/2011/06/fn-beainlinedxml.html
if in SOA (BPEL & Mediator) you can use oraext:parseXML.
you should thoroughly analyse where to implement your requirement as some good practices advise to implement more complex logic in SOA and leave OSB to only connect to the services' endpoints.
Hope this helps,
A. -
How to call business service from xquery transformation in OSB ??
Hi All,
How to call business service from xquery transformation in OSB ??
I need to assign the response variable of Business Service to a target element in XQuery Transformation Mapper file.
It's urgent.
Regards,
Jyoti NayakTransformation is to mapping the source and target of 2 different schemas.
In your case you should have a XQuery transformation between, your Business Service output schema and the target schema.
Thanks,
Vijay -
Error in Transformation of BPM(N:1 Scenario)
Hi,
I am trying out a BPM scenario for an N:1 transformation.The workflow log shows the error on Transformation step.The Interface mapping(called inside BPM) is done between the abstract type of both Source structure(0 to Unbounded) and the target structure(1-1).The underlying Mesage mapping between the source and the target is as as below :
Source
Messages(1-1)
Message1(1-1)
MT_Src(0-Unbounded)
Packet(1-1)
Dataset(0-Unbounded)
Messages(1-1)
Message2(1-1)
MT_Src(0-Unbounded)
Packet(1-1)
Dataset(0-Unbounded)
Target
Messages(1-1)
Message(1-1)
MT_trg(1-1)
Packet(1-1)
Dataset(0-Unbounded)
Could someone help me out with any pointers to the above said pbm?Hi Thiyagarajan,
the problem is, that such a mapping makes no sense.
You have 1-1 in target. That means that the target message will be generated exactly one time (not more and not less)!
So it is not possible to map two sources (which are 0-Unbounded) to a target that is 1:1.
Regards Mario -
I have ignored this issue for long enough. I have Adobe CS4, with Acrobat Pro version 9.3.4. Windows 7. Acrobat updater pops up on my machine, and when I execute the update requested, the updater gives me the update failure message, with code 1604, "error applying transforms."
I have seen solutions posted for this tranforms message, but it was a problem with Acrobat 8. I have seen no solutions as of yet for Acrobat 9, so I thought I would post.
I also tried opening Acrobat 9 Pro, and under the help tab, I initiated "repair". I get the same transform error message as above. Any advice anyone? Should I just uninstall Acrobat 9 Pro and reinstall using my CS4 disk?
Thanks for the help!If you have original CD with Acrobat installation, copy all files with extension .mst from this CD to the following location:
C:\Program Files (x86)\Adobe\Acrobat 9.0\Setup Files\[ProductCode] if this is 64bit system
or
C:\Program Files\Acrobat 9.0\Setup Files\[ProductCode] if this is 32bit system
where [ProductCode] is a unique value which identifies your language version of Acrobat 9 Pro.
If this is EFG version, it should be {AC76BA86-1033-F400-7760-000000000004}
If location does not exist, create it.
2. If you do not have original CD and cannot find .mst files, provide the exact Product name including language and I will provide further instructions.
Good luck -
I had Acrobat Standard 9.5 on a laptop that broke. Adobe Acrobat Standard is paid for and all I need. I had to get a new PC (Windows 8.1) and I did downloaded Standard 9.5 but when I went to install it the installer gave me an “Error applying transforms please ensure specified transform paths are valid”. Any ideas on how to fix this?
Rahul,
No error numbers other than the message I mentioned previously.
I tried the transforms repair and it reported no Acrobat product (correct, none yet installed) or no administrative privileges (I am the administrator and have done previous administrative actions).
When I unzip the Acrobat file this is what is in the setup ini file:
[Startup]
RequireOS=Windows XP
RequireMSI=3.0
RequireIE=6.0.2600.0
[Product]
msi=AcroStan.msi
Languages=1033;1031;1036
1033=English (United States)
1031=German (Germany)
1036=French (France)
CmdLine=TRANSFORMS="AcroStan.mst"
[Windows XP]
PlatformID=2
MajorVersion=5
MinorVersion=1
ServicePackMajor=2
[MSI Updater]
Path=WindowsInstaller-KB893803-v2-x86.exe
Thoughts?
Thanks again,
Tom -
How to apply an XSLT transformation in OSB
Hello all ,
I tried to made a simple example - that apply a simple XSLT transformation in OSB .
I followed the http://blog.jayway.com/2010/05/07/xslt-transformations-in-oracle-service-bus/ example but still is not working in my project .
If I apply the imported xslt over the xml in testing window is working fine .
But the action to replace the content of the xml with the new one is not working.
Here is the xslt
<xsl:template match="/">
<ns0:donateToFund>
<arg0>
<xsl:value-of select="/Report/CustomerName"/>
</arg0>
<arg1>
<xsl:value-of select="/Report/CustomerNumber"/>
</arg1>
<arg2>
<xsl:value-of select="/Report/ReportName"/>
</arg2>
</ns0:donateToFund>
</xsl:template>
and here is a xml sample
- <Report>
<ReportName>Customer Report</ReportName>
<CustomerName>XXX</CustomerName>
<CustomerNumber>3423</CustomerNumber>
<GeneratedDate>2010-11-25 08:15:24.695</GeneratedDate>
- <Rowset>
- <Row>
<Quantity>100154</Quantity>
<CustomerPartNo>ee</CustomerPartNo>
<eSiliconPartNo>ee</eSiliconPartNo>
<Sector>ee</Sector>
<Location>eee</Location>
</Row>
- <Row>
In my action I put /Report as XPath ; body as variable and XSL fro transformation .
Can anyone help to fix this ?
Many thanks in advance,
StefanFollowing works for me:
XSLT
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:template match="/" xmlns:ns0="http://tempuri.org">
<ns0:donateToFund>
<arg0>
<xsl:value-of select="/Report/CustomerName"/>
</arg0>
<arg1>
<xsl:value-of select="/Report/CustomerNumber"/>
</arg1>
<arg2>
<xsl:value-of select="/Report/ReportName"/>
</arg2>
</ns0:donateToFund>
</xsl:template>
</xsl:stylesheet>Input to Proxy
<Report>
<ReportName>Customer Report</ReportName>
<CustomerName>XXX</CustomerName>
<CustomerNumber>3423</CustomerNumber>
<GeneratedDate>2010-11-25 08:15:24.695</GeneratedDate>
<Rowset>
<Row>
<Quantity>100154</Quantity>
<CustomerPartNo>ee</CustomerPartNo>
<eSiliconPartNo>ee</eSiliconPartNo>
<Sector>ee</Sector>
<Location>eee</Location>
</Row>
<Row>
<Quantity>100154</Quantity>
<CustomerPartNo>aa</CustomerPartNo>
<eSiliconPartNo>aa</eSiliconPartNo>
<Sector>aa</Sector>
<Location>aaa</Location>
</Row>
</Rowset>
</Report>Output of Proxy:
<ns0:donateToFund xmlns:ns0="http://tempuri.org">
<arg0>XXX</arg0>
<arg1>3423</arg1>
<arg2>Customer Report</arg2>
</ns0:donateToFund>I am using a single Replace action in the request pipeline.
It works for both configs below:
Replace [ entire node ] of [ ./* ] in [ body ] with [Xslt Resource: default/OTN/temp
Input Document: $body/Report
Variable Names And Bindings ]
Or
Replace [ Node Contents ] of [ . ] in [ body ] with [Xslt Resource: default/OTN/temp
Input Document: $body/Report
Variable Names And Bindings ]
You need to ensure that if you are doing replace entire node of . in body or / in body then you should replace it with an XML whose root node is soap:Body. To achieve that you will need to change the XSL and add soap:Body as root of the output. Easier solution is to use replace contents of . body or replace entire node of ./* in body. -
BPM Collect Scenario errors at transform stage
The BPM Collect scenario is using a Fork within a Block.
Branch 1 - Loop Receive Append Container Endloop
Branch 2 - Receive step of triggerIdoc
End of Block
Transform step - multiline container of XML documents to one XML document
Send step
BPM Errors at Transform step with JCo mapping not available.
Whilst BPM in Error (Workflow in Error) more messages being received but never processed as the RECEIVE event is "lost" for these messages.
We are looking at redesigning the BPM to reduce the likelihood of this transform error.
In the meantime was looking at ways to Alert the administrator straight away to the error. As we have a workaround to get the process going and to pick up the stranded messages. So have started setting up the ALERT categories as described in How to Guide, for Adapter and Interface. Will this work?
Also in the Transform step there is a box (system exception) but I can't enter anything in. Is there a way to do this if the Alert category doesn't report an error in the BPM. OR do I have to add the Transform step into a Block of its own?
Advice gratefully received if we come up with a working solution will post it out here. Have spent a large amount of time reading posts and blogs on here but have not got a clear picture yet of what is best to do.
thanks,> Whilst BPM in Error (Workflow in Error) more messages
> being received but never processed as the RECEIVE
> event is "lost" for these messages.
This should give you an issue called Parked Messages. The best way to deal with this is to actually define a Local Correlation. In the Block Step properties, you will have an option, Use Correlation --> Give the name of the Correlation . This will make sure that when there is an error, the Correlation become inactiva and a new BPM instance is created.
> In the meantime was looking at ways to Alert the
> administrator straight away to the error. As we have
> a workaround to get the process going and to pick up
> the stranded messages. So have started setting up the
> ALERT categories as described in How to Guide, for
> Adapter and Interface. Will this work?
Not sure if this will work. The issue is that the messages are passed to the IE already and will be in wait step waiting for an active BPM 's receive step How will another interface pick up this message?
> Also in the Transform step there is a box (system
> exception) but I can't enter anything in. Is there a
> way to do this if the Alert category doesn't report
> an error in the BPM. OR do I have to add the
> Transform step into a Block of its own?
This is what is called exception handler. Defined a Exception handler for the Block. Right Click block, insert Exception Branch, give name of the Hanler and then you can select this in the Transformation Step's System Error. This is like Try - Catch of Java.
Regards
Bhavesh -
Hi all,
In my requirement i have a BPM with the following steps
start->Rx->Send<>Tranform>Send->end
first send step is synchronous and it is sending req to a website and receiving response through http receiver channel.
second send step is asynchronous , sending response received from website to a file server through file receiver channel.
i have a transformation step ,where i am doing transformation between the structure in receive step and the structure in second send step,
can i do that?
can we do transformation between any async abstract structures that we define for BPM?
BPM is showing error in transformation step, i dont know whats the error is and how to see the error and rectify the problem
plz help
regards
jhansi<b>-Check the Transformation Step in BPM, weather it has correct source and target abstract interfaces or not.
- Check the Message Mapping and interface Mapping manually from the Test Tab in IR.
-Check the status of the Error of BPM in SXI_CACHEIntegration ProcessyourBPM. Code should be 0..if something else it is showming means it has an Error.
-Check the Test data you are using to test your interface.
- Check Webservice sending the correct response or it is failing at the time of response..may be because of WS is not running properly or server is down.</b>
Thanks
Farooq. -
Capture Error in transformation Step and send it by email without Alerts
Hi all,
I have a problem in my BPM.
I need to capture an error in transformation Step and send it by email with a send step without alerts.
Is there a way to do this in BPM?Hi Mariano,
Please check the standard pattern in IR under software component SAP BASIS ->Integration process
-->BpmPatternReqRespAlert.Hope this will help you for building the scenario.
In this process we define a deadline branch to monitor the deadline. If the deadline is missed, an alert is triggered and this can be sent to an email too.
Alert Configuration
http://help.sap.com/saphelp_nw04/helpdata/en/80/942f3ffed33d67e10000000a114084/frameset.htm
Alert Inbox
http://help.sap.com/saphelp_nw04/helpdata/en/80/942f3ffed33d67e10000000a114084/frameset.htm
Alert Notification Step-by-Step
http://help.sap.com/saphelp_nw04/helpdata/en/49/cbfb40f17af66fe10000000a1550b0/frameset.htm
Hope this helps.
Best regards,
Sharath
Edited by: sharath Girmaji on Dec 19, 2008 7:17 PM -
Hi
can any body tell how to make xquery transformation for the requirement like source as xml and target as schema,please provide related links if any
Thanks
Manihttp://docs.oracle.com/cd/E13160_01/wli/docs10gr3/dtguide/
http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/userguide/xquery.html
Already a thread is available.
sample examples for doing XQuery transformation within OSB
Hope this helps.
Thanks,
Vijay
Maybe you are looking for
-
CR2008 Purchasing Report needed
Hi Has anyone created a Purchasing report in Crystal Reports 2008 based on AP Invoices and AP Credit Notes. I have created a WPA (Weekly Purchase Analysis) report but based off AP Invoice table (OPCH & PCH1), now the company is wanting to have Credit
-
Safari quit unexpectedly while using the .PictureOrganizerv.png plug-in?
Hello For the past week my safari has been closing randomly while having safari open for lengthy periods of time (which I usually do) with the message "Safari quit unexpectedly while using hte .PictureOrganizer.png plug-in I tried to find the specifi
-
is it possible to use my mac book pro as a monitor for my g5. my old monitor is out of order.
-
After Effects CS6 and Premiere Pro CS6 not available for installation for 32-bit systems
After Effects CS6 and Premiere Pro CS6 require a 64-bit operating system and processor to be installed and run. If you subscribe to Creative Cloud but use a 32-bit computer system, you will not be able to download and install Premiere Pro CS6 or Afte
-
So uhm..... I spent like 2 weeks creating a well designed databse in MS Access (on a windows desktop).. And now I find out that MS Access isnt on OSX! How on earth do I now view, insert and edit my database on OS X?