Repository: cxf
Updated Branches:
  refs/heads/master cc674df55 -> b4436e582


[CXF-5711] SOAP 1.2 fault reason xml:lang attribtue should follow XML standard


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/b4436e58
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/b4436e58
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/b4436e58

Branch: refs/heads/master
Commit: b4436e582d68ffc5322d9b8aca4d0b8afd53ff46
Parents: cc674df
Author: Akitoshi Yoshida <[email protected]>
Authored: Tue Apr 29 12:36:56 2014 +0200
Committer: Akitoshi Yoshida <[email protected]>
Committed: Tue Apr 29 14:06:19 2014 +0200

----------------------------------------------------------------------
 .../main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java | 11 ++++++++++-
 .../cxf/jaxws/interceptors/WebFaultOutInterceptor.java   |  2 +-
 2 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/b4436e58/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java
----------------------------------------------------------------------
diff --git 
a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java 
b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java
index 9b3f2f0..8a92c28 100644
--- a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java
+++ b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsClientProxy.java
@@ -27,6 +27,7 @@ import java.net.HttpURLConnection;
 import java.util.Locale;
 import java.util.Map;
 import java.util.concurrent.Future;
+import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.xml.namespace.QName;
@@ -257,7 +258,15 @@ public class JaxWsClientProxy extends 
org.apache.cxf.frontend.ClientProxy implem
     }
     
     private static Locale stringToLocale(String locale) {
-        String parts[] = locale.split("_", -1);
+        // use the IETF BCP 47 delimiter but accept the toString delimiter for 
cxf 2.7.x
+        final String ch;
+        if (locale.indexOf('_') > 0) {
+            LOG.log(Level.WARNING, "invalid IETF BCP 47 language tag: {0}", 
locale);
+            ch = "_";
+        } else {
+            ch = "-";
+        }
+        String parts[] = locale.split(ch, 0);
         if (parts.length == 1) {
             return new Locale(parts[0]);
         } else if (parts.length == 2) {

http://git-wip-us.apache.org/repos/asf/cxf/blob/b4436e58/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WebFaultOutInterceptor.java
----------------------------------------------------------------------
diff --git 
a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WebFaultOutInterceptor.java
 
b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WebFaultOutInterceptor.java
index 92f0951..882e9d2 100644
--- 
a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WebFaultOutInterceptor.java
+++ 
b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WebFaultOutInterceptor.java
@@ -105,7 +105,7 @@ public class WebFaultOutInterceptor extends 
FaultOutInterceptor {
                     String convertedLang = lang.getLanguage();
                     String country = lang.getCountry();
                     if (country.length() > 0) {
-                        convertedLang = convertedLang + '_' + country;
+                        convertedLang = convertedLang + '-' + country;
                     }
                     f.setLang(convertedLang);
                 }

Reply via email to