0 Replies Latest reply on Feb 25, 2010 11:27 PM by 753430

    Oracle SOA Suite - SOAP Fault content not being returned

      It starts with a fairly standard scenario: from within a BPEL process in Oracle SOA Suite, I’m making a call to an external web service. The not-so-standard part: the owner of the external web service has decided to return all errors in the form of a SOAP fault. Unfortunately, this error schema is not included in the WSDL. If we call the external web service directly (via SOAPUI, for example), we get the following, including a nice explanation of why it errored out:

      <soapenv:Fault xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:err="error.xml.common">
      <err:Description>Field value is invalid Credit Card Number V failed mod10 check</err:Description>
      <err:StackTrace>subscription.memberservices.common.exception.ServiceInvocationException: 1031~Field value is invalid Credit Card Number V failed mod10 check
      at subscription.memberservices.common.client.http.CiaHttpClient.checkForErrors(CiaHttpClient.java:120)
      at subscription.memberservices.common.client.http.CiaHttpClient.enroll(CiaHttpClient.java:50)
      at subscription.memberservices.na.processes.enroll.EnrollProcess.callCiaEnroll(EnrollProcess.jpd:1003)
      at subscription.memberservices.na.processes.enroll.EnrollProcess_wf$ImplControlSend14.invoke(EnrollProcess_wf.java:145)
      at com.bea.wli.bpm.runtime.Perform.execute(Perform.java:32)
      ... 38 more</err:StackTrace>

      No matter what I try, however, I can’t fetch the information in the “detail” element above. When examining the audit trail in SOA Suite, I can only see this:

      <part name="summary">
      <part name="detail">
      <detail>javax.xml.ws.soap.SOAPFaultException: Undefined</detail>
      <part name="code">

      It seems SOA Suite is “protecting” my service from the other SOAP fault elements instead of passing everything back, only passing the faultstring element. I even tried adding an ErrorList schema to match theirs but to no avail. Anyone out there have any experience, luck or ideas with this problem?

      Thanks for the assistance,