diff -ruN orig/org/apache/axis2/databinding/utils/BeanUtil.java patched/org/apache/axis2/databinding/utils/BeanUtil.java --- org/apache/axis2/databinding/utils/BeanUtil.java 2007-04-27 16:38:02.000000000 +0200 +++ org/apache/axis2/databinding/utils/BeanUtil.java 2007-06-14 22:11:52.000000000 +0200 @@ -91,7 +91,7 @@ throw new AxisFault("No service class found , exception from JAM"); } QName elemntNameSpace = null; - if (typeTable != null && qualified) { + if (typeTable != null && qualified && isProxyClass(beanObject) == false) { QName qNamefortheType = typeTable.getQNamefortheType(beanObject.getClass().getName()); if (qNamefortheType == null) { @@ -295,6 +295,11 @@ } } + private static boolean isProxyClass(Object beanObject) + { + return beanObject.getClass().getName().startsWith("$"); + } + /** * to get the pull parser for a given bean object , generate the wrpper element using class * name