@Override @SuppressWarnings("unchecked") public Iterator<QName> getFaultSubcodes(SOAPFault fault) { return fault.getFaultSubcodes(); }
if (soapVersion != null && soapVersion.getVersion() != 1.1) { if (f instanceof SoapFault) { for (Iterator<QName> it = CastUtils.cast(sf.getFault().getFaultSubcodes()); it.hasNext();) { ((SoapFault) f).addSubCode(it.next());
@Override @SuppressWarnings("unchecked") public Iterator<QName> getFaultSubcodes() { return getSaajFault().getFaultSubcodes(); }
@Override @SuppressWarnings("unchecked") public Iterator<QName> getFaultSubcodes() { return getSaajFault().getFaultSubcodes(); }
@Override @SuppressWarnings("unchecked") public Iterator<QName> getFaultSubcodes() { return getSaajFault().getFaultSubcodes(); }
private CallErrorMessage parseError() { CallErrorMessage message = new CallErrorMessage(); String id = getElementValue(HEADER_RELATESTO); message.setId(id); try { SOAPFault fault = soapMessage.getSOAPBody().getFault(); if (fault.getFaultSubcodes().hasNext()) message.setErrorCode(((QName) fault.getFaultSubcodes().next()).getLocalPart()); if (fault.getFaultReasonTexts().hasNext()) message.setErrorDescription(fault.getFaultReasonTexts().next().toString()); } catch (SOAPException e) { logger.error("Parse error", e); } return message; }
/** * Adds Fault subcodes from {@link SOAPFault} to {@link #code} */ private void fillFaultSubCodes(SOAPFault fault) throws SOAPException { Iterator subcodes = fault.getFaultSubcodes(); SubcodeType firstSct = null; while(subcodes.hasNext()){ QName subcode = (QName)subcodes.next(); if(firstSct == null){ firstSct = new SubcodeType(subcode); code.setSubcode(firstSct); continue; } SubcodeType nextSct = new SubcodeType(subcode); firstSct.setSubcode(nextSct); firstSct = nextSct; } }
/** * Adds Fault subcodes from {@link SOAPFault} to {@link #code} */ private void fillFaultSubCodes(SOAPFault fault) throws SOAPException { Iterator subcodes = fault.getFaultSubcodes(); SubcodeType firstSct = null; while(subcodes.hasNext()){ QName subcode = (QName)subcodes.next(); if(firstSct == null){ firstSct = new SubcodeType(subcode); code.setSubcode(firstSct); continue; } SubcodeType nextSct = new SubcodeType(subcode); firstSct.setSubcode(nextSct); firstSct = nextSct; } }
/** * Adds Fault subcodes from {@link SOAPFault} to {@link #code} */ private void fillFaultSubCodes(SOAPFault fault) throws SOAPException { Iterator subcodes = fault.getFaultSubcodes(); SubcodeType firstSct = null; while(subcodes.hasNext()){ QName subcode = (QName)subcodes.next(); if(firstSct == null){ firstSct = new SubcodeType(subcode); code.setSubcode(firstSct); continue; } SubcodeType nextSct = new SubcodeType(subcode); firstSct.setSubcode(nextSct); firstSct = nextSct; } }
if (!SOAP11_SERVER_FAULT_TYPE.equals(faultQname) && exFault.getFaultSubcodes() != null) { Iterator<QName> faultSubcodes = exFault.getFaultSubcodes(); while (faultSubcodes.hasNext()) { fault.appendFaultSubcode(faultSubcodes.next());
if (!SOAP11_SERVER_FAULT_TYPE.equals(faultQname) && exFault.getFaultSubcodes() != null) { Iterator<QName> faultSubcodes = exFault.getFaultSubcodes(); while (faultSubcodes.hasNext()) { fault.appendFaultSubcode(faultSubcodes.next());
private void makeInvocation(DoubleItPortType port, boolean streaming) throws DoubleItFault { try { port.doubleIt(25); fail("Expected failure on a modified request"); } catch (SOAPFaultException ex) { SOAPFault fault = ex.getFault(); if (streaming) { assertTrue("soap:Sender".equals(fault.getFaultCode()) || "soap:Receiver".equals(fault.getFaultCode())); assertTrue(fault.getFaultString().contains(WSSecurityException.UNIFIED_SECURITY_ERR)); Iterator<?> subcodeIterator = fault.getFaultSubcodes(); assertFalse(subcodeIterator.hasNext()); } else { assertTrue(fault.getFaultCode().endsWith("Sender")); assertEquals(fault.getFaultString(), WSSecurityException.UNIFIED_SECURITY_ERR); Iterator<?> subcodeIterator = fault.getFaultSubcodes(); assertTrue(subcodeIterator.hasNext()); Object subcode = subcodeIterator.next(); assertEquals(WSSecurityException.SECURITY_ERROR, subcode); assertFalse(subcodeIterator.hasNext()); } } }
faultCode = soapFaultCode; code = new CodeType(faultCode); Iterator iter = fault.getFaultSubcodes(); boolean first = true; SubcodeType subcode = null;
if (soapVersion != null && soapVersion.getVersion() != 1.1) { if (f instanceof SoapFault) { for (Iterator<QName> it = CastUtils.cast(sf.getFault().getFaultSubcodes()); it.hasNext();) { ((SoapFault) f).addSubCode(it.next());
faultCode = soapFaultCode; code = new CodeType(faultCode); Iterator iter = fault.getFaultSubcodes(); boolean first = true; SubcodeType subcode = null;
faultCode = soapFaultCode; code = new CodeType(faultCode); Iterator iter = fault.getFaultSubcodes(); boolean first = true; SubcodeType subcode = null;
@Test public void testNonAnonSoap12Fault() throws Exception { try { AddNumbersPortType port = getNonAnonPort(); ((BindingProvider)port).getRequestContext() .put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://localhost:" + PORT2 + "/jaxws/soap12/add"); port.addNumbers(1, 2); fail("expected SOAPFaultException"); } catch (SOAPFaultException e) { assertTrue("expected non-anonymous required message", e.getMessage().contains("Found anonymous address but non-anonymous required")); assertTrue("expected sender faultCode", e.getFault().getFaultCode().contains("Sender")); assertTrue("expected OnlyNonAnonymousAddressSupported fault subcode", e.getFault() .getFaultSubcodes() .next() .toString() .contains("{http://www.w3.org/2005/08/addressing}OnlyNonAnonymousAddressSupported")); } }
/** * @param soapMessage the soap message to copy fault information from * @throws SOAPException if any */ public void copyFaultInfo(SOAPMessage soapMessage) throws SOAPException { SOAPFault fault = soapMessage.getSOAPBody().getFault(); setActor(fault.getFaultActor()); setCode(fault.getFaultCode()); setPrefix(fault.getFaultCodeAsName().getPrefix()); setCodeAsQName(fault.getFaultCodeAsQName()); setString(fault.getFaultString()); setStringLocale(fault.getFaultStringLocale()); if (fault.hasDetail()) { setDetail(fault.getDetail()); } // SOAP 1.2 specifics if (SOAPUtil.isSOAP12(soapMessage)) { setReasonLocales(fault.getFaultReasonLocales()); Iterator<Locale> locales = fault.getFaultReasonLocales(); while (locales.hasNext()) { Locale locale = locales.next(); addReasonText(locale, fault.getFaultReasonText(locale)); } setRole(fault.getFaultRole()); setSubcodes(fault.getFaultSubcodes()); } } }
/** * @param soapMessage the soap message to copy fault information from * @throws SOAPException if any */ public void copyFaultInfo(SOAPMessage soapMessage) throws SOAPException { SOAPFault fault = soapMessage.getSOAPBody().getFault(); setActor(fault.getFaultActor()); setCode(fault.getFaultCode()); setPrefix(fault.getFaultCodeAsName().getPrefix()); setCodeAsQName(fault.getFaultCodeAsQName()); setString(fault.getFaultString()); setStringLocale(fault.getFaultStringLocale()); if (fault.hasDetail()) { setDetail(fault.getDetail()); } // SOAP 1.2 specifics if (SOAPUtil.isSOAP12(soapMessage)) { setReasonLocales(fault.getFaultReasonLocales()); Iterator<Locale> locales = fault.getFaultReasonLocales(); while (locales.hasNext()) { Locale locale = locales.next(); addReasonText(locale, fault.getFaultReasonText(locale)); } setRole(fault.getFaultRole()); setSubcodes(fault.getFaultSubcodes()); } } }