Author: darran.lofthouse(a)jboss.com
Date: 2010-12-17 11:12:18 -0500 (Fri, 17 Dec 2010)
New Revision: 13518
Modified:
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java
Log:
[JBWS-3190] CommonSOAPFaultException: org.xml.sax.SAXParseException: Invalid encoding name
UTF8 - Messages rejected.
Modified:
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java
===================================================================
---
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java 2010-12-17
06:37:50 UTC (rev 13517)
+++
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java 2010-12-17
16:12:18 UTC (rev 13518)
@@ -24,6 +24,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
+import java.nio.charset.Charset;
import javax.xml.namespace.QName;
import javax.xml.soap.Name;
@@ -125,9 +126,22 @@
String encoding =
(String)soapMessage.getProperty(SOAPMessage.CHARACTER_SET_ENCODING);
if (encoding == null)
{
+ return "UTF-8";
+ }
+
+ try
+ {
+ Charset cs = Charset.forName(encoding);
+ encoding = cs.name();
+ }
+ catch (IllegalArgumentException e)
+ {
+ if (log.isDebugEnabled())
+ log.debug("Unsupported charset '" + encoding + "'
switching to 'UTF-8'");
encoding = "UTF-8";
}
- return encoding;
+
+ return encoding;
}
public SOAPEnvelope build(SOAPMessage soapMessage, Element domEnv) throws
SOAPException
Show replies by date