Author: darran.lofthouse(a)jboss.com
Date: 2010-12-17 12:15:39 -0500 (Fri, 17 Dec 2010)
New Revision: 13522
Modified:
stack/native/branches/jbossws-native-3.1.2.SP7_JBPAPP-5605/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java
Log:
[JBPAPP-5605] CommonSOAPFaultException: org.xml.sax.SAXParseException: Invalid encoding
name UTF8 - Messages rejected.
Modified:
stack/native/branches/jbossws-native-3.1.2.SP7_JBPAPP-5605/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java
===================================================================
---
stack/native/branches/jbossws-native-3.1.2.SP7_JBPAPP-5605/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java 2010-12-17
17:00:06 UTC (rev 13521)
+++
stack/native/branches/jbossws-native-3.1.2.SP7_JBPAPP-5605/modules/core/src/main/java/org/jboss/ws/core/soap/EnvelopeBuilderDOM.java 2010-12-17
17:15:39 UTC (rev 13522)
@@ -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;
@@ -124,9 +125,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