Я разработал веб-приложение, которое использует 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