| Author |
AccessControlException: access denied
|
Svitlana Dukhovna
Ranch Hand
Joined: Jan 13, 2004
Posts: 37
|
|
Hello, I'm trying to get J2ee 1.3.1 run on Windows 98. I was following instructions from 2 links at java.sun forum. Eventually I got deploytool and server running. But when i try to access http://localhost:8000 I get the following page: J2EE SDK/1.3.1 - HTTP Status 500 - Internal Server Error -------------------------------------------------------------------------------- type Exception report message Internal Server Error description The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request. exception java.security.AccessControlException: access denied (java.io.FilePermission C:\j2sdkee1.3.1\public_html\ read) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:270) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:542) at java.lang.SecurityManager.checkRead(SecurityManager.java:887) at java.io.File.lastModified(File.java:770) at org.apache.naming.resources.FileDirContext$FileResourceAttributes.getLastModified(FileDirContext.java:1063) at org.apache.naming.resources.ProxyDirContext.revalidate(ProxyDirContext.java:1381) at org.apache.naming.resources.ProxyDirContext.cacheLookup(ProxyDirContext.java:1347) at org.apache.naming.resources.ProxyDirContext.lookup(ProxyDirContext.java:249) at org.apache.catalina.servlets.DefaultServlet$ResourceInfo.set(DefaultServlet.java:2158) at org.apache.catalina.servlets.DefaultServlet$ResourceInfo.(DefaultServlet.java:2114) at org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:1053) at org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:519) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197) at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176) at java.security.AccessController.doPrivileged(Native Method) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107) at java.lang.Thread.run(Thread.java:536) Any clue what can be wrong??? This is my j2ee.bat: @echo off call %J2EE_HOME%\bin\setenv.bat @echo on cd c:\j2sdk1.4.1\bin java -Xmx128m %JAAS1A%=%JAAS1B% %JAAS2A%=%JAAS2B% %JAAS3A%=%JAAS3B% -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter -Dorg.xml.sax.driver=org.apache.crimson.parser.XMLReaderImpl -Djms.home=%JMS_HOME% -Dcom.sun.jms.service.jdbc.dbpath=%JMS_DB_PATH% -Djms.properties=%J2EE_HOME%\config\jms_service.properties -Djava.security.policy==%J2EE_HOME%\lib\security\server.policy -Djava.security.auth.login.config=%J2EE_HOME%\lib\security\serverlogin.config -Dcom.sun.enterprise.home=%J2EE_HOME% com.sun.enterprise.server.J2EEServer %1 %2 cd c:\j2sdkee1.3.1\bin This is my setenv.bat em rem Set JAVA_HOME and J2EE_HOME before running this script. rem rem first include user-specified definitions. call %J2EE_HOME%\bin\userconfig.bat set JMS_HOME=c:\j2sdkee1.3.1 set LIBDIR=c:\j2sdkee1.3.1\lib set LOCALEDIR=c:\j2sdkee1.3.1\lib\locale set CLASSESDIR=c:\j2sdkee1.3.1\lib\classes set JMS_CLASSESDIR=c:\j2sdkee1.3.1\config rem JMS DB PATH must end in slash to specify a directory set JMS_DB_PATH=%J2EE_HOME%\repository\%COMPUTERNAME%\ rem ********************************************************************* set CPATH=%J2EE_HOME%\config;%J2EE_HOME%\conf;%LIBDIR%\system\cloudscape.jar;%LIBDIR%\system\tools.jar;%LIBDIR%\cloudscape\RmiJdbc.jar;%LIBDIR%\cloudscape\client.jar;%LIBDIR%\jhall.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\jre\lib\rt.jar;%LIBDIR%\j2ee.jar;.;%CLASSESDIR%;%JMS_CLASSESDIR%;%LOCALEDIR% set JAAS1A=-Djavax.net.ssl.trustStore set JAAS1B=%J2EE_HOME%\lib\security\cacerts.jks set JAAS2A=-Djava.security.auth.policy set JAAS2B=%J2EE_HOME%\lib\security\jaas.policy set JAAS3A=-Dcom.sun.CORBA.connection.ORBSocketFactoryClass set JAAS3B=SSL:0,SSL_MUTUALAUTH:0,PERSISTENT_SSL:1060 set CLASSPATH=%CLASSPATH%;%CPATH% Please help!
|
 |
Severin Stoeckli
Ranch Hand
Joined: Jul 21, 2004
Posts: 62
|
|
Yes, your java.policy file is set up that you have no file access. However, in a j2ee container, you're not allowed to access the file system. Severin
|
 |
Svitlana Dukhovna
Ranch Hand
Joined: Jan 13, 2004
Posts: 37
|
|
|
I'm sorry, I don't quite understand what you mean. I am supposed to see the defaul page http://localhost:8000, am I not? How can I fix my internal error???
|
 |
Severin Stoeckli
Ranch Hand
Joined: Jul 21, 2004
Posts: 62
|
|
open your java.security.policy==%J2EE_HOME%\lib\security\server.policy file and set there grant { permission java.security.AllPermission; }; Caution, you open your server for everybody (everybody can potentially delete your HD) see http://java.sun.com/docs/books/tutorial/security1.2/ for more information
|
 |
Svitlana Dukhovna
Ranch Hand
Joined: Jan 13, 2004
Posts: 37
|
|
Dear Severin, Thank you SOOO much!! It works! Now I can start learning EJB's...
|
 |
 |
|
|
subject: AccessControlException: access denied
|
|
|