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 2013/09/11 20:59:02 UTC
svn commit: r1521983 -
/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java
Author: dkulp
Date: Wed Sep 11 18:59:02 2013
New Revision: 1521983
URL: http://svn.apache.org/r1521983
Log:
The service class classloader must be part of the loader.
Modified:
cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java
Modified: cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java?rev=1521983&r1=1521982&r2=1521983&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java (original)
+++ cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/frontend/ClientProxyFactoryBean.java Wed Sep 11 18:59:02 2013
@@ -32,6 +32,7 @@ import org.apache.cxf.binding.BindingCon
import org.apache.cxf.common.classloader.ClassLoaderUtils;
import org.apache.cxf.common.classloader.ClassLoaderUtils.ClassLoaderHolder;
import org.apache.cxf.common.injection.NoJSR250Annotations;
+import org.apache.cxf.common.util.ProxyClassLoader;
import org.apache.cxf.common.util.ProxyHelper;
import org.apache.cxf.configuration.Configurer;
import org.apache.cxf.configuration.security.AuthorizationPolicy;
@@ -172,6 +173,13 @@ public class ClientProxyFactoryBean exte
Class<?> classes[] = getImplementingClasses();
+ if (loader != null && loader != clientFactoryBean.getServiceClass().getClassLoader()) {
+ ProxyClassLoader pcl = new ProxyClassLoader();
+ pcl.addLoader(clientFactoryBean.getServiceClass().getClassLoader());
+ pcl.addLoader(loader);
+ loader = pcl;
+ }
+
Object obj = ProxyHelper.getProxy(loader == null
? clientFactoryBean.getServiceClass().getClassLoader()
: loader,