# calling ejb with applet



## willstern (7. Jan 2010)

hi leute ich habe an applet geschrieben mit einem button
beim click auf  dem Button soll ein verbindung zum server (glassfish ) hergestellt werden 
und ein jndi lookup soll ausgeführt werden.  in eclipse klappt alles gut  bloß in browser geht nicht 

kann mir bitte jemandem Helfen denn ich bin am Ende
folgende Fehler erhalte ich :



```
Caused by: java.security.AccessControlException: access denied (java.util.Proper
tyPermission org.omg.CORBA.ORBClass read)
        at java.security.AccessControlContext.checkPermission(AccessControlConte
xt.java:323)
```

habe in der java policy datei 
[XML]grant {

  permission java.security.AllPermission;

 permission java.util.PropertyPermission "*", "read,write";


};
[/XML]

der Code sieht so aus 
[XML]
	Properties properties = new Properties();		

			properties.put("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
			properties.put("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
			properties.put("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");

			properties.put("org.omg.CORBA.ORBInitialHost", "localhost");
			properties.put("org.omg.CORBA.ORBInitialPort", "3700");
			properties.put("java.naming.provider.url", "iiop://127.0.0.1:3700");

			InitialContext  ctx = new InitialContext(properties); 			

		 aea = (InterfaceBean) ctx.lookup("UserBean");
[/XML]


----------



## L-ectron-X (8. Jan 2010)

Du solltest das Ganze in Jar-Files organisieren und signieren. In der FAQ gibt es dazu die entsprechenden Beiträge.


----------



## willstern (8. Jan 2010)

L-ectron-X hat gesagt.:


> Du solltest das Ganze in Jar-Files organisieren und signieren. In der FAQ gibt es dazu die entsprechenden Beiträge.



hi 
ich habe das auch schon gemacht .  die FAQ habe ich auch schon gelesen und die hat mir sehr viel geholfen .
echt hut ab für diese FAQ. 

ich weiss echt nicht wie eclipse diese applet  kompiliert sodass die verbindung mit dem ejb container  klappt.
alle jar file von server habe ich in applet eingebunden.

welche verfahren benutzt denn eclipse ?  wie bringe ich ein browser bei  genauso wie eclipse en applet auszuführen?

naja ich probiere mal weiter aber ich bekomme bald graue haare ....


----------



## L-ectron-X (8. Jan 2010)

Kannst du mal deinen HTML-Code zeigen? Meistens ist da das Problem zu suchen.


----------



## willstern (8. Jan 2010)

L-ectron-X hat gesagt.:


> Kannst du mal deinen HTML-Code zeigen? Meistens ist da das Problem zu suchen.





[XML]
<html>
<body>
<applet

code= myClass.class 
width="200" height="200" >

<PARAM NAME="archive" VALUE="jarFile.jar ,javaee.jar, appserv-rt.jar,appserv-admin.jar,imqjmsra.jar,toplink-essentials.jar,acivation.jar,
appsrv-jstl.jar,appserv-tags.jar,mail.jar,jsf-impl.jar,appserv-deployment.jar, 
webservices-rt.jar,webservices-tools.jar, appserv-deployment-client.jar,appserv-launch.jar"> 

<PARAM NAME = CODEBASE VALUE = "." >

<!--  
<param name="java.naming.factory.initial" value="com.sun.jndi.cosnaming.CNCtxFactory">

<param name="java.naming.provider.url" value="iiop://localhost:3700">
 -->


<param name ="java.naming.factory.initial" value= "com.sun.enterprise.naming.SerialInitContextFactory">
<param name= "java.naming.factory.url.pkgs" value="com.sun.enterprise.naming">
<param name = "java.naming.factory.state" value= "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl">

<param name="org.omg.CORBA.ORBClass" value="read" >			               
<param name="org.omg.CORBA.ORBInitialHost" value="localhost" >
<param name ="org.omg.CORBA.ORBInitialPort" value= "3700">
<param name = "java.naming.provider.url" value= "iiop://127.0.0.1:3700">

</applet>
</body>
</html>
[/XML]


----------



## L-ectron-X (8. Jan 2010)

OK. Wie ich sagte: das Problem liegt in der HTML-Datei.
So, nun kannst du FAQ lesen. Da steht alles drin, was du wissen musst: http://www.java-forum.org/applets/4482-verweigert-browser-anzeige-java-applets.html


----------



## willstern (8. Jan 2010)

L-ectron-X hat gesagt.:


> OK. Wie ich sagte: das Problem liegt in der HTML-Datei.
> So, nun kannst du FAQ lesen. Da steht alles drin, was du wissen musst: http://www.java-forum.org/applets/4482-verweigert-browser-anzeige-java-applets.html



wäre sehr nett wenn du mir  hier in dem Thread  zeigt  wo genau  die Stelle ist, an der Den Fehler liegt.
bitte . 
ich habe noch mal dein Faq geguk und kann echt nicht die Stelle finden wo ich fehler mache.



du benutzst in dem FaQ kein  param tag  das habe ich auch gemacht und trotzdem funktionniert es nicht 

bitte sag mir doch hier und dann kann ich endlich wissen sonst kriege ich anfälle .


----------



## L-ectron-X (9. Jan 2010)

Was du mit den Parameter machen willst, kann ich von hier aus nicht nachvollziehen, das wirst du schon wissen, denke ich.
Aber wenn du mehrere externe Bibliotheken einbinden möchtest, muss das Applet-Tag etwa so aussehen:

```
<applet 
   code="myClass.class" 
   archive="jarFile.jar ,javaee.jar, appserv-rt.jar,appserv-admin.jar,imqjmsra.jar,toplink-essentials.jar,acivation.jar,
appsrv-jstl.jar,appserv-tags.jar,mail.jar,jsf-impl.jar,appserv-deployment.jar, 
webservices-rt.jar,webservices-tools.jar, appserv-deployment-client.jar,appserv-launch.jar"
   width="800"
   height="500"> 

   <param name="beispiel" value="wert">
</applet>
```

Sicherheitshalber kannst du alle Jar-Archive noch signieren. Zumindest die, die potenziell unsichere Operationen ausführen möchten.


----------

