Апплет не инициализируется в браузере при использовании jms для подключения к activemq - PullRequest
0 голосов
/ 14 февраля 2011

Я создал апплет Java, который действует как доска и передает координаты в реальном времени с помощью jms, подключенного к брокеру activemq с помощью сервера приложений Websphere.

Пока я запускаю апплет в средстве просмотра апплетов затмения, мой код работает нормально ипринимающая сторона рисует координаты на доске

, когда я встраиваю апплет в HTML-файл и пытаюсь запустить его через браузер, я получаю сообщение об ошибке «апплет не инициализирован».Я попытался запустить то же самое с помощью appletviewer, предоставленного Sun (iam с использованием linux-fedora), iam получаю эту ошибку в терминале: -


java.lang.ExceptionInInitializerError at org.apache.activemq.ActiveMQConnectionFactory.setBrokerURL (ActiveMQConnectionFactory.java:373) в org.apache.activemq.ActiveMQConnectionFactory. (ActiveMQConnectionFactory.java:135) в org.apache.activemq.ActiveMQConnectionFactory. (ActiveMQConnectionFub.jp)Java: 26) в sun.applet.AppletPanel.run (AppletPanel.java:436) в java.lang.Thread.run (Thread.java:636). Причина: java.security.AccessControlException: доступ запрещен (java.util.PropertyPermission * чтение, запись) в java.security.AccessControlContext.checkPermission (AccessControlContext.java:342) в java.security.AccessController.checkPermission (AccessController.java:553) в java.lang.SecurityManager.check49j () в java.lang.SecurityManager.checkPropertiesAccess (SecurityManager.java:1269) в java.beans.PropertyEditorManager.setEditorSearchPath (PropertyEditorManager.java:169) в org.apache.activemq.util.IntrospectionSupport. (IntrospectionSupport.java:57) ... еще 6


1010находится в этой строке кода: - ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory ("tcp: // localhost: 61616");

Пожалуйста, помогите мне найти решение ....

Ответы [ 2 ]

0 голосов
/ 15 февраля 2011

Похоже, ActiveMQ пытается зарегистрировать PropertyEditor, который не разрешен изолированной программной средой безопасности апплета. Я открыл отчет об ошибке AMQ-3181 . Все должно работать нормально, даже если редактор свойств не регистрируется, так что это просто случай, когда нужно перехватить исключение.

0 голосов
/ 15 февраля 2011

AccessControlExceptions указывают, что этому апплету нужно доверять.

OTOH это утверждение подозрительно.

ActiveMQConnectionFactory factory = new 
    ActiveMQConnectionFactory("tcp://localhost:61616");

Как формируется эта строка?Это указывает на «домашний» сервер?Если это произойдет, JRE, похоже, будет сбит с толку, и апплет не будет нуждаться в подписи.

...