dain 2005/06/22 20:56:43
Modified: modules/core/src/java/org/openejb/corba CSSBean.java
StandardServant.java
Log:
Removed PortableStubGenerator since it is totally broken. We now use
DynamicStubClassLoader instead.
Added StubDelegate to handle assigning ClientDelegate objects to new stubs
Removed ClienContextHolder since it is no longer used
Fixed several marshalling errors in the StubMethodInterceptor
Revision Changes Path
1.11 +8 -6
openejb/modules/core/src/java/org/openejb/corba/CSSBean.java
Index: CSSBean.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/corba/CSSBean.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- CSSBean.java 2 Jun 2005 02:57:00 -0000 1.10
+++ CSSBean.java 23 Jun 2005 00:56:42 -0000 1.11
@@ -180,10 +180,12 @@
org.omg.CORBA.Object bean = ic.resolve(nameComponent);
String beanIOR = nssORB.object_to_string(bean);
- bean = cssORB.string_to_object(beanIOR);
-
- if (bean instanceof ClientContextHolder) {
- ((ClientContextHolder) bean).setClientContext(context);
+ ClientContext oldClientContext =
ClientContextManager.getClientContext();
+ try {
+ ClientContextManager.setClientContext(context);
+ bean = cssORB.string_to_object(beanIOR);
+ } finally {
+ ClientContextManager.setClientContext(oldClientContext);
}
return bean;
1.3 +4 -4
openejb/modules/core/src/java/org/openejb/corba/StandardServant.java
Index: StandardServant.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/corba/StandardServant.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StandardServant.java 22 Jun 2005 19:39:52 -0000 1.2
+++ StandardServant.java 23 Jun 2005 00:56:43 -0000 1.3
@@ -217,7 +217,7 @@
return new Long(in.read_longlong());
} else if (type == short.class) {
return new Short(in.read_short());
- } else if (type == Object.class) {
+ } else if (type == Object.class || type == Serializable.class) {
return Util.readAny(in);
} else if (Remote.class.isAssignableFrom(type)) {
return PortableRemoteObject.narrow(in.read_Object(), type);
@@ -245,7 +245,7 @@
out.write_longlong(((Long)result).longValue());
} else if (type == short.class) {
out.write_short(((Short)result).shortValue());
- } else if (type == Object.class) {
+ } else if (type == Object.class || type == Serializable.class) {
Util.writeAny(out, result);
} else if (Remote.class.isAssignableFrom(type)) {
Util.writeRemoteObject(out, result);