-
Bug
-
Resolution: Done
-
Major
-
None
-
7.0.6.GA
-
None
-
Release Notes
-
-
-
-
-
-
When SOAPFaultException is thrown in the application with SOAP 1.1, the following message is logged in server.log though the method "getFaultSubcodes" is not called .
14:59:37,020 SEVERE [com.sun.xml.messaging.saaj.soap.ver1_1] (default task-2) SAAJ0303: Operation getFaultSubcodes not supported by SOAP 1.1
This comes from here:
88 public void handleMessage(Message message) throws Fault { 89 Fault f = (Fault)message.getContent(Exception.class); 90 if (f == null) { 91 return; 92 } 93 try { 94 Throwable thr = f.getCause(); 95 SOAPFaultException sf = null; 96 if (thr instanceof SOAPFaultException) { 97 sf = (SOAPFaultException)thr; 98 } else if (thr.getCause() instanceof SOAPFaultException) { 99 sf = (SOAPFaultException)thr.getCause(); 100 } 101 if (sf != null) { 102 if (f instanceof SoapFault) { 103 for (Iterator<QName> it = CastUtils.cast(sf.getFault().getFaultSubcodes()); it.hasNext();) { // <-- here 104 ((SoapFault) f).addSubCode(it.next()); 105 } 106 } 107 if (sf.getFault().getFaultReasonLocales().hasNext()) { 108 Locale lang = (Locale) sf.getFault() 109 .getFaultReasonLocales().next(); 110 String convertedLang = lang.getLanguage(); 111 String country = lang.getCountry(); 112 if (country.length() > 0) { 113 convertedLang = convertedLang + '-' + country; 114 } 115 f.setLang(convertedLang); 116 } 117 message.setContent(Exception.class, f); 118 } 119 } catch (Exception e) { 120 // do nothing; // <- UnsupportedOperationException is swallowed here. 121 } 122 Throwable cause = f.getCause(); 123 WebFault fault = null; 124 if (cause != null) { 125 fault = getWebFaultAnnotation(cause.getClass()); 126 } :
227 public Iterator getFaultSubcodes() { 228 log.log( 229 Level.SEVERE, 230 "SAAJ0303.ver1_1.msg.op.unsupported.in.SOAP1.1", 231 "getFaultSubcodes"); 232 throw new UnsupportedOperationException("Not supported in SOAP 1.1"); 233 } ~~~
Both SOAP1.1 and 1.2 this "getFaultSubcodes()" is called and SOAP 1.1 does not have an attribute "faultsubcoded" then, the message is logged in server.log.
I believe this "getFaultSubcodes()" should be called in case of only SOAP1.2 usage.
- clones
-
JBEAP-13882 [GSS](7.1.z) "SAAJ0303: Operation getFaultSubcodes not supported by SOAP 1.1" is logged when SOAPFaultException is thrown
- Closed
- is incorporated by
-
JBEAP-12339 [GSS](7.0.z) Upgrade Apache CXF to 3.1.13
- Closed
- is caused by
-
CXF-7453 Loading...