Fantastic response.

We should throw this one into a wiki page.

-David


Begin forwarded message:

Resent-From: <[email protected]>
From: Karan Malhi <[email protected]>
Date: February 12, 2009 7:09:06 PM PST
To: [email protected]
Subject: Re: Cannot instantiate class: org.openejb.client.LocalInitialContextFactory
Reply-To: [email protected]

Hi,

Here is what you would need to do to make it work. Firstly, you would need
to add the following jars in the root directory of your webapp --
javaee-api.jar and  openejb-client.jar (you can copy these from
<Tomcat-install>/webapps/openejb/lib ).
Update the Applet code as shown (notice that we are not using
LocalInitialContextFactory here)

           Properties props = new Properties();

props .put (Context .INITIAL_CONTEXT_FACTORY ,"org.apache.openejb.client.RemoteInitialContextFactory");
           props.put(Context.PROVIDER_URL,    "
http://127.0.0.1:8080/openejb/ejb";);
           Context ctx = new InitialContext(props);
Update the HTML as shown -- notice the archive attribute which has the comma separated list of jars needed by the applet (the version of jars on your
machine might be different than mine- but that should not matter)
<applet
codebase = "."
code     = "qdbapplets.MyApplet.class"
name     = "TestApplet"
width    = "400"
height   = "300"
hspace   = "0"
vspace   = "0"
align    = "top"
archive="openejb-client-3.1.1-SNAPSHOT.jar,javaee-api-5.0-1.jar"

</applet>



What is the
difference between the successful JSP code and the unsuccessful java
applet? I did add the openejb-core-3.1.jar to my classpath, but this
didn't work.  Any ideas?

JSP is running in the same VM as openejb, hence you can use
LocalInitialContextFactory. Applet runs in a separate VM, hence it would
need RemoteInitialContextFactory

In order to get more information, please refer to this page --
http://openejb.apache.org/3.0/clients.html

--
Karan Singh Malhi

Reply via email to