Servlets - java.security.AccessControlException en servlet

 
Vista:

java.security.AccessControlException en servlet

Publicado por frantrax (4 intervenciones) el 06/10/2006 09:50:13
Hola a todos!
ejecutando un servlet desde un servidor me da el siguiente error:
Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.security.AccessControlException MESSAGE: access denied (java.net.SocketPermission www.kosmodisea.net resolve) STACKTRACE: java.security.AccessControlException: access denied (java.net.SocketPermission www.kosmodisea.net resolve) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:524) at java.lang.SecurityManager.checkConnect(SecurityManager.java:1023) at java.net.InetAddress.getAllByName0(InetAddress.java:1000) at java.net.InetAddress.getAllByName0(InetAddress.java:981) at java.net.InetAddress.getAllByName(InetAddress.java:975) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:137) at com.mysql.jdbc.MysqlIO.(MysqlIO.java:284) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2555) at com.mysql.jdbc.Connection.(Connection.java:1485) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(DriverManager.java:512) at java.sql.DriverManager.getConnection(DriverManager.java:171) at general.Hola.init(Hola.java:34) at org.apache.catalina.core.StandardWrapper.loadServlet(Unknown Source) at org.apache.catalina.core.StandardWrapper.allocate(Unknown Source) at org.apache.catalina.servlets.InvokerServlet.serveRequest(Unknown Source) at org.apache.catalina.servlets.InvokerServlet.doGet(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.access$0(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown Source) at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source) at org.apache.catalina.core.ContainerBase.invoke(Unknown Source) at org.apache.catalina.core.StandardContextValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source) at org.apache.catalina.core.ContainerBase.invoke(Unknown Source) at org.apache.catalina.core.StandardContext.invoke(Unknown Source) at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.valves.ErrorReportValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.valves.AccessLogValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source) at org.apache.catalina.core.ContainerBase.invoke(Unknown Source) at org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source) at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source) at org.apache.catalina.core.ContainerBase.invoke(Unknown Source) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:261) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:604) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:562) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:679) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619) at java.lang.Thread.run(Thread.java:534) ** END NESTED EXCEPTION ** Last packet sent to the server was 28 ms ago.

Creo que esta excepcion se lanza porque no tengo bien configurado los archivos java.policy y java.security. El caso es que este servlet esta colgado en un servidor en el cual no tengo permiso para entrar en carpetas donde se encuentran el java.policy o java.security, por lo que no sé cómo arreglar esto.
Lo que intenta hacer el servlet es conectarse a una base de datos que si puedo gestionar via Web en el servidor (PHPMyAdmin) pero al servlet no le deja conectarse.
¿Alguien me puede ayudar?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:java.security.AccessControlException en servlet

Publicado por frantrax (4 intervenciones) el 06/10/2006 11:29:36
El código que lanza esta exception es el siguiente:

public void init(ServletConfig config) throws ServletException{
super.init(config);
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
}catch (Exception e){
System.out.println(e.getMessage());
}
try{
conexion = DriverManager.getConnection("jdbc:mysql://localhost:8080/pruebaFran","fran","perico");
GestorBBDD.getInstance().setConexion(conexion);
if(conexion != null){
error2= "Conexi�n a base de datos jdbc:mysql://localhost/pruebaFran ... Ok";
}
}catch (SQLException ex){
error= ex.getMessage();
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:java.security.AccessControlException en servlet

Publicado por Montse hernandez ruiz (1 intervención) el 16/11/2006 17:57:02
este es elmensaje que me sale cuando intento comunicar con otro servidor

que puedo hacer gracias


java.security.AccessControlException en servlet
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:java.security.AccessControlException en servlet

Publicado por Gustavo Genovese (1 intervención) el 26/12/2006 21:38:51
Esta es la linea importante:

access denied (java.net.SocketPermission www.kosmodisea.net resolve)

Tuve el mismo problema y lo solucione agregando en mi archivo
/etc/tomcat5.5/policy/04webapps.policy

dentro de la seccion grant, una linea que diga:

permission java.net.SocketPermission "TUDOMINIO", "resolve, connect";

En tu caso seria:
permission java.net.SocketPermission "www.kosmodisea.net", "resolve, connect";

Fijate que la excepcion solo dice "resolve" pero en la politica le estas poniendo ademas "connect". Si le pones que solo este permitido "resolver" la direccion, cuando intente conectarse te va a tirar la misma excepcion diciendote algo de que no se puede conectar, por eso agrego el "connect" a la politica

Saludos!

Gustavo Genovese
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como arreglar apache tomcat 1,1,15 error

Publicado por alex dario (1 intervención) el 14/02/2011 03:30:57
ayuda no puedo acceder ala internet por que aparece en la pantalla principal error404 apache tomcat 1.1.15
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar