You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by am...@apache.org on 2011/01/05 07:45:27 UTC
svn commit: r1055310 -
/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java
Author: amilas
Date: Wed Jan 5 06:45:27 2011
New Revision: 1055310
URL: http://svn.apache.org/viewvc?rev=1055310&view=rev
Log:
fixing the issue AXIS2-3397
Modified:
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java
Modified: axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java?rev=1055310&r1=1055309&r2=1055310&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java Wed Jan 5 06:45:27 2011
@@ -31,6 +31,8 @@ import javax.activation.DataHandler;
import javax.xml.namespace.QName;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.net.URI;
+import java.net.URISyntaxException;
public class SimpleTypeMapper {
@@ -45,6 +47,7 @@ public class SimpleTypeMapper {
private static final String W_FLOAT = "java.lang.Float";
private static final String W_CALENDAR = "java.util.Calendar";
private static final String W_DATE = "java.util.Date";
+ private static final String W_URI = URI.class.getName();
private static final String INT = "int";
private static final String BOOLEAN = "boolean";
private static final String BYTE = "byte";
@@ -141,8 +144,13 @@ public class SimpleTypeMapper {
}
else if(name.equals(YEAR_MONTH)) {
return new org.apache.axis2.databinding.types.YearMonth(text);
- }
- else {
+ } else if(name.equals(W_URI)) {
+ try {
+ return new URI(text);
+ } catch (URISyntaxException e) {
+ throw new RuntimeException(" Invalid URI " + text, e);
+ }
+ } else {
return null;
}
}
@@ -253,7 +261,12 @@ public class SimpleTypeMapper {
return true;
} else if (objClassName.equals(W_DATE)) {
return true;
- } /*
+ } else if (objClassName.equals(W_URI)) {
+ return true;
+ }
+
+
+ /*
* consider BigDecimal, BigInteger, Day, Duration, Month
* MonthDay, Time, Year, YearMonth as simple type
*/
@@ -301,6 +314,8 @@ public class SimpleTypeMapper {
}
}
return zulu.format(obj);
+ } else if (obj instanceof URI){
+ return obj.toString();
}
return obj.toString();
}