You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Eric Schneider <er...@centralparksoftware.com> on 2005/02/01 19:08:37 UTC
Re: java.security.policy woes [a little further]
Hi,
It seems like i'm getting a little further.
After adding the following lines to the server's policy file:
permission java.lang.RuntimePermission "createClassLoader";
permission java.lang.RuntimePermission "getProtectionDomain";
I looks like the app is making it to the home page. Now, it's throwing a
new exception related to ognl.
Any Ideas on this one?
Thanks,
e.
Type: Exception Report
Message: Internal Server ErrorException
javax.servlet.ServletException: Unable to update expression '' of
org.apache.tapestry.link.ServiceLink$Enhance_1@6acad2[framework:Exception/
restart] to ExpressionBinding[framework:Exception
@org.apache.tapestry.Tapestry@RESTART_SERVICE].
at
org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEn
gine.java:480)
at
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:914)
at
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:
197)
at
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:158)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.StandardWrapperValve.invokeServletService(Standar
dWrapperValve.java:720)
at
org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperVa
lve.java:118)
at
org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.j
ava:278)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
java:274)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
java:212)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
203)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.
java:157)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
Root Cause
org.apache.tapestry.ApplicationRuntimeException: Unable to update
expression '' of
org.apache.tapestry.link.ServiceLink$Enhance_1@6acad2[framework:Exception/
restart] to ExpressionBinding[framework:Exception
@org.apache.tapestry.Tapestry@RESTART_SERVICE].
at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:105)
at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:84)
at
org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:
654)
at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:
354)
at
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java
:498)
at
org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:764)
at
org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:152)
at
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:195)
at
org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEn
gine.java:453)
at
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:914)
at
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:
197)
at
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:158)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.StandardWrapperValve.invokeServletService(Standar
dWrapperValve.java:720)
at
org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperVa
lve.java:118)
at
org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.j
ava:278)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
java:274)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
java:212)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
203)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
505)
at
com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.
java:157)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
Caused by: ognl.MethodFailedException: Method "setServiceBinding" failed
for object
org.apache.tapestry.link.ServiceLink$Enhance_1@6acad2[framework:Exception/
restart] [java.lang.IllegalAccessException: Method [public void
org.apache.tapestry.link.ServiceLink$Enhance_1.setServiceBinding(org.apach
e.tapestry.IBinding)] cannot be accessed.]
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:561)
at ognl.OgnlRuntime.setMethodValue(OgnlRuntime.java:684)
at
ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.jav
a:76)
at
ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:132)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1235)
at ognl.ASTProperty.setValueBody(ASTProperty.java:117)
at ognl.SimpleNode.setValue(SimpleNode.java:153)
at ognl.Ognl.setValue(Ognl.java:478)
at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:101)
... 25 more
Quoting Eric Schneider <er...@centralparksoftware.com>:
> Hi,
>
> I'm testing a little Tapestry 3.0.1 app running on Sunone 7 app
> server
> (Servlet spec 2.3).
>
> The app server instance makes use of a policy file that stomps all
> over
> what Tapestry needs to do at Runtime. The app throws in
> ApplicationServlet.init() when trying to create a class pool (trace
> below).
>
> Just as a test, I tried removing the JVM option
> (-Djava.security.policy=/
> <BLAH>/config/server.policy), but it looks like sunone uses a default
>
> policy file if one isn't provided (I get the same exception).
>
> Unfortunately, I don't have a ton of experience with these policy
> files.
> There are a few different flavors of entries:
>
> grant codeBase "file:${com.sun.aas.installRoot}/lib/-" {
> permission java.security.AllPermission;
> };
>
> grant {
> permission java.lang.RuntimePermission "loadLibrary.*";
> permission java.lang.RuntimePermission "queuePrintJob";
> permission java.net.SocketPermission "*", "connect";
> permission java.io.FilePermission "<<ALL FILES>>",
> "read,write";
> permission java.util.PropertyPermission "*", "read";
> permission java.lang.RuntimePermission "modifyThreadGroup";
> };
>
> grant {
> permission java.lang.RuntimePermission "accessDeclaredMembers";
> };
>
> Does anyone know how to format an entry to make the app server
> Tapestry
> friendly? I'd like to avoid putting my Tapestry related jars in a
> shared
> location.
>
> Thanks in advance.
> e.
>
> Type: Exception Report
>
> Message: Internal Server Error
>
>
> Exception
> javax.servlet.ServletException: Servlet execution threw an exception
> at
>
org.apache.catalina.core.StandardWrapperValve.invokeServletService(Standar
> dWrapperValve.java:742)
> at
>
org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperVa
> lve.java:118)
> at
>
org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.j
> ava:278)
> at java.security.AccessController.doPrivileged(Native
> Method)
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
> java:274)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
> java:212)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
> 203)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.
> java:157)
> at
> com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
>
>
>
> Root Cause
> java.lang.ExceptionInInitializerError
> at
>
org.apache.tapestry.enhance.javassist.EnhancedClassFactory.createClassPool
> (EnhancedClassFactory.java:57)
> at
>
org.apache.tapestry.enhance.javassist.EnhancedClassFactory.reset(EnhancedC
> lassFactory.java:69)
> at
>
org.apache.tapestry.enhance.javassist.EnhancedClassFactory.(EnhancedClassF
> actory.java:49)
> at
>
org.apache.tapestry.enhance.DefaultComponentClassEnhancer.createEnhancedCl
> assFactory(DefaultComponentClassEnhancer.java:72)
> at
>
org.apache.tapestry.enhance.DefaultComponentClassEnhancer.(DefaultComponen
> tClassEnhancer.java:66)
> at
>
org.apache.tapestry.engine.AbstractEngine.createComponentClassEnhancer(Abs
> tractEngine.java:2207)
> at
>
org.apache.tapestry.engine.AbstractEngine.setupForRequest(AbstractEngine.j
> ava:1262)
> at
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:
824)
> at
>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:
> 197)
> at
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:
158)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
>
org.apache.catalina.core.StandardWrapperValve.invokeServletService(Standar
> dWrapperValve.java:720)
> at
>
org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperVa
> lve.java:118)
> at
>
org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.j
> ava:278)
> at java.security.AccessController.doPrivileged(Native
> Method)
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
> java:274)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
> java:212)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
> 203)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 505)
> at
>
com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.
> java:157)
> at
> com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
> Caused by: java.security.AccessControlException: access denied
> (java.lang.RuntimePermission createClassLoader)
> at
>
java.security.AccessControlContext.checkPermission(AccessControlContext.ja
> va:270)
> at
> java.security.AccessController.checkPermission(AccessController.java:
401)
> at
> java.lang.SecurityManager.checkPermission(SecurityManager.java:
> 542)
> at
> java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:
607)
> at java.lang.ClassLoader.(ClassLoader.java:243)
> at javassist.ClassPool$LocalClassLoader.(ClassPool.java:347)
> at javassist.ClassPool.(ClassPool.java:357)
> ... 24 more
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail:
> tapestry-user-help@jakarta.apache.org
> --
Eric Schneider
Central Park Software, Inc.
http://www.centralparksoftware.com
eric@centralparksoftware.com
---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org