java.security.accessControlException: доступом запрещен (java.lang.runtimeppermission предпочтения)

StackOverflow https://stackoverflow.com/questions/9465728

Вопрос

Я пытаюсь запустить агент Java с консоли сервера, и я получаю это исключение:

Agent Manager: Agent printing: WARN  AppLogger.java:246 initialize() Could not find a log4j.properties resource! Defaulting to app.log output. 
Agent Manager: Agent  error: Exception in thread "AgentThread: FTPBB" 
Agent Manager: Agent  error: java.lang.ExceptionInInitializerError
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initialize(J9VMInternals.java:222)
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initialize(J9VMInternals.java:167)
Agent Manager: Agent  error:  at com.bloomberg.datalic.api.ExtendedFTPConnection.<clinit>(ExtendedFTPConnection.java:2780)
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initializeImpl(Native Method)
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
Agent Manager: Agent  error:  at FTP.<init>(FTP.java:93)
Agent Manager: Agent  error:  at FTPBB.NotesMain(FTPBB.java:110)
Agent Manager: Agent  error:  at lotus.domino.AgentBase.runNotes(Unknown Source)
Agent Manager: Agent  error:  at lotus.domino.NotesThread.run(Unknown Source)
Agent Manager: Agent  error: Caused by: 
Agent Manager: Agent  error: java.security.AccessControlException: Access denied (java.lang.RuntimePermission preferences)
Agent Manager: Agent  error:  at java.security.AccessController.checkPermission(AccessController.java:108)
Agent Manager: Agent  error:  at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
Agent Manager: Agent  error:  at java.util.prefs.Preferences.userRoot(Preferences.java:443)
Agent Manager: Agent  error:  at com.bloomberg.datalic.util.DLPreferencesTree.<init>(DLPreferencesTree.java:29)
Agent Manager: Agent  error:  at com.bloomberg.datalic.util.DLPreferencesTree.getInstance(DLPreferencesTree.java:44)
Agent Manager: Agent  error:  at com.bloomberg.datalic.util.DLPreferenceNode.<clinit>(DLPreferenceNode.java:19)
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initializeImpl(Native Method)
Agent Manager: Agent  error:  at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
Agent Manager: Agent  error:  ... 8 more
.

Агент использует два внешних библиотеках JAR-библиотеки от Bloomberg.Эти два импортируются в агент, а также размещены в каталоге Domino / JVM / LIB на сервере.

Исключение брошено при вызове конструктора класса одного из классов в импортированной библиотеке.

Агент работает нормально при запуске его вручную в клиенте дизайнера.

Я думаю, что я должен редактировать файлы java.pol *, но мой опыт здесь я довольно ограничен, боюсь ...

Пожалуйста, совет

/ mike

Это было полезно?

Решение 2

Теперь я понял это. Файл java.pol вообще не используется, несмотря на состояние файла java.security, он должен быть включен.

Чтобы сделать эту работу, вам нужно вместо этого необходимо изменить файл java.policy. Это, что я мог бы сказать, не является предпочтительным решением, поскольку файл .pol должен быть оставлен для добавленных пользователей Grants и файл .policy - это файл Domino Domino JVM.

Другие советы

Вы отсутствуете на предпочтениях runtimeppermisse:

java.security.accessControlException: Доступ запрещен (Java.lang.runtimeppermission Предпочтения )

Минимум, который вам нужно сделать, это add add runtimeppermission в ваш файл политики:

grant {
    permission java.lang.RuntimePermission "preferences";
};
.

Как только вы пройдете это исключение, вы, вероятно, получите больше, но это лучше, чем позволяя всем разрешениям.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top