2012-03-19 1 views
1

Sur mon serveur Glassfish, j'ai récemment activé le gestionnaire de sécurité. Dès que je l'ai fait, je l'utilise le neo4j-JCA connector a cessé de travailler, se plaignant à cette exception près:Comment autoriser cette autorisation dans Glassfish

Caused by: java.security.AccessControlException: access denied (java.lang.management.ManagementPermission monitor) 
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:374) 
    at java.security.AccessController.checkPermission(AccessController.java:546) 
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) 
    at sun.management.ManagementFactory.checkAccess(ManagementFactory.java:223) 
    at sun.management.ManagementFactory.checkMonitorAccess(ManagementFactory.java:228) 
    at sun.management.RuntimeImpl.getBootClassPath(RuntimeImpl.java:89) 
    at org.neo4j.kernel.ConfigurationLogging.logConfig(ConfigurationLogging.java:91) 
    at org.neo4j.kernel.GraphDbInstance.start(GraphDbInstance.java:166) 
    at org.neo4j.kernel.EmbeddedGraphDbImpl.<init>(EmbeddedGraphDbImpl.java:190) 
    at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:80) 
    at com.netoprise.neo4j.Neo4jManagedConnectionFactory.createDatabase(Neo4jManagedConnectionFactory.java:278) 
    at com.netoprise.neo4j.Neo4jManagedConnectionFactory.createManagedConnection(Neo4jManagedConnectionFactory.java:154) 
    at com.sun.enterprise.resource.allocator.ConnectorAllocator.createResource(ConnectorAllocator.java:160) 
    at com.sun.enterprise.resource.pool.ConnectionPool.createSingleResource(ConnectionPool.java:907) 
    ... 74 more 

J'ai compris que je dois écrire quelque chose dans mon server.policy, mais quoi? J'ai essayé

//Neo4J management permission for logging 
grant codeBase "file:${com.sun.aas.installRoot}/neo4j-connector-0.3-SNAPSHOT/-"{ 
     permission java.lang.management.ManagementPermission "monitor"; 
}; 

Sans aucun effet. Alors quelle syntaxe devrais-je utiliser? (Avis neo4j-connector-0.3-SNAPSHOT est le nom du connecteur JCA pour Neo4j

Répondre

0

Essayez de mettre les autorisations dans le fichier descripteur JCA ra.xml Voici un example.

 <security-permission> 
      <security-permission-spec> permission java.io.FilePermission 
       "/tmp/db/fs_store/*", "read,write"; 
      </security-permission-spec> 
     </security-permission> 
+0

Est-il normal que vous ajoutez un FilePermission quand Glassfish se plaint d'un ManagementPermission? – Riduidel

+0

Ce n'était qu'un exemple: ajoutez les autorisations correctes requises par votre adaptateur. –

Questions connexes