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 2012/01/10 19:32:57 UTC

svn commit: r1229671 - in /cxf/branches/2.4.x-fixes: ./ rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java

Author: dkulp
Date: Tue Jan 10 18:32:57 2012
New Revision: 1229671

URL: http://svn.apache.org/viewvc?rev=1229671&view=rev
Log:
Merged revisions 1229669 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/branches/2.5.x-fixes

................
  r1229669 | dkulp | 2012-01-10 13:27:19 -0500 (Tue, 10 Jan 2012) | 10 lines
  
  Merged revisions 1229663 via svnmerge from 
  https://svn.apache.org/repos/asf/cxf/trunk
  
  ........
    r1229663 | dkulp | 2012-01-10 13:12:18 -0500 (Tue, 10 Jan 2012) | 2 lines
    
    [CXF-4018] Fix problems with providers not getting the proper
    JAXWSMethodInvoker
  ........
................

Modified:
    cxf/branches/2.4.x-fixes/   (props changed)
    cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java
    cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java

Propchange: cxf/branches/2.4.x-fixes/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Tue Jan 10 18:32:57 2012
@@ -0,0 +1,2 @@
+/cxf/branches/2.5.x-fixes:1229669
+/cxf/trunk:1229663

Propchange: cxf/branches/2.4.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java?rev=1229671&r1=1229670&r2=1229671&view=diff
==============================================================================
--- cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java (original)
+++ cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java Tue Jan 10 18:32:57 2012
@@ -64,6 +64,7 @@ import org.apache.cxf.endpoint.Endpoint;
 import org.apache.cxf.endpoint.EndpointException;
 import org.apache.cxf.helpers.CastUtils;
 import org.apache.cxf.jaxws.JAXWSMethodDispatcher;
+import org.apache.cxf.jaxws.JAXWSMethodInvoker;
 import org.apache.cxf.jaxws.JAXWSProviderMethodDispatcher;
 import org.apache.cxf.jaxws.WrapperClassGenerator;
 import org.apache.cxf.jaxws.interceptors.WebFaultOutInterceptor;
@@ -73,6 +74,8 @@ import org.apache.cxf.service.factory.Fa
 import org.apache.cxf.service.factory.FactoryBeanListener.Event;
 import org.apache.cxf.service.factory.ReflectionServiceFactoryBean;
 import org.apache.cxf.service.factory.ServiceConstructionException;
+import org.apache.cxf.service.invoker.Invoker;
+import org.apache.cxf.service.invoker.SingletonFactory;
 import org.apache.cxf.service.model.BindingInfo;
 import org.apache.cxf.service.model.BindingOperationInfo;
 import org.apache.cxf.service.model.EndpointInfo;
@@ -691,4 +694,13 @@ public class JaxWsServiceFactoryBean ext
         }
         super.initializeParameter(part, rawClass, type);
     }
+
+    @Override
+    protected Invoker createInvoker() {
+        Class<?> cls = getServiceClass();
+        if (cls.isInterface()) {
+            return null;
+        }
+        return new JAXWSMethodInvoker(new SingletonFactory(getServiceClass()));
+    }
 }

Modified: cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java?rev=1229671&r1=1229670&r2=1229671&view=diff
==============================================================================
--- cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java (original)
+++ cxf/branches/2.4.x-fixes/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/provider/ProviderServiceFactoryTest.java Tue Jan 10 18:32:57 2012
@@ -55,6 +55,7 @@ public class ProviderServiceFactoryTest 
         bean.setServiceClass(HWSoapMessageProvider.class);
 
         Service service = bean.create();
+        assertTrue(service.getInvoker() instanceof JAXWSMethodInvoker);
 
         assertEquals("SOAPService", service.getName().getLocalPart());
         assertEquals("http://apache.org/hello_world_soap_http", service.getName().getNamespaceURI());
@@ -68,6 +69,7 @@ public class ProviderServiceFactoryTest 
         svrFactory.setStart(false);
 
         ServerImpl server = (ServerImpl)svrFactory.create();
+        assertTrue(server.getEndpoint().getService().getInvoker() instanceof JAXWSMethodInvoker);
 
         Endpoint endpoint = server.getEndpoint();
         Binding binding = endpoint.getBinding();