private void createFaultString(SOAPFactory factory, SOAPFault soapFault, CougarFault fault) { SOAPFaultReason reason = factory.createSOAPFaultReason(soapFault); reason.setText(fault.getErrorCode()); }
@Override public Soap11Fault addFault(QName code, String faultString, Locale faultStringLocale) { Assert.notNull(code, "No faultCode given"); Assert.hasLength(faultString, "faultString cannot be empty"); if (!StringUtils.hasLength(code.getNamespaceURI())) { throw new IllegalArgumentException( "A fault code with namespace and local part must be specific for a custom fault code"); } if (!langAttributeOnSoap11FaultString) { faultStringLocale = null; } try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); setValueText(code, fault, faultCode); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (faultStringLocale != null) { addLangAttribute(faultStringLocale, faultReason); } faultReason.setText(faultString); return new AxiomSoap11Fault(fault, getAxiomFactory()); } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
public Soap11Fault addFault(QName code, String faultString, Locale faultStringLocale) { Assert.notNull(code, "No faultCode given"); Assert.hasLength(faultString, "faultString cannot be empty"); if (!StringUtils.hasLength(code.getNamespaceURI())) { throw new IllegalArgumentException( "A fault code with namespace and local part must be specific for a custom fault code"); } if (!langAttributeOnSoap11FaultString) { faultStringLocale = null; } try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); setValueText(code, fault, faultCode); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (faultStringLocale != null) { addLangAttribute(faultStringLocale, faultReason); } faultReason.setText(faultString); return new AxiomSoap11Fault(fault, getAxiomFactory()); } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
@Override public Soap11Fault addFault(QName code, String faultString, Locale faultStringLocale) { Assert.notNull(code, "No faultCode given"); Assert.hasLength(faultString, "faultString cannot be empty"); if (!StringUtils.hasLength(code.getNamespaceURI())) { throw new IllegalArgumentException( "A fault code with namespace and local part must be specific for a custom fault code"); } if (!langAttributeOnSoap11FaultString) { faultStringLocale = null; } try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); setValueText(code, fault, faultCode); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (faultStringLocale != null) { addLangAttribute(faultStringLocale, faultReason); } faultReason.setText(faultString); return new AxiomSoap11Fault(fault, getAxiomFactory()); } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
@Override public Soap11Fault addFault(QName code, String faultString, Locale faultStringLocale) { Assert.notNull(code, "No faultCode given"); Assert.hasLength(faultString, "faultString cannot be empty"); if (!StringUtils.hasLength(code.getNamespaceURI())) { throw new IllegalArgumentException( "A fault code with namespace and local part must be specific for a custom fault code"); } if (!langAttributeOnSoap11FaultString) { faultStringLocale = null; } try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); setValueText(code, fault, faultCode); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (faultStringLocale != null) { addLangAttribute(faultStringLocale, faultReason); } faultReason.setText(faultString); return new AxiomSoap11Fault(fault, getAxiomFactory()); } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
private SOAPFault addStandardFault(String localName, String faultString, Locale locale) { Assert.notNull(faultString, "No faultString given"); try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); faultCode.setText(new QName(fault.getNamespace().getNamespaceURI(), localName, fault.getNamespace().getPrefix())); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (locale != null) { addLangAttribute(locale, faultReason); } faultReason.setText(faultString); return fault; } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
private SOAPFault addStandardFault(String localName, String faultString, Locale locale) { Assert.notNull(faultString, "No faultString given"); try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); faultCode.setText(new QName(fault.getNamespace().getNamespaceURI(), localName, fault.getNamespace().getPrefix())); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (locale != null) { addLangAttribute(locale, faultReason); } faultReason.setText(faultString); return fault; } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
private SOAPFault addStandardFault(String localName, String faultString, Locale locale) { Assert.notNull(faultString, "No faultString given"); try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); faultCode.setText(new QName(fault.getNamespace().getNamespaceURI(), localName, fault.getNamespace().getPrefix())); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (locale != null) { addLangAttribute(locale, faultReason); } faultReason.setText(faultString); return fault; } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
/** * Crete SOAP Fault from fault information returned from ODE. * * @param bpelMessageContext DTO containing information on current messageflow. * @param odeMessageContext ODE MyRoleMessageExchange containing information on current process * invocation. * @return SOAPFault instance * @throws AxisFault in case of a error while creating SOAP Fault. */ public static SOAPFault createSoapFault(final BPELMessageContext bpelMessageContext, final MessageExchange odeMessageContext) throws AxisFault { SOAPFactory soapFactory = bpelMessageContext.getSoapFactoryForCurrentMessageFlow(); OMElement detail = buildSoapDetail(bpelMessageContext, odeMessageContext); SOAPFault fault = soapFactory.createSOAPFault(); SOAPFaultCode code = soapFactory.createSOAPFaultCode(fault); code.setText(new QName(Namespaces.SOAP_ENV_NS, "Server")); SOAPFaultReason reason = soapFactory.createSOAPFaultReason(fault); reason.setText(odeMessageContext.getFault()); SOAPFaultDetail soapDetail = soapFactory.createSOAPFaultDetail(fault); if (detail != null) { soapDetail.addDetailEntry(detail); } return fault; }
private void setFaultReason(MessageContext synCtx, SOAPFactory factory, SOAPFault fault, int soapVersion) { String reasonString = null; if (faultReasonValue == null && faultReasonExpr == null) { handleException("A valid fault reason value or expression is required", synCtx); } else if (faultReasonValue != null) { reasonString = faultReasonValue; } else { reasonString = faultReasonExpr.stringValueOf(synCtx); } SOAPFaultReason reason = factory.createSOAPFaultReason(); switch(soapVersion) { case SOAP11: reason.setText(reasonString); break; case SOAP12: SOAPFaultText text = factory.createSOAPFaultText(); text.setText(reasonString); text.setLang("en"); reason.addSOAPText(text); break; } fault.setReason(reason); }
/** * Sets the fault string for this SOAPFault object to the given string. If this SOAPFault is * part of a message that supports SOAP 1.2 then this call is equivalent to: * addFaultReasonText(faultString, Locale.getDefault()); * * @param faultString - a String giving an explanation of the fault * @throws SOAPException - if there was an error in adding the faultString to the underlying XML * tree. * @see getFaultString() */ public void setFaultString(String faultString, Locale locale) throws SOAPException { if (this.omTarget.getReason() != null) { SOAPFaultReason reason = this.omTarget.getReason(); if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAPVersion.SOAP11) { reason.setText(faultString); } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAPVersion.SOAP12) { addFaultReasonText(faultString, locale); } } else { if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAPVersion.SOAP11) { SOAPFaultReason reason = ((SOAPFactory)this.omTarget .getOMFactory()).createSOAPFaultReason(this.omTarget); reason.setText(faultString); } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAPVersion.SOAP12) { addFaultReasonText(faultString, locale); } } this.faultReasonLocale = locale; }
private void setFaultReason(MessageContext synCtx, SOAPFactory factory, SOAPFault fault, int soapVersion) { String reasonString = null; if (faultReasonValue == null && faultReasonExpr == null) { handleException("A valid fault reason value or expression is required", synCtx); } else if (faultReasonValue != null) { reasonString = faultReasonValue; } else { reasonString = faultReasonExpr.stringValueOf(synCtx); } SOAPFaultReason reason = factory.createSOAPFaultReason(); switch(soapVersion) { case SOAP11: reason.setText(reasonString); break; case SOAP12: SOAPFaultText text = factory.createSOAPFaultText(); text.setText(reasonString); text.setLang("en"); reason.addSOAPText(text); break; } fault.setReason(reason); }
private SOAPFault addStandardFault(String localName, String faultString, Locale locale) { Assert.notNull(faultString, "No faultString given"); try { AxiomUtils.removeContents(getAxiomBody()); SOAPFault fault = getAxiomFactory().createSOAPFault(getAxiomBody()); SOAPFaultCode faultCode = getAxiomFactory().createSOAPFaultCode(fault); faultCode.setText(QNameUtils.createQName(fault.getNamespace().getNamespaceURI(), localName, fault.getNamespace().getPrefix())); SOAPFaultReason faultReason = getAxiomFactory().createSOAPFaultReason(fault); if (locale != null) { addLangAttribute(locale, faultReason); } faultReason.setText(faultString); return fault; } catch (SOAPProcessingException ex) { throw new AxiomSoapFaultException(ex); } }
"An error occurred while processing the received ebMS message. Check ebMS errors for details."; if (isSoap11) { fReason.setText(reason); } else { final SOAPFaultText fReasonText = factory.createSOAPFaultText(fReason);
SOAPEnvelope message = soapFactory.getDefaultFaultEnvelope(); SOAPFaultReason soapFaultReason = soapFactory.createSOAPFaultReason(); soapFaultReason.setText(reason); message.getBody().getFault().setReason(soapFaultReason); SOAPFaultCode soapFaultCode = soapFactory.createSOAPFaultCode();
SOAPEnvelope message = soapFactory.getDefaultFaultEnvelope(); SOAPFaultReason soapFaultReason = soapFactory.createSOAPFaultReason(); soapFaultReason.setText(reason); message.getBody().getFault().setReason(soapFaultReason); SOAPFaultCode soapFaultCode = soapFactory.createSOAPFaultCode();
/** * Sets the fault string for this SOAPFault object to the given string. If this SOAPFault is * part of a message that supports SOAP 1.2 then this call is equivalent to: * addFaultReasonText(faultString, Locale.getDefault()); * * @param faultString - a String giving an explanation of the fault * @throws SOAPException - if there was an error in adding the faultString to the underlying XML * tree. * @see getFaultString() */ public void setFaultString(String faultString, Locale locale) throws SOAPException { if (this.omTarget.getReason() != null) { SOAPFaultReason reason = this.omTarget.getReason(); if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) { reason.setText(faultString); } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) { addFaultReasonText(faultString, locale); } } else { if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) { SOAPFaultReason reason = ((SOAPFactory)this.omTarget .getOMFactory()).createSOAPFaultReason(this.omTarget); reason.setText(faultString); } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) { addFaultReasonText(faultString, locale); } } this.faultReasonLocale = locale; }
reason.setText(data.getReason()); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_CODE_LOCAL_NAME, faultCode); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail);
case SOAP_11: code.setText(fault.getCode().getTextAsQName()); reason.setText(fault.getReason().getText()); break; case SOAP_12:
/** * Helper method to create soap fault message * @param code fault code * @param reason fault reason * @param detail fault detail * @return SOAPEnvelope containing soap fault */ private SOAPEnvelope createSoapFaultMessage(String code, String reason, String detail) { SOAP11Factory factory = new SOAP11Factory(); SOAPEnvelope envelope = factory.createSOAPEnvelope(); SOAPBody body = factory.createSOAPBody(envelope); SOAPFault fault = factory.createSOAPFault(body); if(code != null) { factory.createSOAPFaultCode(fault).setText(code); } if(reason != null) { factory.createSOAPFaultReason(fault).setText(reason); } if(detail != null) { factory.createSOAPFaultDetail(fault).setText(detail); } return envelope; } }