You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2008/11/18 17:11:55 UTC

svn commit: r718640 - in /cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support: JaxWsServiceConfiguration.java Messages.properties

Author: dkulp
Date: Tue Nov 18 08:11:53 2008
New Revision: 718640

URL: http://svn.apache.org/viewvc?rev=718640&view=rev
Log:
Add some error messages for a common Request/ResponseWrapper annotation mistake

Modified:
    cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
    cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/Messages.properties

Modified: cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java?rev=718640&r1=718639&r2=718640&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java (original)
+++ cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java Tue Nov 18 08:11:53 2008
@@ -26,6 +26,8 @@
 import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.Future;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import javax.jws.Oneway;
 import javax.jws.WebMethod;
@@ -44,6 +46,7 @@
 import javax.xml.ws.WebFault;
 
 import org.apache.cxf.common.classloader.ClassLoaderUtils;
+import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.common.util.PackageUtils;
 import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.interceptor.Fault;
@@ -56,6 +59,7 @@
 import org.apache.cxf.service.model.OperationInfo;
 
 public class JaxWsServiceConfiguration extends AbstractServiceConfiguration {
+    private static final Logger LOG = LogUtils.getL7dLogger(JaxWsServiceConfiguration.class); 
 
     private JaxWsImplementorInfo implInfo;
     /**
@@ -553,6 +557,12 @@
                 Class r = ClassLoaderUtils.loadClass(clsName, implInfo.getEndpointClass());
                 responseMethodClassCache.put(clsName, r);
                 responseMethodClassCache.put(selected, r);
+                
+                if (r.equals(m.getReturnType())) {
+                    LOG.log(Level.WARNING, "INVALID_RESPONSE_WRAPPER", new Object[] {clsName,
+                            m.getReturnType().getName()});
+                }
+
                 return r;
             } catch (ClassNotFoundException e) {
                 //do nothing, we will mock a schema for wrapper bean later on
@@ -617,6 +627,10 @@
                 Class r = ClassLoaderUtils.loadClass(clsName, implInfo.getEndpointClass());
                 requestMethodClassCache.put(clsName, r);
                 requestMethodClassCache.put(selected, r);
+                if (m.getParameterTypes().length == 1 && r.equals(m.getParameterTypes()[0])) {
+                    LOG.log(Level.WARNING, "INVALID_REQUEST_WRAPPER", new Object[] {clsName,
+                            m.getParameterTypes()[0].getName()});
+                }
                 return r;
             } catch (ClassNotFoundException e) {
                 //do nothing, we will mock a schema for wrapper bean later on

Modified: cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/Messages.properties
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/Messages.properties?rev=718640&r1=718639&r2=718640&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/Messages.properties (original)
+++ cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/Messages.properties Tue Nov 18 08:11:53 2008
@@ -25,3 +25,5 @@
 MALFORMED_URL_IN_WEBSERVICE_ANNOTATION_EXC = Malformed url in @WebService annotation attribute wsdlLocation.
 LOAD_WSDL_EXC = Could not load WSDL from URL {0}.
 COULD_NOT_FIND_ENDPOINT = Could not find endpoint named {0}.  Possible values are {1}.
+INVALID_REQUEST_WRAPPER = @RequestWrapper class {0} is the same as the actual parameter {1}.  This is likely not to work. 
+INVALID_RESPONSE_WRAPPER = @ResponseWrapper class {0} is the same as the actual return class {1}.  This is likely not to work.