Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6315164

Xalan : Security exception when in web start

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • 1.4.0
    • jaxp_1.4
    • xml

      while developing a Java Web Start application that makes extensive use of
      XSLT. My XSL templates are packaged in a Jar file with the application.
      I'm testing with Java 1.5.0_04, though the app should work in Java 1.4
      and higher. All the Jars distributed with the application are signed,
      and the JNLP specifies to give the application all permissions.

      So far, so good. However, when performing a particular XSL transform
      (which happens to be particularly large), I get a security exception. Is
      there a workaround? The exception is:

      com.sun.org.apache.xalan.internal.xsltc.TransletException:
      java.security.AccessControlException: access denied
      (java.io.FilePermission C:\Documents and Settings\guym\Application Data\Sun\Java\Deployment\cache\javaws\http\Dgrs.lpl.arizona.edu\P80\DMgrs2001\DMsw\DMpds\RMarchiver.jar read)

      All my transforms are done like this:

           URL xsl = getClass().getResource(template);

           InputStream is = xsl.openStream();
           Source source = new StreamSource(is, xsl.toExternalForm());
           TransformerFactory factory =
           TransformerFactory.newInstance();
           Transformer trans = factory.newTransformer(source);
           trans.transform(new DOMSource(document), new StreamResult(output));

      Here is the stack trace:

      ERROR: 'java.security.AccessControlException: access denied
      (java.io.FilePermission C:\Documents and Settings\guym\Application
       Data\Sun\Java\Deployment\cache\javaws\http\Dgrs.lpl.arizona.edu\P80\DMgrs2001\DMsw\DMpds\RMarchiver.jar read)'
      javax.xml.transform.TransformerException:
      com.sun.org.apache.xalan.internal.xsltc.TransletException:
      java.security.AccessControlException: access denied
      (java.io.FilePermission C:\Documents and Settings\guym\Application
       Data\Sun\Java\Deployment\cache\javaws\http\Dgrs.lpl.arizona.edu\P80\DMgrs2001\DMsw\DMpds\RMarchiver.jar read)
      at
      com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown

      Source)
          at
      com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown

      Source)
          at grs.apps.pdsdriver.PdsArchiver.label(PdsArchiver.java:388)
          at grs.apps.pdsdriver.EdrArchiver.archive(EdrArchiver.java:591)
          at grs.apps.pdsdriver.PdsArchiverApp$5.run(PdsArchiverApp.java:236)
       Caused by: com.sun.org.apache.xalan.internal.xsltc.TransletException:
       java.security.AccessControlException: access denied
       (java.io.FilePermission C:\Documents and Settings\guym\Application
       Data\Sun\Java\Deployment\cache\javaws\http\Dgrs.lpl.arizona.edu\P80\DMgrs2001\DMsw\DMpds\RMarchiver.jar

       read)
          at
       com.sun.org.apache.xalan.internal.xsltc.dom.LoadDocument.documentF(Unknown
       Source)
          at chan_data.template$dot$0()
          at chan_data.applyTemplates()
          at chan_data.applyTemplates()
          at chan_data.transform()
          at
       com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(Unknown

       Source)
          ... 5 more
       ---------
       com.sun.org.apache.xalan.internal.xsltc.TransletException:
       java.security.AccessControlException: access denied
       (java.io.FilePermission C:\Documents and Settings\guym\Application
       Data\Sun\Java\Deployment\cache\javaws\http\Dgrs.lpl.arizona.edu\P80\DMgrs2001\DMsw\DMpds\RMarchiver.jar

       read)
          at
       com.sun.org.apache.xalan.internal.xsltc.dom.LoadDocument.documentF(Unknown
       Source)
         at chan_data.template$dot$0()
         at chan_data.applyTemplates()
         at chan_data.applyTemplates()
         at chan_data.transform()
         at
       com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(Unknown

       Source)
          at
       com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown

       Source)
         at
       com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown

       Source)
          at grs.apps.pdsdriver.PdsArchiver.label(PdsArchiver.java:388)
          at grs.apps.pdsdriver.EdrArchiver.archive(EdrArchiver.java:591)
          at grs.apps.pdsdriver.PdsArchiverApp$5.run(PdsArchiverApp.java:236)

            duke J. Duke
            duke J. Duke
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: