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 ro...@apache.org on 2007/09/12 22:55:04 UTC

svn commit: r575071 - /webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java

Author: rott
Date: Wed Sep 12 13:55:04 2007
New Revision: 575071

URL: http://svn.apache.org/viewvc?rev=575071&view=rev
Log:
Committer:  Roy Wood
Currently, implementation classes which do not specify an endpoint interface (i.e.  @WebService.endpointInterface=...) cause too many method to be published.  In this case, currently all public methods from all superclasses up to, but not including, java.lang.Object are published.  This is incorrect; only methods from superclasses which carry an  @WebService annotation should be published.

Modified:
    webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java

Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java?rev=575071&r1=575070&r2=575071&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java Wed Sep 12 13:55:04 2007
@@ -668,24 +668,12 @@
                             "EndpointInterfaceDescriptionImpl: cannot find super class that was specified for this class");
                 }
 
+                //If the superclass contains a WebService annotation then retrieve its methods
+                //as we would for the impl class, otherwise ignore the methods of this
+                //superclass
                 if (superDBC.getWebServiceAnnot() != null) {
                     //Now, gather the list of Methods just like we do for the lowest subclass
                     retrieveList.addAll(retrieveImplicitSEIMethods(superDBC));
-                } else {
-                    //This superclass does not contain a WebService annotation, add only the
-                    //methods that are annotated with WebMethod
-
-                    Iterator<MethodDescriptionComposite> iterMethod =
-                            dbc.getMethodDescriptionsList().iterator();
-
-                    while (iterMethod.hasNext()) {
-                        MethodDescriptionComposite mdc = iterMethod.next();
-
-                        if (!DescriptionUtils.isExcludeTrue(mdc)) {
-                            mdc.setDeclaringClass(superDBC.getClassName());
-                            retrieveList.add(mdc);
-                        }
-                    }
                 }
                 tempDBC = superDBC;
             } //Done with implied SEI's superclasses



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org