You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/10/23 01:15:56 UTC

svn commit: r1401123 - in /openejb/trunk/openejb: container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java osgi/openejb-feature/src/main/feature/feature.xml

Author: rmannibucau
Date: Mon Oct 22 23:15:55 2012
New Revision: 1401123

URL: http://svn.apache.org/viewvc?rev=1401123&view=rev
Log:
better feature for rest/jaxws + light fix for ejb local bean proxies when ivmproxy is not loadable at all

Modified:
    openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java
    openejb/trunk/openejb/osgi/openejb-feature/src/main/feature/feature.xml

Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java?rev=1401123&r1=1401122&r2=1401123&view=diff
==============================================================================
--- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java (original)
+++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/proxy/ProxyEJB.java Mon Oct 22 23:15:55 2012
@@ -30,8 +30,13 @@ public class ProxyEJB {
     }
 
     public static Object subclassProxy(final BeanContext beanContext) {
-        return LocalBeanProxyFactory.newProxyInstance(beanContext.getModuleContext().getClassLoader(), new Handler(beanContext),
+        try {
+            return LocalBeanProxyFactory.newProxyInstance(beanContext.getModuleContext().getClassLoader(), new Handler(beanContext),
                         beanContext.getBeanClass(), IntraVmProxy.class, Serializable.class);
+        } catch (InternalError ie) { // try without intravmproxy which is maybe not loadable (in OSGi it can happen)
+            return LocalBeanProxyFactory.newProxyInstance(beanContext.getModuleContext().getClassLoader(), new Handler(beanContext),
+                    beanContext.getBeanClass(), Serializable.class);
+        }
     }
 
     // same as proxy() but it doesn't add IvmProxy and Serializable interfaces (use in bridges proxies like OSGi services)

Modified: openejb/trunk/openejb/osgi/openejb-feature/src/main/feature/feature.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/osgi/openejb-feature/src/main/feature/feature.xml?rev=1401123&r1=1401122&r2=1401123&view=diff
==============================================================================
--- openejb/trunk/openejb/osgi/openejb-feature/src/main/feature/feature.xml (original)
+++ openejb/trunk/openejb/osgi/openejb-feature/src/main/feature/feature.xml Mon Oct 22 23:15:55 2012
@@ -133,19 +133,21 @@
   -->
 
   <feature name="openejb-cxf" version="${project.version}">
-    <feature>cxf</feature>
+    <feature>cxf-core</feature>
     <bundle>mvn:org.apache.openejb/openejb-http/${project.version}</bundle>
     <bundle>mvn:org.apache.openejb/openejb-cxf-transport/${project.version}</bundle>
   </feature>
 
   <feature name="openejb-rest" version="${project.version}">
     <feature>openejb-cxf</feature>
+    <feature>cxf-jaxrs</feature>
     <bundle>mvn:org.apache.openejb/openejb-rest/${project.version}</bundle>
     <bundle>mvn:org.apache.openejb/openejb-cxf-rs/${project.version}</bundle>
   </feature>
 
   <feature name="openejb-soap" version="${project.version}">
     <feature>openejb-cxf</feature>
+    <feature>cxf-jaxws</feature>
     <bundle>mvn:org.apache.openejb/openejb-webservices/${project.version}</bundle>
     <bundle>mvn:org.apache.openejb/openejb-cxf/${project.version}</bundle>
   </feature>