Showing posts with label OSB. Show all posts
Showing posts with label OSB. Show all posts
Sunday, February 24, 2013
Monday, October 22, 2012
Service callout v.s. Route
In Oracle OSB service callout action and route action do the almost same thing: invoke a service synchronously. But when the fault happens during the invocation how OSB populate the implicit object variables such as: $body, $fault.
Here is one service defined by the interface QueryService.wsdl. The below lists some scenarios in service callout and rout:
Here is one service defined by the interface QueryService.wsdl. The below lists some scenarios in service callout and rout:
Routing
Service provider returns a SOAP
fault.
$body is populated with the fault returned by the provider.
<soapenv:Body xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Fault> <faultcode>SYS-0001</faultcode> <faultstring>An unknown error has occurred in one of Virgin Australia's systems.</faultstring> <detail> <isl:fault xmlns:isl="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4" xmlns:cdm="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4/CDM" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <cdm:faultCode>concurrentAccessException</cdm:faultCode> <cdm:faultString>String</cdm:faultString> <cdm:faultActor>String</cdm:faultActor> <cdm:detail> <cdm:GPELogReference>String</cdm:GPELogReference> </cdm:detail> <cdm:exception> <cdm:code>String</cdm:code> <cdm:reason>String</cdm:reason> <cdm:actor>String</cdm:actor> </cdm:exception> </isl:fault> </detail> </soapenv:Fault> </soapenv:Body> |
$fault is Weblogic error.
<con:fault
xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380001</con:errorCode>
<con:reason>Internal Server Error</con:reason>
<con:location>
<con:node>Route to
RoutingFaultHandlingBusinessService</con:node>
<con:path>response-pipeline</con:path>
</con:location>
</con:fault>
|
Service provide response timeout
$body
<soapenv:Body
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/>
|
$fault
<con:fault
xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380000</con:errorCode>
<con:reason>[WliSbTransports:381304]Exception in
HttpOutboundMessageContext.RetrieveHttpResponseWork.run: java.net.SocketTimeoutException
java.net.SocketTimeoutException
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse$SocketTimeoutNotification.<clinit>(AsyncResponseHandler.java:555)
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse.handleTimeout(AsyncResponseHandler.java:400)
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse.timeout(AsyncResponseHandler.java:506)
at
weblogic.socket.SocketMuxer$TimerListenerImpl.timerExpired(SocketMuxer.java:1060)
at
weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at
weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at
weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at
weblogic.work.ExecuteThread.run(ExecuteThread.java:221)</con:reason>
<con:location>
<con:node>Route to
RoutingFaultHandlingBusinessService</con:node>
<con:path>response-pipeline</con:path>
</con:location>
</con:fault>
|
Cannot connect to service provide
$body
<soapenv:Body
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<v4:queryServiceByService
xmlns:v4="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4"
xmlns:cdm="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4/CDM">
<v4:service>
<!--Optional:-->
<cdm:serviceId>1234</cdm:serviceId>
<!--Optional:-->
<cdm:serviceStatus>string</cdm:serviceStatus>
<!--Optional:-->
<cdm:location>
<!--Optional:-->
<cdm:placeKey>
<!--Optional:-->
<cdm:primaryKey>string</cdm:primaryKey>
</cdm:placeKey>
</cdm:location>
<!--Optional:-->
<cdm:serviceType>string</cdm:serviceType>
<!--Optional:-->
<cdm:serviceNotes>
<!--Zero or more repetitions:-->
<cdm:serviceNote>
<!--Optional:-->
<cdm:note>string</cdm:note>
</cdm:serviceNote>
</cdm:serviceNotes>
</v4:service>
<v4:type>string</v4:type>
<v4:customerAccount>
<!--Optional:-->
<cdm:accountId>string</cdm:accountId>
</v4:customerAccount>
</v4:queryServiceByService>
</soapenv:Body>
|
$fault
<con:fault xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380002</con:errorCode>
<con:reason>Tried all: '4' addresses, but could not connect over
HTTP to server: 'markchen-laptop', port: '8188'</con:reason>
<con:location>
<con:node>Route to
RoutingFaultHandlingBusinessService</con:node>
<con:path>request-pipeline</con:path>
</con:location>
</con:fault>
|
Service callout
Service provider returns a SOAP
fault.
$body
<v4:queryServiceByService> <v4:service> <!--Optional:--> <cdm:serviceId>4321</cdm:serviceId> <!--Optional:--> <cdm:serviceStatus>?</cdm:serviceStatus> <!--Optional:--> <cdm:location> <!--Optional:--> <cdm:placeKey> <!--Optional:--> <cdm:primaryKey>?</cdm:primaryKey> </cdm:placeKey> </cdm:location> <!--Optional:--> <cdm:serviceType>?</cdm:serviceType> <!--Optional:--> <cdm:serviceNotes> <!--Zero or more repetitions:--> <cdm:serviceNote> <!--Optional:--> <cdm:note>?</cdm:note> </cdm:serviceNote> </cdm:serviceNotes> </v4:service> <v4:type>?</v4:type> <v4:customerAccount> <!--Optional:--> <cdm:accountId>?</cdm:accountId> </v4:customerAccount> </v4:queryServiceByService> </soapenv:Body> |
$fault
<con:fault xmlns:con="http://www.bea.com/wli/sb/context"> <con:errorCode>BEA-382500</con:errorCode> <con:reason>OSB Service Callout action received SOAP Fault response</con:reason> <con:details> <con1:ReceivedFaultDetail xmlns:con1="http://www.bea.com/wli/sb/stages/transform/config"> <con1:faultcode>SYS-0001</con1:faultcode> <con1:faultstring>An unknown error has occurred in one of Virgin Australia's systems.</con1:faultstring> <con1:detail> <isl:fault xmlns:isl="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4" xmlns:cdm="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4/CDM" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <cdm:faultCode>concurrentAccessException</cdm:faultCode> <cdm:faultString>String</cdm:faultString> <cdm:faultActor>String</cdm:faultActor> <cdm:detail> <cdm:GPELogReference>String</cdm:GPELogReference> </cdm:detail> <cdm:exception> <cdm:code>String</cdm:code> <cdm:reason>String</cdm:reason> <cdm:actor>String</cdm:actor> </cdm:exception> </isl:fault> </con1:detail> <con1:http-response-code>500</con1:http-response-code> </con1:ReceivedFaultDetail> </con:details> <con:location> <con:node>PipelinePairNode1</con:node> <con:pipeline>PipelinePairNode1_request</con:pipeline> <con:stage>stage1</con:stage> <con:path>request-pipeline</con:path> </con:location> </con:fault> |
Service provide response timeout
$body
<soapenv:Body
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<v4:queryServiceByService
xmlns:v4="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4"
xmlns:cdm="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4/CDM">
<v4:service>
<!--Optional:-->
<cdm:serviceId>1111</cdm:serviceId>
<!--Optional:-->
<cdm:serviceStatus>string</cdm:serviceStatus>
<!--Optional:-->
<cdm:location>
<!--Optional:-->
<cdm:placeKey>
<!--Optional:-->
<cdm:primaryKey>string</cdm:primaryKey>
</cdm:placeKey>
</cdm:location>
<!--Optional:-->
<cdm:serviceType>string</cdm:serviceType>
<!--Optional:-->
<cdm:serviceNotes>
<!--Zero or more repetitions:-->
<cdm:serviceNote>
<!--Optional:-->
<cdm:note>string</cdm:note>
</cdm:serviceNote>
</cdm:serviceNotes>
</v4:service>
<v4:type>string</v4:type>
<v4:customerAccount>
<!--Optional:-->
<cdm:accountId>string</cdm:accountId>
</v4:customerAccount>
</v4:queryServiceByService>
</soapenv:Body>
|
$fault
<con:fault
xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380000</con:errorCode>
<con:reason>[WliSbTransports:381304]Exception in
HttpOutboundMessageContext.RetrieveHttpResponseWork.run:
java.net.SocketTimeoutException
java.net.SocketTimeoutException
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse$SocketTimeoutNotification.<clinit>(AsyncResponseHandler.java:555)
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse.handleTimeout(AsyncResponseHandler.java:400)
at
weblogic.net.http.AsyncResponseHandler$MuxableSocketHTTPAsyncResponse.timeout(AsyncResponseHandler.java:506)
at
weblogic.socket.SocketMuxer$TimerListenerImpl.timerExpired(SocketMuxer.java:1060)
at
weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at
weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at
weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at
weblogic.work.ExecuteThread.run(ExecuteThread.java:221)</con:reason>
<con:location>
<con:node>PipelinePairNode1</con:node>
<con:pipeline>PipelinePairNode1_request</con:pipeline>
<con:stage>stage1</con:stage>
<con:path>request-pipeline</con:path>
</con:location>
</con:fault>
|
Cannot connect to service provide
$body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v4="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4" xmlns:cdm="http://com.toic.telecom/ISL/ServiceInventoryManagement/queryServiceByService/V4/CDM">
<v4:queryServiceByService> <v4:service> <!--Optional:--> <cdm:serviceId>4321</cdm:serviceId> <!--Optional:--> <cdm:serviceStatus>?</cdm:serviceStatus> <!--Optional:--> <cdm:location> <!--Optional:--> <cdm:placeKey> <!--Optional:--> <cdm:primaryKey>?</cdm:primaryKey> </cdm:placeKey> </cdm:location> <!--Optional:--> <cdm:serviceType>?</cdm:serviceType> <!--Optional:--> <cdm:serviceNotes> <!--Zero or more repetitions:--> <cdm:serviceNote> <!--Optional:--> <cdm:note>?</cdm:note> </cdm:serviceNote> </cdm:serviceNotes> </v4:service> <v4:type>?</v4:type> <v4:customerAccount> <!--Optional:--> <cdm:accountId>?</cdm:accountId> </v4:customerAccount> </v4:queryServiceByService>
</soapenv:Body>
|
$fault
<con:fault xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-382501</con:errorCode> <con:reason>OSB Service Callout action received an unrecognized response</con:reason> <con:details> <con1:UnrecognizedResponseDetail xmlns:con1="http://www.bea.com/wli/sb/stages/transform/config"> <con1:http-response-code>200</con1:http-response-code> </con1:UnrecognizedResponseDetail> </con:details> <con:location> <con:node>PipelinePairNode1</con:node> <con:pipeline>PipelinePairNode1_request</con:pipeline> <con:stage>stage1</con:stage> <con:path>request-pipeline</con:path> </con:location>
</con:fault>
|
Wednesday, September 5, 2012
The error using test console of Oracle Service Bus 11g
Recently I was trying to test one proxy service using test console in OSB console I encountered the error after clicking on the Launch Test Console icon. It shows the error like the below:
I found that one solution for this issue is to check the listen address of the server. From the console go to the Mydomain --> Environment --> Servers --> AdminServer. Then check the Settings of the AdminServer --> Configuration --> General. I found that the Listen Adress is empty. The fix is to enter localhost as the value for Listen Address and save the change as the below:
I found that one solution for this issue is to check the listen address of the server. From the console go to the Mydomain --> Environment --> Servers --> AdminServer. Then check the Settings of the AdminServer --> Configuration --> General. I found that the Listen Adress is empty. The fix is to enter localhost as the value for Listen Address and save the change as the below:
In order to make this change effective I need to restart the server. After the server is restarted I can use the test console in OSB console now.
Subscribe to:
Posts (Atom)

