Hello everyone!
 
Has anyone tried to use a plug-in solution to convert a EJB-client-JavaBean into an ActiveX-control object with Orion?
We will consider this solution:
 
<VB/C++ scripting client or similar> ---COM--- <EJB-client JAR/Bean> --ORMI/IIOP--- <Enterprise Java Bean deployed in Orion>
 
Everything works out nice, except for one crucial point:
 
com.dewire.common.messaging.MessagingException: Unable to locate home interface for a class __Proxy1
 at com.dewire.common.messaging.MessageSenderImpl.createInstance(MessageSenderImpl.java:398)
 at com.dewire.common.messaging.MessageSenderImpl.send(MessageSenderImpl.java:324)
 Nested exception :
java.lang.ClassCastException
 at com.sun.corba.se.internal.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:296)
 at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
 at com.dewire.common.messaging.MessageSenderImpl.createInstance(MessageSenderImpl.java:390)
 at com.dewire.common.messaging.MessageSenderImpl.send(MessageSenderImpl.java:324)
This exception seems to occur *only* when trying to run the plug-in setup, it never occurs in a regular client setup (e g using startup in a EJB client JAR).
The platform chosen is: JDK 1.3, Orion 1.2.0, Win98, Plug-in from Sun 1.3.0. The plug-in has been setup (through the control panel) to use the JDK runtime environment (1.3).
What exactly is the "__Proxy1" class which I retreive in the JNDI lookup? Is the use of the "com.sun.corba.se" an indication of use of an incorrect SPI for underlying network communication?
 
Excerpt from the client code (where the exception is thrown):
 
    Object objRef = null;
    try
    {
      objRef = initial.lookup ("java:comp/env/ejb/"+ location);
    }
    catch (NamingException e)
    {
      throw new MessagingException (e, "Cannot resolve ejb name");
    }
    RemoteMessageSenderHome home = null;
    Throwable t = null;
    try
    {
      home = (RemoteMessageSenderHome) objRef;
    }
    catch (ClassCastException e)
    {
      t = e;
      try
      {
        home = (RemoteMessageSenderHome) PortableRemoteObject.narrow(objRef, RemoteMessageSenderHome.class);
      }
      catch (ClassCastException f)
      {
        t = f;
      }
    }
    if (home == null)
      throw new MessagingException (t, "Unable to locate home interface for a " + objRef.getClass().toString()); // Always happens in plug-in.
    else
      System.out.println ("Successfully resolved a " + objRef.getClass().toString()); // Always happens when not running Plug-in
 
Any tips regarding these matters would be greatly appreciated. I have plunged into different mail lists and news archives with no success.
 
/August
 
 
 

Reply via email to