Business Service SOAP Fault : OSB still using body to populate fault?

I have a SOAP service specifically returning a SOAP fault. OSB doesn't recognize it as an fault and continues processing as if everything is OK. As per the documentation, in case of SOAP faults, OSB should generate a $fault variable based on the details present inside the SOAP fault, which in turn should give the control to the normal error handling stage and by pass the pipe line flow.
Does anyone know how to get OSB to recognize a SOAP fault for what it is? Here's the response returned to OSB:
<SOAP-ENV:Fault xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<faultactor/>
<faultcode>SOAP-ENV:</faultcode>
<faultstring>TEST ERROR 1</faultstring>
<detail>
<NS1:EOSGAPIError xsi:type="NS1:EOSGAPIError" xmlns:NS1="urn:eschelon.com/osg/1_0-OSGAPILib">
<exceptionClassName xsi:type="xsd:string">Exception</exceptionClassName>
<method xsi:type="xsd:string"/>
</NS1:EOSGAPIError>
</detail>
</SOAP-ENV:Fault>
Regards,
Anuj

Here are the contents of Invocation trace:
(receiving request)
Initial Message Context
added $body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<SendSmsMessage xmlns="http://datasquirt.com/webservices/">
<customerIdentificationCard>
<CustomerID>12121</CustomerID>
<CustomerRef1>1212121</CustomerRef1>
<CustomerRef2>ASDASDASD</CustomerRef2>
<DisableCustomerCreation>true</DisableCustomerCreation>
</customerIdentificationCard>
<sender>1212</sender>
<receiver>12121</receiver>
<messageText>
Have you finished the page specs yet? Greetings from NEO!
</messageText>
</SendSmsMessage>
</soapenv:Body>
added $header
<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/>
added $inbound
<con:endpoint name="ProxyService$Testing$Testing123" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service/>
<con:transport>
<con:mode>request-response</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="loc:LocalRequestMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="loc:LocalRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports"/>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="loc:LocalResponseMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<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
2118966794361651537--67bbd0aa.12b51c9a704.-7f90
PipelinePairNode1
stage1
Message Context Changes
changed $body
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<SendSmsMessage xmlns="http://datasquirt.com/webservices/">
<customerIdentificationCard>
<CustomerID>12121</CustomerID>
<CustomerRef1>1212121</CustomerRef1>
<CustomerRef2>ASDASDASD</CustomerRef2>
<DisableCustomerCreation>true</DisableCustomerCreation>
</customerIdentificationCard>
<sender>1212</sender>
<receiver>12121</receiver>
<messageText>
Have you finished the page specs yet? Greetings from NEO!
</messageText>
</SendSmsMessage>
</soapenv:Body>
changed $inbound
<con:endpoint name="ProxyService$Testing$Testing123" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service/>
<con:transport>
<con:mode>request-response</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="loc:LocalRequestMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="loc:LocalRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports"/>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="loc:LocalResponseMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<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>
RouteNode1
Routed Service
Route to: "NotificationBsSendSMSNotificationHttp"
$outbound:
<con:endpoint name="BusinessService$NotificationOsbProject$BusinessServices$NotificationBsSendSMSNotificationHttp" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>SendSmsMessageWithTemplate</con:operation>
</con:service>
<con:transport>
<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</http:Content-Type>
<http:SOAPAction>
"http://datasquirt.com/webservices/SendSmsMessageWithTemplate"
</http:SOAPAction>
</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/">
<SendSmsMessage xmlns="http://datasquirt.com/webservices/">
<customerIdentificationCard>
<CustomerID>12121</CustomerID>
<CustomerRef1>1212121</CustomerRef1>
<CustomerRef2>ASDASDASD</CustomerRef2>
<DisableCustomerCreation>true</DisableCustomerCreation>
</customerIdentificationCard>
<sender>1212</sender>
<receiver>12121</receiver>
<messageText>
Have you finished the page specs yet? Greetings from NEO!
</messageText>
</SendSmsMessage>
</soapenv:Body>
$header (request):
<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/>
$attachments (request):
<con:attachments xmlns:con="http://www.bea.com/wli/sb/context"/>
Message Context Changes
added $outbound
<con:endpoint name="BusinessService$NotificationOsbProject$BusinessServices$NotificationBsSendSMSNotificationHttp" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>SendSmsMessageWithTemplate</con:operation>
</con:service>
<con:transport>
<con:uri>
http://tabcorpapi.datasquirt.com.au/V2/ContactService.asmx
</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://datasquirt.com/webservices/SendSmsMessageWithTemplate"
</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">
<tran:user-header name="X-AspNet-Version" value="2.0.50727"/>
<tran:user-header name="X-Powered-By" value="ASP.NET"/>
<http:Cache-Control>private</http:Cache-Control>
<http:Content-Length>1180</http:Content-Length>
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
<http:Date>Mon, 27 Sep 2010 11:27:25 GMT</http:Date>
<http:Server>Microsoft-IIS/7.0</http:Server>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
<tran:response-message xmlns:tran="http://www.bea.com/wli/sb/transports">OK</tran:response-message>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
<http:http-response-code>200</http:http-response-code>
</con:response>
</con:transport>
<con:security>
<con:doOutboundWss>false</con:doOutboundWss>
</con:security>
</con:endpoint>
changed $body
<SOAP-ENV:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:clr="http://schemas.microsoft.com/soap/encoding/clr/1.0">
<SOAP-ENV:Fault id="ref-1">
<faultcode id="ref-2">SOAP-ENV:Authentication Issue</faultcode>
<faultstring id="ref-3">
Access Denied - Missing or incomplete Authentication Header
</faultstring>
<faultactor id="ref-4">
http://tabcorpapi.datasquirt.com.au/V2/ContactService.asmx
</faultactor>
<detail xsi:type="a1:ServerFault" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Runtime.Serialization.Formatters">
<exceptionType id="ref-5">ApiAuthenticationException</exceptionType>
<message id="ref-6">
Missing or incomplete Authentication Header
</message>
<stackTrace id="ref-7">
at Datasquirt.Contact3.API.Security.AuthenticationModule.OnEnter(Object source, EventArgs eventArgs)
</stackTrace>
<exception xsi:null="1"/>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
changed $attachments
<con:attachments xmlns:con="http://www.bea.com/wli/sb/context"/>
changed $inbound
<con:endpoint name="ProxyService$Testing$Testing123" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service/>
<con:transport>
<con:mode>request-response</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="loc:LocalRequestMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="loc:LocalRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports"/>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="loc:LocalResponseMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<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
<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/>
PipelinePairNode1
stage1
Message Context Changes
changed $body
<SOAP-ENV:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:clr="http://schemas.microsoft.com/soap/encoding/clr/1.0">
<SOAP-ENV:Fault id="ref-1">
<faultcode id="ref-2">SOAP-ENV:Authentication Issue</faultcode>
<faultstring id="ref-3">
Access Denied - Missing or incomplete Authentication Header
</faultstring>
<faultactor id="ref-4">
http://tabcorpapi.datasquirt.com.au/V2/ContactService.asmx
</faultactor>
<detail xsi:type="a1:ServerFault" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Runtime.Serialization.Formatters">
<exceptionType id="ref-5">ApiAuthenticationException</exceptionType>
<message id="ref-6">
Missing or incomplete Authentication Header
</message>
<stackTrace id="ref-7">
at Datasquirt.Contact3.API.Security.AuthenticationModule.OnEnter(Object source, EventArgs eventArgs)
</stackTrace>
<exception xsi:null="1"/>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
changed $outbound
<con:endpoint name="BusinessService$NotificationOsbProject$BusinessServices$NotificationBsSendSMSNotificationHttp" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service>
<con:operation>SendSmsMessageWithTemplate</con:operation>
</con:service>
<con:transport>
<con:uri>
http://tabcorpapi.datasquirt.com.au/V2/ContactService.asmx
</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://datasquirt.com/webservices/SendSmsMessageWithTemplate"
</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">
<tran:user-header name="X-AspNet-Version" value="2.0.50727"/>
<tran:user-header name="X-Powered-By" value="ASP.NET"/>
<http:Cache-Control>private</http:Cache-Control>
<http:Content-Length>1180</http:Content-Length>
<http:Content-Type>text/xml; charset=utf-8</http:Content-Type>
<http:Date>Mon, 27 Sep 2010 11:27:25 GMT</http:Date>
<http:Server>Microsoft-IIS/7.0</http:Server>
</tran:headers>
<tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
<tran:response-message xmlns:tran="http://www.bea.com/wli/sb/transports">OK</tran:response-message>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
<http:http-response-code>200</http:http-response-code>
</con:response>
</con:transport>
<con:security>
<con:doOutboundWss>false</con:doOutboundWss>
</con:security>
</con:endpoint>
changed $inbound
<con:endpoint name="ProxyService$Testing$Testing123" xmlns:con="http://www.bea.com/wli/sb/context">
<con:service/>
<con:transport>
<con:mode>request-response</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="loc:LocalRequestMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="loc:LocalRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports"/>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
</con:request>
<con:response xsi:type="loc:LocalResponseMetaData" xmlns:loc="http://www.bea.com/wli/sb/transports/local" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<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>
As per my understanding after Route to: "NotificationBsSendSMSNotificationHttp", the fault should be present in the $fault variable in place of $body,
Regards,
Anuj

