You would need to sign your applet. A good tutorial on how to do that is
available here
http://www-personal.umich.edu/~lsiden/tutorials/signed-applet/signed-applet.html
Also, make sure to sign openejb-client.jar too. This will get you past the
above restriction, however I still could not get it to work (though I got
past the security restrictions). I wrote a desktop client and it works fine.
Need to dig deeper into it.

On Fri, Feb 13, 2009 at 11:27 AM, mgyh <mgi...@comsys.com> wrote:

>
> Your suggestions did get me past my initial problem.  I guess that I did
> not
> realize that the applet was running in a separate VM.  I don't think that I
> completely understand that.  I'll do some reading on the side to get a
> better grasp of this.
>
> However, once I made these changes, I get an AccessControlException as
> follows:
>
> java.security.AccessControlException: access denied
> (java.util.PropertyPermission /QdbBeanLocal read)
>
> could you offer suggestions to get past this?  QdbBeanLocal is my JNDI name
> for my bean, which is located successfully from jsp.  I have tried the
> following unsuccessfully:
> 1) I tried the JNDI name QdbBeanRemote also
> 2) I added the following permissions to Tomcat's catalina.policy file
>    permission  org.apache.naming.JndiPermission
> "jndi://localhost/QdbBean", "read";
>    permission  org.apache.naming.JndiPermission
> "jndi://localhost/QdbBeanLocal", "read";
>    permission  org.apache.naming.JndiPermission
> "jndi://localhost/QdbBeanRemote", "read";
> 3) restarted Tomcat
>
> no luck. I am not particularly good at understanding security policy.  What
> am I missing?
>
>
>
> KMalhi wrote:
> >
> > 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
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Cannot-instantiate-class%3A-org.openejb.client.LocalInitialContextFactory-tp21965469p21999832.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
>
>


-- 
Karan Singh Malhi

Reply via email to