You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ng...@apache.org on 2006/11/08 04:44:50 UTC
svn commit: r472375 - in
/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws:
client/proxy/JAXWSProxyHandler.java wrapper/impl/PropertyInfo.java
Author: ngallardo
Date: Tue Nov 7 19:44:50 2006
New Revision: 472375
URL: http://svn.apache.org/viewvc?view=rev&rev=472375
Log:
AXIS2-1626
Contributor: Nikhil Thaker
Nikhil's patch for this holder related issue.
Modified:
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/JAXWSProxyHandler.java
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/wrapper/impl/PropertyInfo.java
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/JAXWSProxyHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/JAXWSProxyHandler.java?view=diff&rev=472375&r1=472374&r2=472375
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/JAXWSProxyHandler.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/JAXWSProxyHandler.java Tue Nov 7 19:44:50 2006
@@ -334,7 +334,7 @@
private boolean isValidMethodCall(Method method){
Class clazz = method.getDeclaringClass();
- if(clazz == javax.xml.ws.BindingProvider.class || clazz == seiClazz){
+ if(clazz.isAssignableFrom(javax.xml.ws.BindingProvider.class) || clazz.isAssignableFrom(seiClazz)){
return true;
}
return false;
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/wrapper/impl/PropertyInfo.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/wrapper/impl/PropertyInfo.java?view=diff&rev=472375&r1=472374&r2=472375
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/wrapper/impl/PropertyInfo.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/wrapper/impl/PropertyInfo.java Tue Nov 7 19:44:50 2006
@@ -21,11 +21,14 @@
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
public class PropertyInfo {
String propertyName;
PropertyDescriptor descriptor;
-
+ private static Log log = LogFactory.getLog(PropertyInfo.class);
/**
* @param propertyName
* @param descriptor
@@ -46,9 +49,22 @@
return method.invoke(targetBean, null);
}
- public void set(Object targetBean, Object propValue)throws InvocationTargetException, IllegalAccessException{
+ public void set(Object targetBean, Object propValue)throws InvocationTargetException, IllegalAccessException, JAXBWrapperException{
Method method = descriptor.getWriteMethod();
- method.invoke(targetBean, propValue);
+ Object[] object = new Object[]{propValue};
+ Class[] paramTypes = method.getParameterTypes();
+ if(paramTypes !=null && paramTypes.length ==1){
+ Class paramType = paramTypes[0];
+ if(paramType.isPrimitive() && propValue == null){
+ //Ignoring null value for primitive type, this could potentially be the way of a customer indicating to set
+ //default values defined in JAXBObject/xmlSchema.
+ if(log.isDebugEnabled()){
+ log.debug("Ignoring null value for primitive type, this is the way to set default values defined in JAXBObject/xmlSchema. for primitive types");
+ }
+ return;
+ }
+ }
+ method.invoke(targetBean, object);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org