Similar Messages

  • Json PUT method business service invoke via OSB

    Hi,
    I have to invoke business service that takes input as json object. I have followed following steps to create the project.
    1. I have setup business service with "Messaging Service", and selected TEXT as request and response.
    2. Created proxy service that is using wsdl.
    3. In message flow, I have added service call out and setup bodyRequest as Request Variable in payload document.
    4. I have added transport header to setup header as required.
    5. $bodyRequest is setup by json lib utility(java callout), which gets xml as input and return json object as string.
    6. When business service get invoked, Following payload is passed:
    <soapenv:Body      xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
         {"name":"string","status":"string","utilities":{"utilId":"string","utilType":"string"}}
    </soapenv:Body>
    whereas it should be only json request i.e.
    {"name":"string","status":"string","utilities":{"utilId":"string","utilType":"string"}}
    When I see the trace I get "{"name":"string","status":"string","utilities":{"utilId":"string","utilType":"string"}}" in $bodyRequest, but when it is passed to business Service, it gets embedded in <soapenv:Body></soapenv:Body>
    Kindly can anyone help me in this regard.

    yes, but I get response as no json body was found. This is response if i give input with soapBody, but if i only give json object i.e. {"name":"string","status":"string","utilities":{"utilId":"string","utilType":"string"}} , outside OSB i.e. using some json tool, it works fine.

  • Business Service SOAP Fault ignored by ALSB

    I have a SOAP service specifically returning a SOAP fault. ALSB doesn't recognize it as an fault and continues processing as if everything is OK.
    Does anyone know how to get ALSB to recognize a SOAP fault for what it is? Here's the response returned to ALSB:
    <SOAP-ENV:Fault xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <faultactor/>
    <faultcode>SOAP-ENV:</faultcode>
    <faultstring>TEST ERROR 1</faultstring>
    <detail>
    <NS1:EOSGAPIError xsi:type="NS1:EOSGAPIError" xmlns:NS1="urn:eschelon.com/osg/1_0-OSGAPILib">
    <exceptionClassName xsi:type="xsd:string">Exception</exceptionClassName>
    <method xsi:type="xsd:string"/>
    </NS1:EOSGAPIError>
    </detail>
    </SOAP-ENV:Fault>

    Let me clarify: If I perform a "route" to the SOAP service, the fault returns and is passed along as the new body of the message - no errors detected.
    If I do a "service callout" to the SOAP service, I get a BEA-382501 error "ALSB Service Callout action received an unrecognized response".
    Any ideas why ALSB does not recognize the soap fault that it receives in the response?
    Here's the fault contents, you can see the soap fault returned in the detail element:
    <con:fault>
    <con:errorCode>BEA-382501</con:errorCode>
    <con:reason>ALSB Service Callout action received an unrecognized response</con:reason>
    <con:details>
    <con1:UnrecognizedResponseDetail>
    <con1:detail><SOAP-ENV:Fault xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <faultactor/> <faultcode>SOAP-ENV:err_data_val_failed</faultcode> <faultstring>Service address has not been validated</faultstring> <detail> <NS1:EOSGAPIError xsi:type="NS1:EOSGAPIError" xmlns:NS1="urn:eschelon.com/osg/1_0-OSGAPILib"> <exceptionClassName xsi:type="xsd:string">EOSGAPIError</exceptionClassName> <method xsi:type="xsd:string"/> </NS1:EOSGAPIError> </detail> </SOAP-ENV:Fault></con1:detail>
    <con1:http-response-code>200</con1:http-response-code>
    </con1:UnrecognizedResponseDetail>
    </con:details>
    <con:location>
    <con:node>Get Proposal</con:node>
    <con:pipeline>Get Proposal_request</con:pipeline>
    <con:stage>Get Proposal From OSG</con:stage>
    <con:path>request-pipeline</con:path>
    </con:location>
    </con:fault>
    P.s. yep - same person the original post, just decided I didn't like my email displaying as my username.

  • Business Service Issue for OSB 10.3.1 when call web service of SAP ECC 710

    Hello,
    1 . I was doing unit test for a business service which called a web service from SAP ECC 710 (This service is published directly from a RFC function module via SOA Manager);
    2 .The problem is when i use the OSB test console , which generate request message below:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    *<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">*
    *</soap:Header>*
    <soapenv:Body>
    <urn:Zmmjf503 xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">
    <ContractInfo>string</ContractInfo>
    </urn:Zmmjf503>
    </soapenv:Body>
    </soapenv:Envelope>
    the response message is :
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Header>
    <n0:MessageID xmlns:n0="http://schemas.xmlsoap.org/ws/2004/08/addressing">
    uuid:4cbe5b84-474c-9abe-e100-00000ad00164
    </n0:MessageID>
    <n1:Action soap-env:mustUnderstand="1" xmlns:n1="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope"/>
    </soap-env:Header>
    <soap-env:Body/>
    </soap-env:Envelope>
    Above response indicates that the BS called the SAP Web server successfully , but seems the service didn't get the request message.
    3. The Web service can be called successfully via SoapUI . and i have checked the request message of soapUI; and it can work if i simply modify the request:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    *<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"></soap:Header>*
    <soapenv:Body>
    <urn:Zmmjf503 xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">
    <ContractInfo>string</ContractInfo>
    </urn:Zmmjf503>
    </soapenv:Body>
    </soapenv:Envelope>
    and i got the correct response :
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Header/>
    <soap-env:Body>
    <n0:Zmmjf503Response xmlns:n0="urn:sap-com:document:sap:soap:functions:mc-style">
    <Recmsg><![CDATA[<?xml version="1.0" encoding="utf-8"?><DocumentResponse><STATE>0</STATE><HTBH></HTBH><MESSAGE></MESSAGE></DocumentResponse>]]></Recmsg>
    </n0:Zmmjf503Response>
    </soap-env:Body>
    </soap-env:Envelope>
    4 It bother me , as the only difference between the above two request messages is the Header(the first one contains a "carriage returns"):
    *<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">*
    *</soap:Header>*
    VS
    *<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"></soap:Header>*
    5 i thought that the soap engine should ignore the "carriage returns", seems it's a problem of SAP ECC710.
    DID anyone encouter this problem?? Thanks
    Regards
    Wen

    Thanks,Patrick,
    i have already removed the Soap:header, and it worked as well. what's more , using header " <soapenv:Header/>" worked.
    And i got these request messages via TCPMON, so it's exactly what were sent to SAP ECC710.
    The HTTP request which cannot work:
    POST /sap/bc/srt/rfc/sap/zmmjf_503/400/zmmjf_503_service/zmmjf_503_soapbinding HTTP/1.1
    Content-Type: text/xml; charset=utf-8
    Authorization: Basic enpoZmhlOnBhc3N3b3Jk
    SOAPAction: ""
    Transfer-Encoding: chunked
    User-Agent: Java1.6.0_05
    Host: 10.208.1.100:8000
    Accept: text/html, image/gif, image/jpeg, */*; q=.2
    Connection: Keep-Alive
    017a
    <?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    </soap:Header><soapenv:Body><urn:Zmmjf503 xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">
    <ContractInfo>string</ContractInfo>
    </urn:Zmmjf503></soapenv:Body></soapenv:Envelope>
    0000
    THE HTTP request which can work:
    POST /sap/bc/srt/rfc/sap/zmmjf_503/400/zmmjf_503_service/zmmjf_503_soapbinding HTTP/1.1
    Content-Type: text/xml; charset=utf-8
    Authorization: Basic enpoZmhlOnBhc3N3b3Jk
    SOAPAction: ""
    Transfer-Encoding: chunked
    User-Agent: Java1.6.0_05
    Host: 10.208.1.100:8000
    Accept: text/html, image/gif, image/jpeg, */*; q=.2
    Connection: Keep-Alive
    016c
    <?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"/><soapenv:Body><urn:Zmmjf503 xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">
    <ContractInfo>string</ContractInfo>
    </urn:Zmmjf503></soapenv:Body></soapenv:Envelope>
    0000
    Thing is that if i just use
    <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"></soap:Header>
    to replace (which means i just simply remove the carriage return)
    <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    </soap:Header>
    in the header field of OSB Test console, it can work!!!
    It's really a weird issue. and it bothers me so much ;)
    any suggestions?
    Regards
    Wen

  • How do I build a dynamic business service URL in OSB 11g?

    Hello,
    I am used to using the business service endpoint URIs that we configure on the Transport tab of our business services in OSB 11.1.1.6.  We can add multiple static entries here for load balancing, and we can overwrite these with a Customization File as we migrate through DEV, TEST, PROD.  Everything's just fine there.
    I now need to start consuming RESTful services with dynamic URLs such as:
    http://host:port/customer/{customerId}
    that would result in HTTP calls to values like:
    http://host:port/customer/12345678
    and
    http://host:port/customer/55555555
    I see that I can build the URI using the Routing Options action in our proxy message flow and throw in all of those variable values at runtime.  This is working in DEV just fine.  And, effectively, I've overridden the business service endpoint URIs that we configured in the Transport.
    But now I want to:
    1) Use multiple endpoint URIs for our cluster
    2) Deploy to TEST
    What is the proper way to do this?  I would guess in the business service endpoint URIs in the customization file, but I don't know how to parameterize those.  I would also guess customization file find/replace functionality to change the host:port in my Routing Options action, but then that would still be just a single-node endpoint and not a pointer to multiple servers in our cluster.
    Can someone please advise the best way to configure these dynamic URLs at runtime while still allowing for clustered endpoints and for customization files to be applied as we promote through our environments?
    Thank you,
    Michael

    Found some old code.
    I think you need to do
    property_text = "#"^variable_text
    then you can do the following
    property_list[1][property_text]
    That seemed to work.

  • OSB: Retrieve list of proxy service/business service operations via OSB API

    Hi,
    I would like to retrieve the list of proxy service/business service operations using OSB API. I was able to retrieve References to all services on given server using examples from documentation (http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/javadoc/com/bea/wli/sb/management/configuration/ALSBConfigurationMBean.html). I'm also able to retrieve the Reference to any given service I want.
    My problem is - what do I do next? I've read here[http://www.theserverlabs.com/blog/2012/03/14/alsbosb-customization-using-wlst/] , that one can use ServiceConfigurationMBean.
    But when I execute this code:
              ServiceConfigurationMBean servConfMBean = (ServiceConfigurationMBean) domainService
              .findService(
                        ServiceConfigurationMBean.NAME + "." + sessionName,
                        ServiceConfigurationMBean.TYPE,null);
    The servConfMBean object is null.
    I know that there might be some useful info in the statistics, but my proxys are enabled for monitoring, and therefore I'm unable to obtain statistics programatically.
    I've also learned that thereis a TransportManagerHelper.getWsdlDescription(ref) method. But it throws null pointer exception. I dont understand how to use it.
    Any help would be greatly appreciated.
    Veronica
    Edited by: Veronica on Apr 11, 2012 2:33 AM

    There is an API change from the OSB release 11.1.1.3 and later....
    There is a solution, but this is based on Java & JMX:
    See support on this note:
    WLST scripting needed for note [ID 1431254.1]

  • OSB Business Service Scripted Automation Testing

    Hi,
    The dilemma I am facing is to create some sort of automated process of testing of Business Services created in OSB, perhaps via ANT and Phyton, to be used as verification after deployments by deployment team. I am trying to have the scripted process to run certain request payloads from specified location against business services and compare the results with expected responses stored in some directory and report the health of the business services, based on this comparison.
    I appreciate any help in advance.

    Thank you so much for your response Pierluigi, but one other dilemma I have is not to install any application on any of the domain and achieve this through some sort of perhaps ANT and/or Phyton script, since I am not allowed to install any thing on production servers.
    Thanks,
    Mani

  • OSB Business Service Work Manager Doesnt Throttle

    Hi,
    I have a requrirement to throlle the number of concurrent requests going to an end point.
    So i have used OSB business service where in i am calling an end point webservice, and configured a work manager in console and selected it in the dispatch policy
    I deployed the workmanager on managed server. i specified max concurrent threads as 3.
    I tried to test it and see that throttling doesnt really work.. All the requests sent are being sent at once not 3 at a time.
    The expected behavior is first 3 sdhud go and then onc ethey complete next 3 similary next 3. But i dont see that behavior. Please let me know if i am doing any worng
    below is my work manager configuration
    Service Type Any XML Service
    Transport Configuration
    Protocol http
    Load Balancing Algorithm round-robin
    Endpoint URI <Specified the end point URI>
    Retry Count 0
    Retry Iteration Interval 0
    Retry Application Errors Yes
    HTTP Transport Configuration
    Read Timeout 0
    Connection Timeout 0
    HTTP Request Method POST
    Authentication None
    Proxy Server
    Follow HTTP redirects Disabled
    Use Chunked Streaming Mode Enabled
    Dispatch Policy WorkManagerTest
    Message Handling Configuration
    XOP/MTOM Support Disabled
    Page Attachments to Disk No
    Result Caching Not Supported
    Any suggestions on this?
    Edited by: 791951 on Mar 17, 2011 7:51 AM

    If you need to throttle the Business service, then you should configure the throttling parameters in the Business Service -> Operational Settings tab
    Choose your Business Service in the OSB Console -> Operational Settings
    Throttling -Check this box to enable the throttling. Maximum Concurrency to 3, and Throttling Queue to x number of messages you wish to hold in the throttling queue

  • ERP 8.12 TR8.98 and available business services question

    Hi there
    We are just about to upgrade to TR 8.98 from 8.96 primarily to make use of BSSV functionality. We are still on ERP 8.12.
    I am a little confused about what we would have access to in 8.12 TR8.98.
    I thought I read that the RI's are for testing purposes and should not be used in production, but used as a basis for development.
    I just found document 'JD Edwards EnterpriseOne Business Services 9.0 Reference Guide' which lists quite a few available business services that look ready to use.
    Would these now be available to us on ERP 8.12 TR8.98 or do we need to be on ERP 9.0 to use these services, which are not prefixed with 'RI'.
    I would just like to clarify what our situation will be and if we don't have these services, could we get them in the form of an ESU?
    Best Regards,
    Perusha

    Yes, you can use the JDE Business Service Server to simulate the E1-Adapter associated with webMethods. Oracle provides out of the box Business Services for a majority of the E1 transactions. We have implemented Business Services Server with our webMethods and it is working very well.
    -Eric

  • Business Systems and Business Service - does any difference

    Hi Experts,
                      Could any one please guide me what is the difference between
    Business Systems
    and
    Business Service.
    Which situations we use Business Systems / Business Service.
    Does it have any performance issues?
    Why we are not configuring Business service in SLD?
    Cheers Experts!!
    Sunil

    Hi Sunil,
    Business System: Address a particular business system as the sender or receiver of messages.
    A business system is an actual application system in a system landscape. A business system
    (service) comprises information about the inbound and outbound interfaces and the software
    component versions of the business system. The business system services are used when
    configuring internal company processes.
    Business Systems are Logical Senders or Receivers that exchange messages by using the Integration
    Server and that are entered in the System Landscape Directory.
    The Business Systems in the System Landscape Directory relate to a system landscape.
    The Business Systems of business partners are therefore not entered in the System Landscape
    Directory. To be able to address such business partners logically, use communication components in
    the Integration Directory. A business system is a way of specifying a communication component in the
    Integration Directory more precisely (business system component).
    Business Service: Address an abstract business entity as the sender or receiver of messages.
    Using a business service, you can define the technical or business subunits of the companies
    involved and then assign them the relevant interfaces. The business services are used when
    configuring cross-company processes.
    In the PCK, the Service is of type Business Service. It represents an abstract, addressable unit.
    Business services are used in cross-company processes, for example, if the parties involved have only
    published their interfaces and not their system landscape, or it is only partly known.
    Using a Business Service,we can define the technical or business subunits of the companies involved
    and then assign them the relevant interfaces.
    It is useful to use Business Services when configuring cross-company processes. Usually, the
    interface descriptions of the business partners involved are made publicly available.
    Also,There is already lot of thread regarding the same discussion, please see it below.
    Business service or Business system??
    Re: Business Service <--> Business System
    Difference between Business service, Business system and Business process
    Business Service vs Business System in Integration Directory.
    Business Service (vs) Business System in Integration Directory.
    What is the difference between Business System and Business Service?
    business system and business service
    Diff b/w Business service & Business System?
    Regards,
    Vinod.

  • Business Services in BPM

    HI,
    I have seen that all the examples related to BPM are using Business Services. Why cant we use Business Systems to send/receive messages?
    Priya

    Priya,
    You can use Business Systems and Business Services Interchangeably. it not not mandatory that you use a Business Service with BPM's.
    Maybe you have seen beginner blogs and to make things simple they would have used Business Services.
    To understand difference between Business Service and Business System search on the XI forums with "Business Service Business System" and you will find many threads on XI. It is a widely discusses topic.
    Regards
    Bhavesh

  • Jmx Services as Business Services ?

    I am wondering if JMX service are just for managing or even suitable to use as business services.
    In my new work all remote (business) service invocation is done by using jmx services which i find rather freaky.
    The people there come from implementing in C++ and are doing the shift to Java to use JBoss and all, so they're looking for all the java fancy stuff and stacking it all together. Some architectural decisions are questionable, imo.
    Maybe im too long into java to see the possibilities.. I thought JMX is (best used) for managing (only).. are Jmx invocations scalable ?
    What do u think ?
    Any hints, suggestions welcome.

    This isn't the first time I've heard of JMX technology being used as a general-purpose distributed object model. While that isn't the principal design centre of the technology, it is a reasonably good fit in some circumstances. The main advantages people have cited to explain why they make this choice are, first, the notification (event) support, which provides a simple but powerful model that does not require the server to be able to make a connection back to the client; second, a good security model; and third, the fact that it has been part of the core Java platform since 2004, which means not only that it is trivial to deploy but also that it is maintained.
    The main disadvantage is that it does not come with built-in support for transactions, although that can be achieved by having the JMX MBeans use the Java Transaction API, for example.
    Concerning scalability, the technology is reasonably scalable along the various dimensions (number of managed objects, number of servers, number of clients). Scalability is one of the main targets of the work we are doing on the next version of the API, due to ship with the Java 7 platform, but the existing scalability will usually be enough except for the biggest deployments.
    Regards,
    �amonn McManus -- JMX Spec Lead -- [http://weblogs.java.net/blog/emcmanus]

  • Business Service -- Business System

    Hi all,
    I've read several tutorials about scenarios in XI and have seen that sometimes business services are used and in some cases they use business systems to implement a communication partner. When do I use business services and when do I use business systems?
    Thanks in advance and regards,
    Marc

    Hi Marc,
    You use a Business Service, when you do not have the System details of the the partner system to which you want to communicate. i.e. you have not configured the partner system in SLD.
    Business System is always configured in SLD and you use it when you have all the data you need to connect to the partner system
    Michal: correct me if I am wrong.
    Regards,
    Padmaja

  • Business System  and Business Service

    Hi,
        A lot of confusion in this situation .When we will go for a  Business System.. and When we will  choose Business Service...we are using some SAP systems  only.. even though we are configuring those as a business services...
    can any one clarrify some clearly..
    Thanks
    babu

    <b>URL</b>
    http://help.sap.com/saphelp_nw04/helpdata/en/fe/131eb4ef2fb344abf471c9eac0063a/frameset.htm and then navigate back up the tree to the <b>Service</b> heading
    I have provided an excerpt from the documentation
    <b>Business System</b>
    If you want to address an abstract business entity as the sender or receiver of messages, choose this service type.
    If you want to address a particular business system as the sender or receiver of messages, choose this service type.
    A business system is an actual application system in a system landscape. A business system (service) comprises information about the inbound and outbound interfaces and the software component versions of the business system.
    You usually use business system services when configuring internal company processes.
    <b>Business Service</b>
    Using a business service, you can define the technical or business subunits of the companies involved and then assign them the relevant interfaces.
    You usually use business services when configuring cross-company processes. In this case, you only make your interfaces known to the business partners involved and either do not make any details about your own system landscape available, or only specific details. 
    For example, you can define RosettaNet Partner Interface Processes (PIPs) as business services.

  • Business Service Without Party in Integration Scenrio Configurator

    Hi everybody
    I am stucking in a small issue but do not found a related thread.
    Can anybody explain me, why I cannot assign a "Business Service" of typ "Service without Party" to an Application Component? I am try to configure my integration Process and call in the directory Tools --> Transfer Integration Scenario from Integration Repository. In the following Configurator I can only assign Business Systems from SLD or Services with a Party depending on the settings of the Application Component in the Repository (Flag "External Party with B2B Communication"). If you configure the scenario manually it is possible to involve Business Services without party. But I would like to make use of the Wizard and my Customer has a lot of Systems maintained as Business services.
    Any suggestions?
    Regards Oliver

    Hi,
    I have not done this type of task before.. but from the given links
    see the below information was in the above first link
    The following steps are then only required if the application component has at least one connection to a B2B component.
           3.      On the Business Services for B2B tab page, enter the business service that you want to use for B2B communication.
    The integration process service that is already entered on the  Integration Process Service for A2A tab page is then assigned to this business service.
    B2B Component...
           1.      On the Business Services for B2B tab page, assign the business services.
    Use the input help () to select the business services.
           2.      If you want to create a new business service, choose Create Business Service ().
    To assign multiple services simultaneously, choose Input Help () in the toolbar of the table (only when assigning business services and business system services).
    Regards
    Chilla

Maybe you are looking for

  • Error when opening a pdf file in chinese

    Hello, I have created a specific PO form by copying the standard one BBP_PO in SRM. After generating a pdf file with my specific form, I get the error "There was a problem reading this document (15)" when I try to open it. I can see some characters,

  • Installed Mountain Lion 10.8.2 can't find files music videos pictures!!!!

    We have an iMac as our home computer and yesterday I downloaded the ML OSx 10.8.2 version.  Like everything else that Apple does, I expected this to be a seamless easy experience so I didn't pay a lot of attention during the install, just answered th

  • BOM Sortstring field

    Hi All PP Gurus, Can you please help me in the following issue. Its very urgent please help me in this case. On the BOM master, we put the sorting string on the sortstring field. assume we put all the bom components into the same phase,but the proces

  • New iMacs and PS/Bridge

    I'm buying a new iMac this coming (sales-tax free) weekend and have been reading as much as I can find about the new Core i3 and i5 chips, and different video cards in the 21.5-inch models.  Benchmark tests, etc., etc. don't seem to say much about vi

  • MOVED: How do I make a raid driver floppy for Vista?

    This topic has been moved to Vista problems. https://forum-en.msi.com/index.php?topic=107538.0