Печать JasperReport из апплета - PullRequest
       4

Печать JasperReport из апплета

1 голос
/ 25 февраля 2011

Я разработал веб-приложение, которое использует JasperReports для целей отчетности.В этом я должен использовать Applet для просмотра отчета на стороне клиента.Я обычно вижу отчет в апплете, но когда дело доходит до печати (когда я нажимал кнопку «Печать» в средстве просмотра), он выдает исключение, которое я вижу в консоли Java.Я много занимался серфингом об этой проблеме и делал все, что предлагают эксперты в сети.Я добавил разрешение на предоставление в файл catalina.policy, поскольку в качестве веб-сервера использую Tomcat.Также добавлено разрешение на предоставление моего апплета в виде кодовой базы в java.policy файле.Я подписал файл jar, в котором есть файл класса для апплета.Но я все еще получаю ту же ошибку.

ниже - трассировка стека от консоли Java.

Java Plug-in 1.6.0_24
Using JRE version 1.6.0_24-b07 Java HotSpot(TM) Client VM
User home directory = C:\Documents and Settings\Administrator


Exception in thread "Thread-13" java.lang.ExceptionInInitializerError
    at net.sf.jasperreports.view.JRViewer$21.run(JRViewer.java:1211)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission accessClassInPackage.sun.print)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPackageAccess(Unknown Source)
    at sun.plugin2.applet.Applet2SecurityManager.checkPackageAccess(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at net.sf.jasperreports.engine.JasperPrintManager.<clinit>(JasperPrintManager.java:419)
    ... 2 more

1 Ответ

2 голосов
/ 25 февраля 2011

Чтобы разрешить печать апплета, необходимо подписать апплет:

Подписание и проверка файлов JAR

Подписание вашего апплета

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...