You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Kris Rasmussen <kr...@yahoo.com> on 2004/03/21 23:22:58 UTC

Re: Error deploying tapestry on specific server. (more info)

I found the following in the logs of my shared server, how could the setup of this server cause this IllegalAccessException?
 
Unable to process client request.


      Session id: null
  Client address: 4.10.129.226

Exceptions:

org.apache.tapestry.ApplicationRuntimeException: Unable to read expression
'<parsed expression>' of
org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].

ognl.OgnlException: templateTagBinding

java.lang.IllegalAccessException: Method [public org.apache.tapestry.IBinding
org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] cannot be
accessed.
ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54)
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
ognl.ASTProperty.getValueBody(ASTProperty.java:96)
ognl.SimpleNode.getValue(SimpleNode.java:192)
ognl.Ognl.getValue(Ognl.java:335)
ognl.Ognl.getValue(Ognl.java:310)
org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponentTemplateLoader.java:581)
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseComponentTemplateLoader.java:373)
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateLoader.java:307)
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateLoader.java:215)
org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566)
org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
com.caucho.server.http.Invocation.service(Invocation.java:315)
com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
com.caucho.server.TcpConnection.run(TcpConnection.java:139)
java.lang.Thread.run(Thread.java:534)


Kris Rasmussen <kr...@yahoo.com> wrote:
Sorry guys, I hate to bother you with my own debugging, but the following error is driving me nuts since I do not have much access to the server I am deploying it on. Basically my web apps works perfect with every version of tomcat/resin I have tryed it on with my windows and linux boxes, but when I got to deploy it on a shared server, I get the following error. A very simple test app I wrote that just displays hello works, but my app throws the following error. Anyone have any idea what it means so I can figure out what to look into.

Thanks a bunch.

org.apache.tapestry.ApplicationRuntimeException: Unable to update expression 
'
' of org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/restart] 
to ExpressionBinding[framework:Exception @org.apache.tapestry.Tapestry@RESTART_SERVICE]. 
at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146) 
at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125) 
at org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678) 
at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401) 
at org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:545) 
at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806) 
at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194) 
at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236) 
at org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngine.java:495) 
at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954) 
at org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238) 
at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:126) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:103) 
at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96) 
at com.caucho.server.http.Invocation.service(Invocation.java:315) 
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135) 
at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346) 
at com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274) 
at com.caucho.server.TcpConnection.run(TcpConnection.java:139) 
at java.lang.Thread.run(Thread.java:534)

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.
Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Geoff Longman <gl...@intelligentworks.com>.
I had an IllegalAccessError recently using Hivemind. I was going nuts
looking for things like those described in this thread already.

Turned out I had made a class abstract but not public.

>From the java language specification:
<quote>
12.3.3 Resolution of Symbolic References

IllegalAccessError: A symbolic reference has been encountered that specifies
a use or assignment of a field, or invocation of a method, or creation of an
instance of a class, to which the code containing the reference does not
have access because the field or method was declared private, protected, or
default access (not public), or because the class was not declared public.

This can occur, for example, if a field that is originally declared public
is changed to be private after another class that refers to the field has
been compiled
</quote>

Could one of the cases above be the problem?

Geoff
----- Original Message -----
From: "Kris Rasmussen" <kr...@yahoo.com>
To: "Tapestry users" <ta...@jakarta.apache.org>
Sent: Monday, March 22, 2004 3:24 AM
Subject: Re: Error deploying tapestry on specific server. (more info)


> Thanks Jonny. By compiling the app on the server I was reffering to
resin's ability to take a web app with no class files and dynamically
compile the java files while deploying it (or when the java files change).
Basically I just uploaded the java files in place of the class files when
deploying the app and resin compiled everything for me. All my libraries are
placed in the lib folder of the app so resin should have used the same
libraries to compile and to run. Furthermore, I've tested the app on my own
resin server (different from the tomcat server I use to develop) and it
worked perfectly.
>
> Still, given all this, if you think there is still a way for what you
described to be happening, let me know because I can't think of anything
else other than what I already mentioned below.
>
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
>
> It looks like the illegal access exception is a result of a binding that
references a method getTemplateTagBinding() of an enhanced PageLink. I see
that this method is inserted by tapestry to most components, but I don't
understand why an access to it would trigger an IllegalAccessException other
than maybe the security settings on the shared server I am using some how
prevent it?
>
> Thanks again,
> Kris
>
> Jonny Wray <jo...@yahoo.com> wrote:
>
> Kris,
>
> I've never used resin so can't help you with specifics, but of all the app
> servers I've used I've never seen any such configuration possibilities.
>
> Not sure what you mean about getting the server to compile the
application.
> If you mean you compiled the app on the server machine this still does not
> eliminate the possibility that you are using a different set of jars for
> compiling and another for running. Remember, app servers do not use your
> classpath for running.
>
> I'd still look for library incompatibilities. For example, if you are
using
> Spindle under eclipse it comes packaged with its own version of the
tapestry
> jars. If you've downloaded your own version of the tapesty jars this could
> mean you are compiling with one set of jars but packaging and deploying
with
> another. I've seen the same exception in the past that was caused by the
> same problem (but using struts on Oracle 9ias).
>
> Jonny
>
> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
>
> > Thanks, Jonny, thats definatly possible but I don't know that it is the
> > problem because the server runs resin and I tryed uploading the app's
source
> > only and having the server compile from scratch and I still get the same
> > error. Could my server be configured such that the javaassist bytecode
> > generator is able to generate code but my classes are not able to access
it
> > (as the following could imply)?
> >
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> >
> > Does tapestry cache out these dynamically generate classes anywhere or
is it
> > all done in memory?
> >
> > Thanks,
> > Kris
> >
> >
> > Jonny Wray wrote:
> >
> > This looks to me like a versioning problem with libraries ie, you've
> > compiled against one version of a library and are running with another.
This
> > error occurs when method is reflectively accessed (ie at runtime) but it
> > cannot be found.
> >
> > I'd check the version of the various external libs you are using on the
> > shared server, and also check there's not multiple version of the same
> > libraries around.
> >
> > On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> >
> >> I found the following in the logs of my shared server, how could the
setup of
> >> this server cause this IllegalAccessException?
> >>
> >> Unable to process client request.
> >>
> >>
> >> Session id: null
> >> Client address: 4.10.129.226
> >>
> >> Exceptions:
> >>
> >> org.apache.tapestry.ApplicationRuntimeException: Unable to read
expression
> >> '
> > ' of
> >> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >>
> >> ognl.OgnlException: templateTagBinding
> >>
> >> java.lang.IllegalAccessException: Method [public
org.apache.tapestry.IBinding
> >> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
cannot
> >> be
> >> accessed.
> >> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >>
> >
>
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:
54>
> >
> > )
> >>
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> >> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >> ognl.Ognl.getValue(Ognl.java:335)
> >> ognl.Ognl.getValue(Ognl.java:310)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>
org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> >>
>
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseCompone
n>>
> t
> >> TemplateLoader.java:581)
> >>
>
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseComp
o>>
> n
> >> entTemplateLoader.java:373)
> >>
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplat
e>>
> L
> >> oader.java:307)
> >>
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplat
e>>
> L
> >> oader.java:215)
> >> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >>
> >
>
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:5
66>
> >
> > )
> >> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> >>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238
)
> >>
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >>
>
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:9
6>>
> )
> >> com.caucho.server.http.Invocation.service(Invocation.java:315)
> >>
com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> >>
com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> >>
com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274
)
> >> com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> >> java.lang.Thread.run(Thread.java:534)
> >>
> >>
> >> Kris Rasmussen wrote:
> >> Sorry guys, I hate to bother you with my own debugging, but the
following
> >> error is driving me nuts since I do not have much access to the server
I am
> >> deploying it on. Basically my web apps works perfect with every version
of
> >> tomcat/resin I have tryed it on with my windows and linux boxes, but
when I
> >> got to deploy it on a shared server, I get the following error. A very
simple
> >> test app I wrote that just displays hello works, but my app throws the
> >> following error. Anyone have any idea what it means so I can figure out
what
> >> to look into.
> >>
> >> Thanks a bunch.
> >>
> >> org.apache.tapestry.ApplicationRuntimeException: Unable to update
expression
> >> '
> >> ' of
> >>
>
org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/r
e>>
> s
> >> tart]
> >> to ExpressionBinding[framework:Exception
> >> @org.apache.tapestry.Tapestry@RESTART_SERVICE].
> >> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146)
> >> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125)
> >> at
> >>
org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678)
> >> at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401)
> >> at
> >>
>
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:5
4>>
> 5
> >> )
> >> at
org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >> at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >> at
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >> at
> >>
>
org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngi
n>>
> e
> >> .java:495)
> >> at
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954)
> >> at
> >>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238
)
> >> at
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >> at
> >>
>
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:9
6>>
> )
> >> at com.caucho.server.http.Invocation.service(Invocation.java:315)
> >> at
com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> >> at
com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> >> at
> >>
com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274
)
> >> at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> >> at java.lang.Thread.run(Thread.java:534)
> >>
> >> Do you Yahoo!?
> >> Yahoo! Finance Tax Center - File online. File on time.
> >> Do you Yahoo!?
> >> Yahoo! Finance Tax Center - File online. File on time.
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> >
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
I already checked with the tech who runs the shared server and he doesn't think there could possibly be any other libraries that conflict. Besides, I think my lib directory has priority over the centralized one. Also, the error is in accessing the enhanced PageLink (or any enhanced component I place in any app I try), so I would think that is has to have to be related to javaassist and runtime class modification. IllegalAccessExceptions are usually related to public/private kinds of things and not the SecurityManager so I don't know what could be causing this. If anyone gets any ideas please let me know.
 
Kris

Jonny Wray <jo...@yahoo.com> wrote:

Kris,

Ah, I understand now - did't know resin could do this. 

Have you checked the centralized lib directory for the whole
installation of resin to see if there's another version of any apps
around that conflict with your WEB-INF/lib versions? 

That's about the only thing I can think of. I don't know resin, but as
I said I've never heard of any configuration properties that could do
this, but it must be a difference between the two versions as you have
your code working on the other.

I maybe wrong but I thought the Illegal in IllegalAccessException was
more on the lines of trying to access a private/protected method or
field by reflection, rather than a security (eg jaas) thing.

Jonny

--- Kris Rasmussen wrote:
> Thanks Jonny. By compiling the app on the server I was reffering to
> resin's ability to take a web app with no class files and dynamically
> compile the java files while deploying it (or when the java files
> change). Basically I just uploaded the java files in place of the
> class files when deploying the app and resin compiled everything for
> me. All my libraries are placed in the lib folder of the app so resin
> should have used the same libraries to compile and to run.
> Furthermore, I've tested the app on my own resin server (different
> from the tomcat server I use to develop) and it worked perfectly.
> 
> Still, given all this, if you think there is still a way for what you
> described to be happening, let me know because I can't think of
> anything else other than what I already mentioned below.
> 
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> 
> It looks like the illegal access exception is a result of a binding
> that references a method getTemplateTagBinding() of an enhanced
> PageLink. I see that this method is inserted by tapestry to most
> components, but I don't understand why an access to it would trigger
> an IllegalAccessException other than maybe the security settings on
> the shared server I am using some how prevent it?
> 
> Thanks again,
> Kris
> 
> Jonny Wray wrote:
> 
> Kris,
> 
> I've never used resin so can't help you with specifics, but of all
> the app
> servers I've used I've never seen any such configuration
> possibilities.
> 
> Not sure what you mean about getting the server to compile the
> application.
> If you mean you compiled the app on the server machine this still
> does not
> eliminate the possibility that you are using a different set of jars
> for
> compiling and another for running. Remember, app servers do not use
> your
> classpath for running.
> 
> I'd still look for library incompatibilities. For example, if you are
> using
> Spindle under eclipse it comes packaged with its own version of the
> tapestry
> jars. If you've downloaded your own version of the tapesty jars this
> could
> mean you are compiling with one set of jars but packaging and
> deploying with
> another. I've seen the same exception in the past that was caused by
> the
> same problem (but using struts on Oracle 9ias).
> 
> Jonny
> 
> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> 
> > Thanks, Jonny, thats definatly possible but I don't know that it is
> the
> > problem because the server runs resin and I tryed uploading the
> app's source
> > only and having the server compile from scratch and I still get the
> same
> > error. Could my server be configured such that the javaassist
> bytecode
> > generator is able to generate code but my classes are not able to
> access it
> > (as the following could imply)?
> > 
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> > 
> > Does tapestry cache out these dynamically generate classes anywhere
> or is it
> > all done in memory?
> > 
> > Thanks,
> > Kris
> > 
> > 
> > Jonny Wray wrote:
> > 
> > This looks to me like a versioning problem with libraries ie,
> you've
> > compiled against one version of a library and are running with
> another. This
> > error occurs when method is reflectively accessed (ie at runtime)
> but it
> > cannot be found.
> > 
> > I'd check the version of the various external libs you are using on
> the
> > shared server, and also check there's not multiple version of the
> same
> > libraries around.
> > 
> > On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > 
> >> I found the following in the logs of my shared server, how could
> the setup of
> >> this server cause this IllegalAccessException?
> >> 
> >> Unable to process client request.
> >> 
> >> 
> >> Session id: null
> >> Client address: 4.10.129.226
> >> 
> >> Exceptions:
> >> 
> >> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> expression
> >> '
> > ' of
> >>
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >> 
> >> ognl.OgnlException: templateTagBinding
> >> 
> >> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot
> >> be
> >> accessed.
> >> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >> 
> > 
>
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
> >
> > )
> >>
>
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> >> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >> ognl.Ognl.getValue(Ognl.java:335)
> >> ognl.Ognl.getValue(Ognl.java:310)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>
>
org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
> t
> >> TemplateLoader.java:581)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
> n
> >> entTemplateLoader.java:373)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:307)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:215)
> >>
>
org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >> 
> > 
>
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
> >
> > )
> >>
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>
>
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>
>
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> >>
>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> >>
>
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >> 
>
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
> )
> 
=== message truncated ===


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

RE: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
Thats because the methods are created at runtime by java assist. Anyways, suprisingly while I was looking for something unrelated about rc1 in the mail archives a message came up from tapestry-dev about my exact problem. As I thought it is related to the security manager in place on the shared server I am using. The title of the thread is [Patch] Tapestry 3.0 RC1 in secure Tomcat 5.0  (its about tomcat but I'm sure the same goes for resin).
 
 



Petter_M�hl�n <pe...@elevance.se> wrote:
Hi,

I looked very quickly at the PageLink class and .jwc. As far as I can tell,
in rc1, there's no property called templateTagBinding in the .jwc, and no
methods defined in the class (I even tried a "grep -i templatetagbinding" in
all the .java and .jwc files). Are you using rc1 or beta4? If you're on
beta4, I'd try switching to rc1 just to see what happens.

/ Petter

> -----Original Message-----
> From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> Sent: den 23 mars 2004 11:28
> To: Tapestry users
> Subject: Re: Error deploying tapestry on specific server. (more info)
> 
> 
> I can't shutdown the server since its shared. At this point I 
> am running out of time so I think I am going to have to 
> switch over to another host. I am in the process of setting 
> up my own servers but in the mean time I need a cheap place 
> to host my clients site. Anyone got any recommendations?
> 
> Thanks for all the ideas and trying to help.
> 
> Kris
> 
> Jonny Wray wrote:
> 
> 
> Kris,
> 
> I'd never assume that the web-inf/lib jars take priority. 
> That certainly
> wasn't the case for me in the past. I think it very much 
> depends on the
> class loading strategy of the app server. Still, if it's a basic
> installation of resin then looks like that's not the problem.
> 
> I don't know what else to suggest. I thought of the library 
> conflict as I'd
> seen this error before and that was the cause, although not 
> with tapestry.
> That fact coupled with the fact that your app works on one 
> instance of resin
> and not another suggested that to me.
> 
> I guess one thing I'd try - are you just hot loading the app 
> into the shared
> server or have you tried shutting down, deploying then 
> restarting. Maybe the
> app server is caching the classes. I'm grasping at straws 
> now, sorry I can't
> be of any more help.
> 
> Jonny
> 
> On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> 
> > I don't think it could be a library conflict because the 
> server only has the
> > basica jdk and resin libraries installed (so I am told) and 
> my lib directory
> > should take priority (or so I think).
> > 
> > The problem isn't with another library anyways, its with 
> any enhanced method,
> > specifically the getTemplateTagBinding() which may simply 
> be the first
> > enhanced method that is called. I read in the jboss forums that an
> > IllegalAccess exception can happen when two classes of the 
> same class are
> > loaded into memory so it might be possible that the 
> enhanced classes have been
> > loaded twice in memory. Do the classes that tapestry 
> enhances reside only in
> > memory or are they stored somewhere else?
> > 
> > Thanks again,
> > Kris
> > 
> > Jonny Wray wrote:
> > 
> > Kris,
> > 
> > Ah, I understand now - did't know resin could do this.
> > 
> > Have you checked the centralized lib directory for the whole
> > installation of resin to see if there's another version of any apps
> > around that conflict with your WEB-INF/lib versions?
> > 
> > That's about the only thing I can think of. I don't know 
> resin, but as
> > I said I've never heard of any configuration properties 
> that could do
> > this, but it must be a difference between the two versions 
> as you have
> > your code working on the other.
> > 
> > I maybe wrong but I thought the Illegal in 
> IllegalAccessException was
> > more on the lines of trying to access a private/protected method or
> > field by reflection, rather than a security (eg jaas) thing.
> > 
> > Jonny
> > 
> > --- Kris Rasmussen wrote:
> >> Thanks Jonny. By compiling the app on the server I was reffering to
> >> resin's ability to take a web app with no class files and 
> dynamically
> >> compile the java files while deploying it (or when the java files
> >> change). Basically I just uploaded the java files in place of the
> >> class files when deploying the app and resin compiled 
> everything for
> >> me. All my libraries are placed in the lib folder of the 
> app so resin
> >> should have used the same libraries to compile and to run.
> >> Furthermore, I've tested the app on my own resin server (different
> >> from the tomcat server I use to develop) and it worked perfectly.
> >> 
> >> Still, given all this, if you think there is still a way 
> for what you
> >> described to be happening, let me know because I can't think of
> >> anything else other than what I already mentioned below.
> >> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >> 
> >> It looks like the illegal access exception is a result of a binding
> >> that references a method getTemplateTagBinding() of an enhanced
> >> PageLink. I see that this method is inserted by tapestry to most
> >> components, but I don't understand why an access to it 
> would trigger
> >> an IllegalAccessException other than maybe the security settings on
> >> the shared server I am using some how prevent it?
> >> 
> >> Thanks again,
> >> Kris
> >> 
> >> Jonny Wray wrote:
> >> 
> >> Kris,
> >> 
> >> I've never used resin so can't help you with specifics, but of all
> >> the app
> >> servers I've used I've never seen any such configuration
> >> possibilities.
> >> 
> >> Not sure what you mean about getting the server to compile the
> >> application.
> >> If you mean you compiled the app on the server machine this still
> >> does not
> >> eliminate the possibility that you are using a different 
> set of jars
> >> for
> >> compiling and another for running. Remember, app servers do not use
> >> your
> >> classpath for running.
> >> 
> >> I'd still look for library incompatibilities. For example, 
> if you are
> >> using
> >> Spindle under eclipse it comes packaged with its own version of the
> >> tapestry
> >> jars. If you've downloaded your own version of the tapesty 
> jars this
> >> could
> >> mean you are compiling with one set of jars but packaging and
> >> deploying with
> >> another. I've seen the same exception in the past that was 
> caused by
> >> the
> >> same problem (but using struts on Oracle 9ias).
> >> 
> >> Jonny
> >> 
> >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> >> 
> >>> Thanks, Jonny, thats definatly possible but I don't know 
> that it is
> >> the
> >>> problem because the server runs resin and I tryed uploading the
> >> app's source
> >>> only and having the server compile from scratch and I 
> still get the
> >> same
> >>> error. Could my server be configured such that the javaassist
> >> bytecode
> >>> generator is able to generate code but my classes are not able to
> >> access it
> >>> (as the following could imply)?
> >>> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >>> 
> >>> Does tapestry cache out these dynamically generate 
> classes anywhere
> >> or is it
> >>> all done in memory?
> >>> 
> >>> Thanks,
> >>> Kris
> >>> 
> >>> 
> >>> Jonny Wray wrote:
> >>> 
> >>> This looks to me like a versioning problem with libraries ie,
> >> you've
> >>> compiled against one version of a library and are running with
> >> another. This
> >>> error occurs when method is reflectively accessed (ie at runtime)
> >> but it
> >>> cannot be found.
> >>> 
> >>> I'd check the version of the various external libs you 
> are using on
> >> the
> >>> shared server, and also check there's not multiple version of the
> >> same
> >>> libraries around.
> >>> 
> >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> >>> 
> >>>> I found the following in the logs of my shared server, how could
> >> the setup of
> >>>> this server cause this IllegalAccessException?
> >>>> 
> >>>> Unable to process client request.
> >>>> 
> >>>> 
> >>>> Session id: null
> >>>> Client address: 4.10.129.226
> >>>> 
> >>>> Exceptions:
> >>>> 
> >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> >> expression
> >>>> '
> >>> ' of
> >>>> 
> >> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >>>> 
> >>>> ognl.OgnlException: templateTagBinding
> >>>> 
> >>>> java.lang.IllegalAccessException: Method [public
> >> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >> cannot
> >>>> be
> >>>> accessed.
> >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >>>> 
> >>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> Accessor.java:54>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> .java:122)
> >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >>>> ognl.Ognl.getValue(Ognl.java:335)
> >>>> ognl.Ognl.getValue(Ognl.java:310)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>>> 
> >> 
> > 
> org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> nent.java:520)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> ng(BaseComponen>>
> >
> >> t
> >>>> TemplateLoader.java:581)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> dings(BaseCompo>>
> >
> >> n
> >>>> entTemplateLoader.java:373)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:307)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:215)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>>> 
> >> 
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >>>> 
> >>> 
> >> 
> > 
> org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> eLoader.java:566>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>>> 
> >> 
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> ne.java:912)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> rvlet.java:238)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> t.java:199)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >>>> 
> >> 
> > 
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> Servlet.java:96>>
> >
> >> )
> >> 
> > === message truncated ===
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-user-help@jakarta.apache.org
> > 
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jak

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
Thanks, I should have pointed out that I was using beta 3. However, If the security manager is was keeps even this from working then I doubt the rest of my application will run as there will be many other enhanced classes. However, I'll still give it a try with rc1 when I get a chance and let you know how it works.
 
Kris

Mindbridge <mi...@yahoo.com> wrote:
> As to not finding the get templateTagBinding in the .jwc and .page files,
its not there because it is a method that tapestry adds to every component

It used to, in an old beta version (beta2 or beta3, cannot remember exactly
at the moment). Currently this has been optimized and is added only to
components that have this parameter defined (such as Any), but it is
definitely not added to components such as PageLink.

----- Original Message ----- 
From: "Kris Rasmussen" 
To: "Tapestry users" 
Sent: Thursday, March 25, 2004 5:19 AM
Subject: RE: Error deploying tapestry on specific server. (more info)


> I'm still not sure that was the problem, but if you read the message in
the tapestry-dev mailing list you will probably be pretty convinced. I too
thought that a SecurityManager would throw a SecurityException, but maybe
there is more too it that I am just not seeing. Anyways, rather than trying
to get my client's current shared hosting provider to mess with their
security manager configuration I am going to switch him over to a vps server
for now.
>
> As to not finding the get templateTagBinding in the .jwc and .page files,
its not there because it is a method that tapestry adds to every component
(that may not be 100% correct), but if you search again this time for
'templatetag' I think you will find something.
>
> Kris
>
> Petter_M�hl�n 
wrote:
> Hm, did that solve your problem? That's a surprise to me, I was sure that
> IllegalAccessException was only about Java-level problems
> (public/protected/private, etc), and that a SecurityManager would always
> throw a SecurityException.
>
> Also, as I understand it, Tapestry (using javassist) enhances the classes
> based on .jwc and .page files. Which is why I looked in the .jwc files as
> well for the TemplateTagBinding.
>
> This is getting interesting - please let us know what the final solution
is!
>
> / Petter
>
> > -----Original Message-----
> > From: Kris Rasmussen [mailto:kristapestry@yahoo.com]
> > Sent: den 24 mars 2004 05:11
> > To: Tapestry users
> > Subject: RE: Error deploying tapestry on specific server. (more info)
> >
> >
> > Thats because the methods are created at runtime by java
> > assist. Anyways, suprisingly while I was looking for
> > something unrelated about rc1 in the mail archives a message
> > came up from tapestry-dev about my exact problem. As I
> > thought it is related to the security manager in place on the
> > shared server I am using. The title of the thread is [Patch]
> > Tapestry 3.0 RC1 in secure Tomcat 5.0 (its about tomcat but
> > I'm sure the same goes for resin).
> >
> >
> >
> >
> >
> > Petter_M�hl�n
> wrote:
> > Hi,
> >
> > I looked very quickly at the PageLink class and .jwc. As far
> > as I can tell,
> > in rc1, there's no property called templateTagBinding in the
> > .jwc, and no
> > methods defined in the class (I even tried a "grep -i
> > templatetagbinding" in
> > all the .java and .jwc files). Are you using rc1 or beta4? If
> > you're on
> > beta4, I'd try switching to rc1 just to see what happens.
> >
> > / Petter
> >
> > > -----Original Message-----
> > > From: Kris Rasmussen [mailto:kristapestry@yahoo.com]
> > > Sent: den 23 mars 2004 11:28
> > > To: Tapestry users
> > > Subject: Re: Error deploying tapestry on specific server.
> > (more info)
> > >
> > >
> > > I can't shutdown the server since its shared. At this point I
> > > am running out of time so I think I am going to have to
> > > switch over to another host. I am in the process of setting
> > > up my own servers but in the mean time I need a cheap place
> > > to host my clients site. Anyone got any recommendations?
> > >
> > > Thanks for all the ideas and trying to help.
> > >
> > > Kris
> > >
> > > Jonny Wray wrote:
> > >
> > >
> > > Kris,
> > >
> > > I'd never assume that the web-inf/lib jars take priority.
> > > That certainly
> > > wasn't the case for me in the past. I think it very much
> > > depends on the
> > > class loading strategy of the app server. Still, if it's a basic
> > > installation of resin then looks like that's not the problem.
> > >
> > > I don't know what else to suggest. I thought of the library
> > > conflict as I'd
> > > seen this error before and that was the cause, although not
> > > with tapestry.
> > > That fact coupled with the fact that your app works on one
> > > instance of resin
> > > and not another suggested that to me.
> > >
> > > I guess one thing I'd try - are you just hot loading the app
> > > into the shared
> > > server or have you tried shutting down, deploying then
> > > restarting. Maybe the
> > > app server is caching the classes. I'm grasping at straws
> > > now, sorry I can't
> > > be of any more help.
> > >
> > > Jonny
> > >
> > > On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> > >
> > > > I don't think it could be a library conflict because the
> > > server only has the
> > > > basica jdk and resin libraries installed (so I am told) and
> > > my lib directory
> > > > should take priority (or so I think).
> > > >
> > > > The problem isn't with another library anyways, its with
> > > any enhanced method,
> > > > specifically the getTemplateTagBinding() which may simply
> > > be the first
> > > > enhanced method that is called. I read in the jboss forums that an
> > > > IllegalAccess exception can happen when two classes of the
> > > same class are
> > > > loaded into memory so it might be possible that the
> > > enhanced classes have been
> > > > loaded twice in memory. Do the classes that tapestry
> > > enhances reside only in
> > > > memory or are they stored somewhere else?
> > > >
> > > > Thanks again,
> > > > Kris
> > > >
> > > > Jonny Wray wrote:
> > > >
> > > > Kris,
> > > >
> > > > Ah, I understand now - did't know resin could do this.
> > > >
> > > > Have you checked the centralized lib directory for the whole
> > > > installation of resin to see if there's another version
> > of any apps
> > > > around that conflict with your WEB-INF/lib versions?
> > > >
> > > > That's about the only thing I can think of. I don't know
> > > resin, but as
> > > > I said I've never heard of any configuration properties
> > > that could do
> > > > this, but it must be a difference between the two versions
> > > as you have
> > > > your code working on the other.
> > > >
> > > > I maybe wrong but I thought the Illegal in
> > > IllegalAccessException was
> > > > more on the lines of trying to access a private/protected
> > method or
> > > > field by reflection, rather than a security (eg jaas) thing.
> > > >
> > > > Jonny
> > > >
> > > > --- Kris Rasmussen wrote:
> > > >> Thanks Jonny. By compiling the app on the server I was
> > reffering to
> > > >> resin's ability to take a web app with no class files and
> > > dynamically
> > > >> compile the java files while deploying it (or when the java files
> > > >> change). Basically I just uploaded the java files in place of the
> > > >> class files when deploying the app and resin compiled
> > > everything for
> > > >> me. All my libraries are placed in the lib folder of the
> > > app so resin
> > > >> should have used the same libraries to compile and to run.
> > > >> Furthermore, I've tested the app on my own resin server
> > (different
> > > >> from the tomcat server I use to develop) and it worked perfectly.
> > > >>
> > > >> Still, given all this, if you think there is still a way
> > > for what you
> > > >> described to be happening, let me know because I can't think of
> > > >> anything else other than what I already mentioned below.
> > > >>
> > > >>> java.lang.IllegalAccessException: Method [public
> > > >>> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >>> cannot be
> > > >>>> accessed.
> > > >>
> > > >> It looks like the illegal access exception is a result
> > of a binding
> > > >> that references a method getTemplateTagBinding() of an enhanced
> > > >> PageLink. I see that this method is inserted by tapestry to most
> > > >> components, but I don't understand why an access to it
> > > would trigger
> > > >> an IllegalAccessException other than maybe the security
> > settings on
> > > >> the shared server I am using some how prevent it?
> > > >>
> > > >> Thanks again,
> > > >> Kris
> > > >>
> > > >> Jonny Wray wrote:
> > > >>
> > > >> Kris,
> > > >>
> > > >> I've never used resin so can't help you with specifics,
> > but of all
> > > >> the app
> > > >> servers I've used I've never seen any such configuration
> > > >> possibilities.
> > > >>
> > > >> Not sure what you mean about getting the server to compile the
> > > >> application.
> > > >> If you mean you compiled the app on the server machine this still
> > > >> does not
> > > >> eliminate the possibility that you are using a different
> > > set of jars
> > > >> for
> > > >> compiling and another for running. Remember, app servers
> > do not use
> > > >> your
> > > >> classpath for running.
> > > >>
> > > >> I'd still look for library incompatibilities. For example,
> > > if you are
> > > >> using
> > > >> Spindle under eclipse it comes packaged with its own
> > version of the
> > > >> tapestry
> > > >> jars. If you've downloaded your own version of the tapesty
> > > jars this
> > > >> could
> > > >> mean you are compiling with one set of jars but packaging and
> > > >> deploying with
> > > >> another. I've seen the same exception in the past that was
> > > caused by
> > > >> the
> > > >> same problem (but using struts on Oracle 9ias).
> > > >>
> > > >> Jonny
> > > >>
> > > >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> > > >>
> > > >>> Thanks, Jonny, thats definatly possible but I don't know
> > > that it is
> > > >> the
> > > >>> problem because the server runs resin and I tryed uploading the
> > > >> app's source
> > > >>> only and having the server compile from scratch and I
> > > still get the
> > > >> same
> > > >>> error. Could my server be configured such that the javaassist
> > > >> bytecode
> > > >>> generator is able to generate code but my classes are
> > not able to
> > > >> access it
> > > >>> (as the following could imply)?
> > > >>>
> > > >>> java.lang.IllegalAccessException: Method [public
> > > >>> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >>> cannot be
> > > >>>> accessed.
> > > >>>
> > > >>> Does tapestry cache out these dynamically generate
> > > classes anywhere
> > > >> or is it
> > > >>> all done in memory?
> > > >>>
> > > >>> Thanks,
> > > >>> Kris
> > > >>>
> > > >>>
> > > >>> Jonny Wray wrote:
> > > >>>
> > > >>> This looks to me like a versioning problem with libraries ie,
> > > >> you've
> > > >>> compiled against one version of a library and are running with
> > > >> another. This
> > > >>> error occurs when method is reflectively accessed (ie
> > at runtime)
> > > >> but it
> > > >>> cannot be found.
> > > >>>
> > > >>> I'd check the version of the various external libs you
> > > are using on
> > > >> the
> > > >>> shared server, and also check there's not multiple
> > version of the
> > > >> same
> > > >>> libraries around.
> > > >>>
> > > >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > > >>>
> > > >>>> I found the following in the logs of my shared server,
> > how could
> > > >> the setup of
> > > >>>> this server cause this IllegalAccessException?
> > > >>>>
> > > >>>> Unable to process client request.
> > > >>>>
> > > >>>>
> > > >>>> Session id: null
> > > >>>> Client address: 4.10.129.226
> > > >>>>
> > > >>>> Exceptions:
> > > >>>>
> > > >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> > > >> expression
> > > >>>> '
> > > >>> ' of
> > > >>>>
> > > >>
> > org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> > > >>>>
> > > >>>> ognl.OgnlException: templateTagBinding
> > > >>>>
> > > >>>> java.lang.IllegalAccessException: Method [public
> > > >> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >> cannot
> > > >>>> be
> > > >>>> accessed.
> > > >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> > > >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> > > >>>>
> > > >>>
> > > >>
> > > >
> > > ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> > > Accessor.java:54>
> > > >
> > > >>>
> > > >>> )
> > > >>>>
> > > >>
> > > >
> > > ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> > > .java:122)
> > > >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> > > >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> > > >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> > > >>>> ognl.Ognl.getValue(Ognl.java:335)
> > > >>>> ognl.Ognl.getValue(Ognl.java:310)
> > > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> > > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> > > nent.java:520)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> > > ng(BaseComponen>>
> > > >
> > > >> t
> > > >>>> TemplateLoader.java:581)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> > > dings(BaseCompo>>
> > > >
> > > >> n
> > > >>>> entTemplateLoader.java:373)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > > mponentTemplate>>
> > > >
> > > >> L
> > > >>>> oader.java:307)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > > mponentTemplate>>
> > > >
> > > >> L
> > > >>>> oader.java:215)
> > > >>>>
> > > >>
> > > >
> > >
> > org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> > > >>>>
> > > >>
> > > org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> > > >>>>
> > > >>>
> > > >>
> > > >
> > > org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> > > eLoader.java:566>
> > > >
> > > >>>
> > > >>> )
> > > >>>>
> > > >>
> > >
> > org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> > > >>>>
> > > >>
> > > org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> > > >>>>
> > > >>
> > > >
> > >
> > org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> > > >>>>
> > > >>
> > > org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> > > ne.java:912)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> > > rvlet.java:238)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> > > t.java:199)
> > > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> > > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> > > >>>>
> > > >>
> > > >
> > > com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> > > Servlet.java:96>>
> > > >
> > > >> )
> > > >>
> > > > === message truncated ===
> > > >
> > > >
> > > >
> > >
> > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > tapestry-user-unsubscribe@jakarta.apache.org
> > > > For additional commands, e-mail:
> > > tapestry-user-help@jakarta.apache.org
> > > >
> > > > Do you Yahoo!?
> > > > Yahoo! Finance Tax Center - File online. File on time.
> > >
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > > For additional commands, e-mail:
> > tapestry-user-help@jakarta.apache.org
> > >
> > > Do you Yahoo!?
> > > Yahoo! Finance Tax Center - File online. File on time.
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> >
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>
> ---------------------------------
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


---------------------------------
Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Mindbridge <mi...@yahoo.com>.
> As to not finding the get templateTagBinding in the .jwc and .page files,
its not there because it is a method that tapestry adds to every component

It used to, in an old beta version (beta2 or beta3, cannot remember exactly
at the moment). Currently this has been optimized and is added only to
components that have this parameter defined (such as Any), but it is
definitely not added to components such as PageLink.

----- Original Message ----- 
From: "Kris Rasmussen" <kr...@yahoo.com>
To: "Tapestry users" <ta...@jakarta.apache.org>
Sent: Thursday, March 25, 2004 5:19 AM
Subject: RE: Error deploying tapestry on specific server. (more info)


> I'm still not sure that was the problem, but if you read the message in
the tapestry-dev mailing list you will probably be pretty convinced. I too
thought that a SecurityManager would throw a SecurityException, but maybe
there is more too it that I am just not seeing. Anyways, rather than trying
to get my client's current shared hosting provider to mess with their
security manager configuration I am going to switch him over to a vps server
for now.
>
> As to not finding the get templateTagBinding in the .jwc and .page files,
its not there because it is a method that tapestry adds to every component
(that may not be 100% correct), but if you search again this time for
'templatetag' I think you will find something.
>
> Kris
>
> Petter_Måhlén <pe...@elevance.se> wrote:
> Hm, did that solve your problem? That's a surprise to me, I was sure that
> IllegalAccessException was only about Java-level problems
> (public/protected/private, etc), and that a SecurityManager would always
> throw a SecurityException.
>
> Also, as I understand it, Tapestry (using javassist) enhances the classes
> based on .jwc and .page files. Which is why I looked in the .jwc files as
> well for the TemplateTagBinding.
>
> This is getting interesting - please let us know what the final solution
is!
>
> / Petter
>
> > -----Original Message-----
> > From: Kris Rasmussen [mailto:kristapestry@yahoo.com]
> > Sent: den 24 mars 2004 05:11
> > To: Tapestry users
> > Subject: RE: Error deploying tapestry on specific server. (more info)
> >
> >
> > Thats because the methods are created at runtime by java
> > assist. Anyways, suprisingly while I was looking for
> > something unrelated about rc1 in the mail archives a message
> > came up from tapestry-dev about my exact problem. As I
> > thought it is related to the security manager in place on the
> > shared server I am using. The title of the thread is [Patch]
> > Tapestry 3.0 RC1 in secure Tomcat 5.0 (its about tomcat but
> > I'm sure the same goes for resin).
> >
> >
> >
> >
> >
> > Petter_Måhlén
> wrote:
> > Hi,
> >
> > I looked very quickly at the PageLink class and .jwc. As far
> > as I can tell,
> > in rc1, there's no property called templateTagBinding in the
> > .jwc, and no
> > methods defined in the class (I even tried a "grep -i
> > templatetagbinding" in
> > all the .java and .jwc files). Are you using rc1 or beta4? If
> > you're on
> > beta4, I'd try switching to rc1 just to see what happens.
> >
> > / Petter
> >
> > > -----Original Message-----
> > > From: Kris Rasmussen [mailto:kristapestry@yahoo.com]
> > > Sent: den 23 mars 2004 11:28
> > > To: Tapestry users
> > > Subject: Re: Error deploying tapestry on specific server.
> > (more info)
> > >
> > >
> > > I can't shutdown the server since its shared. At this point I
> > > am running out of time so I think I am going to have to
> > > switch over to another host. I am in the process of setting
> > > up my own servers but in the mean time I need a cheap place
> > > to host my clients site. Anyone got any recommendations?
> > >
> > > Thanks for all the ideas and trying to help.
> > >
> > > Kris
> > >
> > > Jonny Wray wrote:
> > >
> > >
> > > Kris,
> > >
> > > I'd never assume that the web-inf/lib jars take priority.
> > > That certainly
> > > wasn't the case for me in the past. I think it very much
> > > depends on the
> > > class loading strategy of the app server. Still, if it's a basic
> > > installation of resin then looks like that's not the problem.
> > >
> > > I don't know what else to suggest. I thought of the library
> > > conflict as I'd
> > > seen this error before and that was the cause, although not
> > > with tapestry.
> > > That fact coupled with the fact that your app works on one
> > > instance of resin
> > > and not another suggested that to me.
> > >
> > > I guess one thing I'd try - are you just hot loading the app
> > > into the shared
> > > server or have you tried shutting down, deploying then
> > > restarting. Maybe the
> > > app server is caching the classes. I'm grasping at straws
> > > now, sorry I can't
> > > be of any more help.
> > >
> > > Jonny
> > >
> > > On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> > >
> > > > I don't think it could be a library conflict because the
> > > server only has the
> > > > basica jdk and resin libraries installed (so I am told) and
> > > my lib directory
> > > > should take priority (or so I think).
> > > >
> > > > The problem isn't with another library anyways, its with
> > > any enhanced method,
> > > > specifically the getTemplateTagBinding() which may simply
> > > be the first
> > > > enhanced method that is called. I read in the jboss forums that an
> > > > IllegalAccess exception can happen when two classes of the
> > > same class are
> > > > loaded into memory so it might be possible that the
> > > enhanced classes have been
> > > > loaded twice in memory. Do the classes that tapestry
> > > enhances reside only in
> > > > memory or are they stored somewhere else?
> > > >
> > > > Thanks again,
> > > > Kris
> > > >
> > > > Jonny Wray wrote:
> > > >
> > > > Kris,
> > > >
> > > > Ah, I understand now - did't know resin could do this.
> > > >
> > > > Have you checked the centralized lib directory for the whole
> > > > installation of resin to see if there's another version
> > of any apps
> > > > around that conflict with your WEB-INF/lib versions?
> > > >
> > > > That's about the only thing I can think of. I don't know
> > > resin, but as
> > > > I said I've never heard of any configuration properties
> > > that could do
> > > > this, but it must be a difference between the two versions
> > > as you have
> > > > your code working on the other.
> > > >
> > > > I maybe wrong but I thought the Illegal in
> > > IllegalAccessException was
> > > > more on the lines of trying to access a private/protected
> > method or
> > > > field by reflection, rather than a security (eg jaas) thing.
> > > >
> > > > Jonny
> > > >
> > > > --- Kris Rasmussen wrote:
> > > >> Thanks Jonny. By compiling the app on the server I was
> > reffering to
> > > >> resin's ability to take a web app with no class files and
> > > dynamically
> > > >> compile the java files while deploying it (or when the java files
> > > >> change). Basically I just uploaded the java files in place of the
> > > >> class files when deploying the app and resin compiled
> > > everything for
> > > >> me. All my libraries are placed in the lib folder of the
> > > app so resin
> > > >> should have used the same libraries to compile and to run.
> > > >> Furthermore, I've tested the app on my own resin server
> > (different
> > > >> from the tomcat server I use to develop) and it worked perfectly.
> > > >>
> > > >> Still, given all this, if you think there is still a way
> > > for what you
> > > >> described to be happening, let me know because I can't think of
> > > >> anything else other than what I already mentioned below.
> > > >>
> > > >>> java.lang.IllegalAccessException: Method [public
> > > >>> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >>> cannot be
> > > >>>> accessed.
> > > >>
> > > >> It looks like the illegal access exception is a result
> > of a binding
> > > >> that references a method getTemplateTagBinding() of an enhanced
> > > >> PageLink. I see that this method is inserted by tapestry to most
> > > >> components, but I don't understand why an access to it
> > > would trigger
> > > >> an IllegalAccessException other than maybe the security
> > settings on
> > > >> the shared server I am using some how prevent it?
> > > >>
> > > >> Thanks again,
> > > >> Kris
> > > >>
> > > >> Jonny Wray wrote:
> > > >>
> > > >> Kris,
> > > >>
> > > >> I've never used resin so can't help you with specifics,
> > but of all
> > > >> the app
> > > >> servers I've used I've never seen any such configuration
> > > >> possibilities.
> > > >>
> > > >> Not sure what you mean about getting the server to compile the
> > > >> application.
> > > >> If you mean you compiled the app on the server machine this still
> > > >> does not
> > > >> eliminate the possibility that you are using a different
> > > set of jars
> > > >> for
> > > >> compiling and another for running. Remember, app servers
> > do not use
> > > >> your
> > > >> classpath for running.
> > > >>
> > > >> I'd still look for library incompatibilities. For example,
> > > if you are
> > > >> using
> > > >> Spindle under eclipse it comes packaged with its own
> > version of the
> > > >> tapestry
> > > >> jars. If you've downloaded your own version of the tapesty
> > > jars this
> > > >> could
> > > >> mean you are compiling with one set of jars but packaging and
> > > >> deploying with
> > > >> another. I've seen the same exception in the past that was
> > > caused by
> > > >> the
> > > >> same problem (but using struts on Oracle 9ias).
> > > >>
> > > >> Jonny
> > > >>
> > > >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> > > >>
> > > >>> Thanks, Jonny, thats definatly possible but I don't know
> > > that it is
> > > >> the
> > > >>> problem because the server runs resin and I tryed uploading the
> > > >> app's source
> > > >>> only and having the server compile from scratch and I
> > > still get the
> > > >> same
> > > >>> error. Could my server be configured such that the javaassist
> > > >> bytecode
> > > >>> generator is able to generate code but my classes are
> > not able to
> > > >> access it
> > > >>> (as the following could imply)?
> > > >>>
> > > >>> java.lang.IllegalAccessException: Method [public
> > > >>> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >>> cannot be
> > > >>>> accessed.
> > > >>>
> > > >>> Does tapestry cache out these dynamically generate
> > > classes anywhere
> > > >> or is it
> > > >>> all done in memory?
> > > >>>
> > > >>> Thanks,
> > > >>> Kris
> > > >>>
> > > >>>
> > > >>> Jonny Wray wrote:
> > > >>>
> > > >>> This looks to me like a versioning problem with libraries ie,
> > > >> you've
> > > >>> compiled against one version of a library and are running with
> > > >> another. This
> > > >>> error occurs when method is reflectively accessed (ie
> > at runtime)
> > > >> but it
> > > >>> cannot be found.
> > > >>>
> > > >>> I'd check the version of the various external libs you
> > > are using on
> > > >> the
> > > >>> shared server, and also check there's not multiple
> > version of the
> > > >> same
> > > >>> libraries around.
> > > >>>
> > > >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > > >>>
> > > >>>> I found the following in the logs of my shared server,
> > how could
> > > >> the setup of
> > > >>>> this server cause this IllegalAccessException?
> > > >>>>
> > > >>>> Unable to process client request.
> > > >>>>
> > > >>>>
> > > >>>> Session id: null
> > > >>>> Client address: 4.10.129.226
> > > >>>>
> > > >>>> Exceptions:
> > > >>>>
> > > >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> > > >> expression
> > > >>>> '
> > > >>> ' of
> > > >>>>
> > > >>
> > org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> > > >>>>
> > > >>>> ognl.OgnlException: templateTagBinding
> > > >>>>
> > > >>>> java.lang.IllegalAccessException: Method [public
> > > >> org.apache.tapestry.IBinding
> > > >>>>
> > > >>
> > > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > > >> cannot
> > > >>>> be
> > > >>>> accessed.
> > > >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> > > >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> > > >>>>
> > > >>>
> > > >>
> > > >
> > > ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> > > Accessor.java:54>
> > > >
> > > >>>
> > > >>> )
> > > >>>>
> > > >>
> > > >
> > > ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> > > .java:122)
> > > >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> > > >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> > > >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> > > >>>> ognl.Ognl.getValue(Ognl.java:335)
> > > >>>> ognl.Ognl.getValue(Ognl.java:310)
> > > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> > > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> > > nent.java:520)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> > > ng(BaseComponen>>
> > > >
> > > >> t
> > > >>>> TemplateLoader.java:581)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> > > dings(BaseCompo>>
> > > >
> > > >> n
> > > >>>> entTemplateLoader.java:373)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > > mponentTemplate>>
> > > >
> > > >> L
> > > >>>> oader.java:307)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > > mponentTemplate>>
> > > >
> > > >> L
> > > >>>> oader.java:215)
> > > >>>>
> > > >>
> > > >
> > >
> > org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> > > >>>>
> > > >>
> > > org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> > > >>>>
> > > >>>
> > > >>
> > > >
> > > org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> > > eLoader.java:566>
> > > >
> > > >>>
> > > >>> )
> > > >>>>
> > > >>
> > >
> > org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> > > >>>>
> > > >>
> > > org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> > > >>>>
> > > >>
> > > >
> > >
> > org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> > > >>>>
> > > >>
> > > org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> > > ne.java:912)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> > > rvlet.java:238)
> > > >>>>
> > > >>
> > > >
> > > org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> > > t.java:199)
> > > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> > > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> > > >>>>
> > > >>
> > > >
> > > com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> > > Servlet.java:96>>
> > > >
> > > >> )
> > > >>
> > > > === message truncated ===
> > > >
> > > >
> > > >
> > >
> > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > tapestry-user-unsubscribe@jakarta.apache.org
> > > > For additional commands, e-mail:
> > > tapestry-user-help@jakarta.apache.org
> > > >
> > > > Do you Yahoo!?
> > > > Yahoo! Finance Tax Center - File online. File on time.
> > >
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > > For additional commands, e-mail:
> > tapestry-user-help@jakarta.apache.org
> > >
> > > Do you Yahoo!?
> > > Yahoo! Finance Tax Center - File online. File on time.
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> >
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>
> ---------------------------------
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


RE: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
I'm still not sure that was the problem, but if you read the message in the tapestry-dev mailing list you will probably be pretty convinced. I too thought that a SecurityManager would throw a SecurityException, but maybe there is more too it that I am just not seeing. Anyways, rather than trying to get my client's current shared hosting provider to mess with their security manager configuration I am going to switch him over to a vps server for now.
 
As to not finding the get templateTagBinding in the .jwc and .page files, its not there because it is a method that tapestry adds to every component (that may not be 100% correct), but if you search again this time for 'templatetag' I think you will find something.
 
Kris

Petter_M�hl�n <pe...@elevance.se> wrote:
Hm, did that solve your problem? That's a surprise to me, I was sure that
IllegalAccessException was only about Java-level problems
(public/protected/private, etc), and that a SecurityManager would always
throw a SecurityException.

Also, as I understand it, Tapestry (using javassist) enhances the classes
based on .jwc and .page files. Which is why I looked in the .jwc files as
well for the TemplateTagBinding.

This is getting interesting - please let us know what the final solution is!

/ Petter

> -----Original Message-----
> From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> Sent: den 24 mars 2004 05:11
> To: Tapestry users
> Subject: RE: Error deploying tapestry on specific server. (more info)
> 
> 
> Thats because the methods are created at runtime by java 
> assist. Anyways, suprisingly while I was looking for 
> something unrelated about rc1 in the mail archives a message 
> came up from tapestry-dev about my exact problem. As I 
> thought it is related to the security manager in place on the 
> shared server I am using. The title of the thread is [Patch] 
> Tapestry 3.0 RC1 in secure Tomcat 5.0 (its about tomcat but 
> I'm sure the same goes for resin).
> 
> 
> 
> 
> 
> Petter_M�hl�n 
wrote:
> Hi,
> 
> I looked very quickly at the PageLink class and .jwc. As far 
> as I can tell,
> in rc1, there's no property called templateTagBinding in the 
> .jwc, and no
> methods defined in the class (I even tried a "grep -i 
> templatetagbinding" in
> all the .java and .jwc files). Are you using rc1 or beta4? If 
> you're on
> beta4, I'd try switching to rc1 just to see what happens.
> 
> / Petter
> 
> > -----Original Message-----
> > From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> > Sent: den 23 mars 2004 11:28
> > To: Tapestry users
> > Subject: Re: Error deploying tapestry on specific server. 
> (more info)
> > 
> > 
> > I can't shutdown the server since its shared. At this point I 
> > am running out of time so I think I am going to have to 
> > switch over to another host. I am in the process of setting 
> > up my own servers but in the mean time I need a cheap place 
> > to host my clients site. Anyone got any recommendations?
> > 
> > Thanks for all the ideas and trying to help.
> > 
> > Kris
> > 
> > Jonny Wray wrote:
> > 
> > 
> > Kris,
> > 
> > I'd never assume that the web-inf/lib jars take priority. 
> > That certainly
> > wasn't the case for me in the past. I think it very much 
> > depends on the
> > class loading strategy of the app server. Still, if it's a basic
> > installation of resin then looks like that's not the problem.
> > 
> > I don't know what else to suggest. I thought of the library 
> > conflict as I'd
> > seen this error before and that was the cause, although not 
> > with tapestry.
> > That fact coupled with the fact that your app works on one 
> > instance of resin
> > and not another suggested that to me.
> > 
> > I guess one thing I'd try - are you just hot loading the app 
> > into the shared
> > server or have you tried shutting down, deploying then 
> > restarting. Maybe the
> > app server is caching the classes. I'm grasping at straws 
> > now, sorry I can't
> > be of any more help.
> > 
> > Jonny
> > 
> > On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> > 
> > > I don't think it could be a library conflict because the 
> > server only has the
> > > basica jdk and resin libraries installed (so I am told) and 
> > my lib directory
> > > should take priority (or so I think).
> > > 
> > > The problem isn't with another library anyways, its with 
> > any enhanced method,
> > > specifically the getTemplateTagBinding() which may simply 
> > be the first
> > > enhanced method that is called. I read in the jboss forums that an
> > > IllegalAccess exception can happen when two classes of the 
> > same class are
> > > loaded into memory so it might be possible that the 
> > enhanced classes have been
> > > loaded twice in memory. Do the classes that tapestry 
> > enhances reside only in
> > > memory or are they stored somewhere else?
> > > 
> > > Thanks again,
> > > Kris
> > > 
> > > Jonny Wray wrote:
> > > 
> > > Kris,
> > > 
> > > Ah, I understand now - did't know resin could do this.
> > > 
> > > Have you checked the centralized lib directory for the whole
> > > installation of resin to see if there's another version 
> of any apps
> > > around that conflict with your WEB-INF/lib versions?
> > > 
> > > That's about the only thing I can think of. I don't know 
> > resin, but as
> > > I said I've never heard of any configuration properties 
> > that could do
> > > this, but it must be a difference between the two versions 
> > as you have
> > > your code working on the other.
> > > 
> > > I maybe wrong but I thought the Illegal in 
> > IllegalAccessException was
> > > more on the lines of trying to access a private/protected 
> method or
> > > field by reflection, rather than a security (eg jaas) thing.
> > > 
> > > Jonny
> > > 
> > > --- Kris Rasmussen wrote:
> > >> Thanks Jonny. By compiling the app on the server I was 
> reffering to
> > >> resin's ability to take a web app with no class files and 
> > dynamically
> > >> compile the java files while deploying it (or when the java files
> > >> change). Basically I just uploaded the java files in place of the
> > >> class files when deploying the app and resin compiled 
> > everything for
> > >> me. All my libraries are placed in the lib folder of the 
> > app so resin
> > >> should have used the same libraries to compile and to run.
> > >> Furthermore, I've tested the app on my own resin server 
> (different
> > >> from the tomcat server I use to develop) and it worked perfectly.
> > >> 
> > >> Still, given all this, if you think there is still a way 
> > for what you
> > >> described to be happening, let me know because I can't think of
> > >> anything else other than what I already mentioned below.
> > >> 
> > >>> java.lang.IllegalAccessException: Method [public
> > >>> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >>> cannot be
> > >>>> accessed.
> > >> 
> > >> It looks like the illegal access exception is a result 
> of a binding
> > >> that references a method getTemplateTagBinding() of an enhanced
> > >> PageLink. I see that this method is inserted by tapestry to most
> > >> components, but I don't understand why an access to it 
> > would trigger
> > >> an IllegalAccessException other than maybe the security 
> settings on
> > >> the shared server I am using some how prevent it?
> > >> 
> > >> Thanks again,
> > >> Kris
> > >> 
> > >> Jonny Wray wrote:
> > >> 
> > >> Kris,
> > >> 
> > >> I've never used resin so can't help you with specifics, 
> but of all
> > >> the app
> > >> servers I've used I've never seen any such configuration
> > >> possibilities.
> > >> 
> > >> Not sure what you mean about getting the server to compile the
> > >> application.
> > >> If you mean you compiled the app on the server machine this still
> > >> does not
> > >> eliminate the possibility that you are using a different 
> > set of jars
> > >> for
> > >> compiling and another for running. Remember, app servers 
> do not use
> > >> your
> > >> classpath for running.
> > >> 
> > >> I'd still look for library incompatibilities. For example, 
> > if you are
> > >> using
> > >> Spindle under eclipse it comes packaged with its own 
> version of the
> > >> tapestry
> > >> jars. If you've downloaded your own version of the tapesty 
> > jars this
> > >> could
> > >> mean you are compiling with one set of jars but packaging and
> > >> deploying with
> > >> another. I've seen the same exception in the past that was 
> > caused by
> > >> the
> > >> same problem (but using struts on Oracle 9ias).
> > >> 
> > >> Jonny
> > >> 
> > >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> > >> 
> > >>> Thanks, Jonny, thats definatly possible but I don't know 
> > that it is
> > >> the
> > >>> problem because the server runs resin and I tryed uploading the
> > >> app's source
> > >>> only and having the server compile from scratch and I 
> > still get the
> > >> same
> > >>> error. Could my server be configured such that the javaassist
> > >> bytecode
> > >>> generator is able to generate code but my classes are 
> not able to
> > >> access it
> > >>> (as the following could imply)?
> > >>> 
> > >>> java.lang.IllegalAccessException: Method [public
> > >>> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >>> cannot be
> > >>>> accessed.
> > >>> 
> > >>> Does tapestry cache out these dynamically generate 
> > classes anywhere
> > >> or is it
> > >>> all done in memory?
> > >>> 
> > >>> Thanks,
> > >>> Kris
> > >>> 
> > >>> 
> > >>> Jonny Wray wrote:
> > >>> 
> > >>> This looks to me like a versioning problem with libraries ie,
> > >> you've
> > >>> compiled against one version of a library and are running with
> > >> another. This
> > >>> error occurs when method is reflectively accessed (ie 
> at runtime)
> > >> but it
> > >>> cannot be found.
> > >>> 
> > >>> I'd check the version of the various external libs you 
> > are using on
> > >> the
> > >>> shared server, and also check there's not multiple 
> version of the
> > >> same
> > >>> libraries around.
> > >>> 
> > >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > >>> 
> > >>>> I found the following in the logs of my shared server, 
> how could
> > >> the setup of
> > >>>> this server cause this IllegalAccessException?
> > >>>> 
> > >>>> Unable to process client request.
> > >>>> 
> > >>>> 
> > >>>> Session id: null
> > >>>> Client address: 4.10.129.226
> > >>>> 
> > >>>> Exceptions:
> > >>>> 
> > >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> > >> expression
> > >>>> '
> > >>> ' of
> > >>>> 
> > >> 
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> > >>>> 
> > >>>> ognl.OgnlException: templateTagBinding
> > >>>> 
> > >>>> java.lang.IllegalAccessException: Method [public
> > >> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >> cannot
> > >>>> be
> > >>>> accessed.
> > >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> > >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> > >>>> 
> > >>> 
> > >> 
> > > 
> > ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> > Accessor.java:54>
> > >
> > >>> 
> > >>> )
> > >>>> 
> > >> 
> > > 
> > ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> > .java:122)
> > >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> > >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> > >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> > >>>> ognl.Ognl.getValue(Ognl.java:335)
> > >>>> ognl.Ognl.getValue(Ognl.java:310)
> > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> > nent.java:520)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> > ng(BaseComponen>>
> > >
> > >> t
> > >>>> TemplateLoader.java:581)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> > dings(BaseCompo>>
> > >
> > >> n
> > >>>> entTemplateLoader.java:373)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > mponentTemplate>>
> > >
> > >> L
> > >>>> oader.java:307)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > mponentTemplate>>
> > >
> > >> L
> > >>>> oader.java:215)
> > >>>> 
> > >> 
> > > 
> > 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> > >>>> 
> > >> 
> > org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> > >>>> 
> > >>> 
> > >> 
> > > 
> > org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> > eLoader.java:566>
> > >
> > >>> 
> > >>> )
> > >>>> 
> > >> 
> > 
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> > >>>> 
> > >> 
> > org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> > >>>> 
> > >> 
> > > 
> > 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> > >>>> 
> > >> 
> > org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> > ne.java:912)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> > rvlet.java:238)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> > t.java:199)
> > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> > >>>> 
> > >> 
> > > 
> > com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> > Servlet.java:96>>
> > >
> > >> )
> > >> 
> > > === message truncated ===
> > > 
> > > 
> > > 
> > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: 
> tapestry-user-unsubscribe@jakarta.apache.org
> > > For additional commands, e-mail: 
> > tapestry-user-help@jakarta.apache.org
> > > 
> > > Do you Yahoo!?
> > > Yahoo! Finance Tax Center - File online. File on time.
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-user-help@jakarta.apache.org
> > 
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


---------------------------------
Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

RE: Error deploying tapestry on specific server. (more info)

Posted by Petter Måhlén <pe...@elevance.se>.
Hm, did that solve your problem? That's a surprise to me, I was sure that
IllegalAccessException was only about Java-level problems
(public/protected/private, etc), and that a SecurityManager would always
throw a SecurityException.

Also, as I understand it, Tapestry (using javassist) enhances the classes
based on .jwc and .page files. Which is why I looked in the .jwc files as
well for the TemplateTagBinding.

This is getting interesting - please let us know what the final solution is!

/ Petter

> -----Original Message-----
> From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> Sent: den 24 mars 2004 05:11
> To: Tapestry users
> Subject: RE: Error deploying tapestry on specific server. (more info)
> 
> 
> Thats because the methods are created at runtime by java 
> assist. Anyways, suprisingly while I was looking for 
> something unrelated about rc1 in the mail archives a message 
> came up from tapestry-dev about my exact problem. As I 
> thought it is related to the security manager in place on the 
> shared server I am using. The title of the thread is [Patch] 
> Tapestry 3.0 RC1 in secure Tomcat 5.0  (its about tomcat but 
> I'm sure the same goes for resin).
>  
>  
> 
> 
> 
> Petter_Måhlén <pe...@elevance.se> wrote:
> Hi,
> 
> I looked very quickly at the PageLink class and .jwc. As far 
> as I can tell,
> in rc1, there's no property called templateTagBinding in the 
> .jwc, and no
> methods defined in the class (I even tried a "grep -i 
> templatetagbinding" in
> all the .java and .jwc files). Are you using rc1 or beta4? If 
> you're on
> beta4, I'd try switching to rc1 just to see what happens.
> 
> / Petter
> 
> > -----Original Message-----
> > From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> > Sent: den 23 mars 2004 11:28
> > To: Tapestry users
> > Subject: Re: Error deploying tapestry on specific server. 
> (more info)
> > 
> > 
> > I can't shutdown the server since its shared. At this point I 
> > am running out of time so I think I am going to have to 
> > switch over to another host. I am in the process of setting 
> > up my own servers but in the mean time I need a cheap place 
> > to host my clients site. Anyone got any recommendations?
> > 
> > Thanks for all the ideas and trying to help.
> > 
> > Kris
> > 
> > Jonny Wray wrote:
> > 
> > 
> > Kris,
> > 
> > I'd never assume that the web-inf/lib jars take priority. 
> > That certainly
> > wasn't the case for me in the past. I think it very much 
> > depends on the
> > class loading strategy of the app server. Still, if it's a basic
> > installation of resin then looks like that's not the problem.
> > 
> > I don't know what else to suggest. I thought of the library 
> > conflict as I'd
> > seen this error before and that was the cause, although not 
> > with tapestry.
> > That fact coupled with the fact that your app works on one 
> > instance of resin
> > and not another suggested that to me.
> > 
> > I guess one thing I'd try - are you just hot loading the app 
> > into the shared
> > server or have you tried shutting down, deploying then 
> > restarting. Maybe the
> > app server is caching the classes. I'm grasping at straws 
> > now, sorry I can't
> > be of any more help.
> > 
> > Jonny
> > 
> > On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> > 
> > > I don't think it could be a library conflict because the 
> > server only has the
> > > basica jdk and resin libraries installed (so I am told) and 
> > my lib directory
> > > should take priority (or so I think).
> > > 
> > > The problem isn't with another library anyways, its with 
> > any enhanced method,
> > > specifically the getTemplateTagBinding() which may simply 
> > be the first
> > > enhanced method that is called. I read in the jboss forums that an
> > > IllegalAccess exception can happen when two classes of the 
> > same class are
> > > loaded into memory so it might be possible that the 
> > enhanced classes have been
> > > loaded twice in memory. Do the classes that tapestry 
> > enhances reside only in
> > > memory or are they stored somewhere else?
> > > 
> > > Thanks again,
> > > Kris
> > > 
> > > Jonny Wray wrote:
> > > 
> > > Kris,
> > > 
> > > Ah, I understand now - did't know resin could do this.
> > > 
> > > Have you checked the centralized lib directory for the whole
> > > installation of resin to see if there's another version 
> of any apps
> > > around that conflict with your WEB-INF/lib versions?
> > > 
> > > That's about the only thing I can think of. I don't know 
> > resin, but as
> > > I said I've never heard of any configuration properties 
> > that could do
> > > this, but it must be a difference between the two versions 
> > as you have
> > > your code working on the other.
> > > 
> > > I maybe wrong but I thought the Illegal in 
> > IllegalAccessException was
> > > more on the lines of trying to access a private/protected 
> method or
> > > field by reflection, rather than a security (eg jaas) thing.
> > > 
> > > Jonny
> > > 
> > > --- Kris Rasmussen wrote:
> > >> Thanks Jonny. By compiling the app on the server I was 
> reffering to
> > >> resin's ability to take a web app with no class files and 
> > dynamically
> > >> compile the java files while deploying it (or when the java files
> > >> change). Basically I just uploaded the java files in place of the
> > >> class files when deploying the app and resin compiled 
> > everything for
> > >> me. All my libraries are placed in the lib folder of the 
> > app so resin
> > >> should have used the same libraries to compile and to run.
> > >> Furthermore, I've tested the app on my own resin server 
> (different
> > >> from the tomcat server I use to develop) and it worked perfectly.
> > >> 
> > >> Still, given all this, if you think there is still a way 
> > for what you
> > >> described to be happening, let me know because I can't think of
> > >> anything else other than what I already mentioned below.
> > >> 
> > >>> java.lang.IllegalAccessException: Method [public
> > >>> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >>> cannot be
> > >>>> accessed.
> > >> 
> > >> It looks like the illegal access exception is a result 
> of a binding
> > >> that references a method getTemplateTagBinding() of an enhanced
> > >> PageLink. I see that this method is inserted by tapestry to most
> > >> components, but I don't understand why an access to it 
> > would trigger
> > >> an IllegalAccessException other than maybe the security 
> settings on
> > >> the shared server I am using some how prevent it?
> > >> 
> > >> Thanks again,
> > >> Kris
> > >> 
> > >> Jonny Wray wrote:
> > >> 
> > >> Kris,
> > >> 
> > >> I've never used resin so can't help you with specifics, 
> but of all
> > >> the app
> > >> servers I've used I've never seen any such configuration
> > >> possibilities.
> > >> 
> > >> Not sure what you mean about getting the server to compile the
> > >> application.
> > >> If you mean you compiled the app on the server machine this still
> > >> does not
> > >> eliminate the possibility that you are using a different 
> > set of jars
> > >> for
> > >> compiling and another for running. Remember, app servers 
> do not use
> > >> your
> > >> classpath for running.
> > >> 
> > >> I'd still look for library incompatibilities. For example, 
> > if you are
> > >> using
> > >> Spindle under eclipse it comes packaged with its own 
> version of the
> > >> tapestry
> > >> jars. If you've downloaded your own version of the tapesty 
> > jars this
> > >> could
> > >> mean you are compiling with one set of jars but packaging and
> > >> deploying with
> > >> another. I've seen the same exception in the past that was 
> > caused by
> > >> the
> > >> same problem (but using struts on Oracle 9ias).
> > >> 
> > >> Jonny
> > >> 
> > >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> > >> 
> > >>> Thanks, Jonny, thats definatly possible but I don't know 
> > that it is
> > >> the
> > >>> problem because the server runs resin and I tryed uploading the
> > >> app's source
> > >>> only and having the server compile from scratch and I 
> > still get the
> > >> same
> > >>> error. Could my server be configured such that the javaassist
> > >> bytecode
> > >>> generator is able to generate code but my classes are 
> not able to
> > >> access it
> > >>> (as the following could imply)?
> > >>> 
> > >>> java.lang.IllegalAccessException: Method [public
> > >>> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >>> cannot be
> > >>>> accessed.
> > >>> 
> > >>> Does tapestry cache out these dynamically generate 
> > classes anywhere
> > >> or is it
> > >>> all done in memory?
> > >>> 
> > >>> Thanks,
> > >>> Kris
> > >>> 
> > >>> 
> > >>> Jonny Wray wrote:
> > >>> 
> > >>> This looks to me like a versioning problem with libraries ie,
> > >> you've
> > >>> compiled against one version of a library and are running with
> > >> another. This
> > >>> error occurs when method is reflectively accessed (ie 
> at runtime)
> > >> but it
> > >>> cannot be found.
> > >>> 
> > >>> I'd check the version of the various external libs you 
> > are using on
> > >> the
> > >>> shared server, and also check there's not multiple 
> version of the
> > >> same
> > >>> libraries around.
> > >>> 
> > >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > >>> 
> > >>>> I found the following in the logs of my shared server, 
> how could
> > >> the setup of
> > >>>> this server cause this IllegalAccessException?
> > >>>> 
> > >>>> Unable to process client request.
> > >>>> 
> > >>>> 
> > >>>> Session id: null
> > >>>> Client address: 4.10.129.226
> > >>>> 
> > >>>> Exceptions:
> > >>>> 
> > >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> > >> expression
> > >>>> '
> > >>> ' of
> > >>>> 
> > >> 
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> > >>>> 
> > >>>> ognl.OgnlException: templateTagBinding
> > >>>> 
> > >>>> java.lang.IllegalAccessException: Method [public
> > >> org.apache.tapestry.IBinding
> > >>>> 
> > >> 
> > org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > >> cannot
> > >>>> be
> > >>>> accessed.
> > >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> > >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> > >>>> 
> > >>> 
> > >> 
> > > 
> > ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> > Accessor.java:54>
> > >
> > >>> 
> > >>> )
> > >>>> 
> > >> 
> > > 
> > ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> > .java:122)
> > >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> > >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> > >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> > >>>> ognl.Ognl.getValue(Ognl.java:335)
> > >>>> ognl.Ognl.getValue(Ognl.java:310)
> > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> > >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> > nent.java:520)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> > ng(BaseComponen>>
> > >
> > >> t
> > >>>> TemplateLoader.java:581)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> > dings(BaseCompo>>
> > >
> > >> n
> > >>>> entTemplateLoader.java:373)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > mponentTemplate>>
> > >
> > >> L
> > >>>> oader.java:307)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> > mponentTemplate>>
> > >
> > >> L
> > >>>> oader.java:215)
> > >>>> 
> > >> 
> > > 
> > 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> > >>>> 
> > >> 
> > org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> > >>>> 
> > >>> 
> > >> 
> > > 
> > org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> > eLoader.java:566>
> > >
> > >>> 
> > >>> )
> > >>>> 
> > >> 
> > 
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> > >>>> 
> > >> 
> > org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> > >>>> 
> > >> 
> > > 
> > 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> > >>>> 
> > >> 
> > org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> > ne.java:912)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> > rvlet.java:238)
> > >>>> 
> > >> 
> > > 
> > org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> > t.java:199)
> > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> > >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> > >>>> 
> > >> 
> > > 
> > com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> > Servlet.java:96>>
> > >
> > >> )
> > >> 
> > > === message truncated ===
> > > 
> > > 
> > > 
> > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: 
> tapestry-user-unsubscribe@jakarta.apache.org
> > > For additional commands, e-mail: 
> > tapestry-user-help@jakarta.apache.org
> > > 
> > > Do you Yahoo!?
> > > Yahoo! Finance Tax Center - File online. File on time.
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-user-help@jakarta.apache.org
> > 
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


RE: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
Thats because the methods are created at runtime by java assist. Anyways, suprisingly while I was looking for something unrelated about rc1 in the mail archives a message came up from tapestry-dev about my exact problem. As I thought it is related to the security manager in place on the shared server I am using. The title of the thread is [Patch] Tapestry 3.0 RC1 in secure Tomcat 5.0  (its about tomcat but I'm sure the same goes for resin).
 
 



Petter_M�hl�n <pe...@elevance.se> wrote:
Hi,

I looked very quickly at the PageLink class and .jwc. As far as I can tell,
in rc1, there's no property called templateTagBinding in the .jwc, and no
methods defined in the class (I even tried a "grep -i templatetagbinding" in
all the .java and .jwc files). Are you using rc1 or beta4? If you're on
beta4, I'd try switching to rc1 just to see what happens.

/ Petter

> -----Original Message-----
> From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> Sent: den 23 mars 2004 11:28
> To: Tapestry users
> Subject: Re: Error deploying tapestry on specific server. (more info)
> 
> 
> I can't shutdown the server since its shared. At this point I 
> am running out of time so I think I am going to have to 
> switch over to another host. I am in the process of setting 
> up my own servers but in the mean time I need a cheap place 
> to host my clients site. Anyone got any recommendations?
> 
> Thanks for all the ideas and trying to help.
> 
> Kris
> 
> Jonny Wray wrote:
> 
> 
> Kris,
> 
> I'd never assume that the web-inf/lib jars take priority. 
> That certainly
> wasn't the case for me in the past. I think it very much 
> depends on the
> class loading strategy of the app server. Still, if it's a basic
> installation of resin then looks like that's not the problem.
> 
> I don't know what else to suggest. I thought of the library 
> conflict as I'd
> seen this error before and that was the cause, although not 
> with tapestry.
> That fact coupled with the fact that your app works on one 
> instance of resin
> and not another suggested that to me.
> 
> I guess one thing I'd try - are you just hot loading the app 
> into the shared
> server or have you tried shutting down, deploying then 
> restarting. Maybe the
> app server is caching the classes. I'm grasping at straws 
> now, sorry I can't
> be of any more help.
> 
> Jonny
> 
> On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> 
> > I don't think it could be a library conflict because the 
> server only has the
> > basica jdk and resin libraries installed (so I am told) and 
> my lib directory
> > should take priority (or so I think).
> > 
> > The problem isn't with another library anyways, its with 
> any enhanced method,
> > specifically the getTemplateTagBinding() which may simply 
> be the first
> > enhanced method that is called. I read in the jboss forums that an
> > IllegalAccess exception can happen when two classes of the 
> same class are
> > loaded into memory so it might be possible that the 
> enhanced classes have been
> > loaded twice in memory. Do the classes that tapestry 
> enhances reside only in
> > memory or are they stored somewhere else?
> > 
> > Thanks again,
> > Kris
> > 
> > Jonny Wray wrote:
> > 
> > Kris,
> > 
> > Ah, I understand now - did't know resin could do this.
> > 
> > Have you checked the centralized lib directory for the whole
> > installation of resin to see if there's another version of any apps
> > around that conflict with your WEB-INF/lib versions?
> > 
> > That's about the only thing I can think of. I don't know 
> resin, but as
> > I said I've never heard of any configuration properties 
> that could do
> > this, but it must be a difference between the two versions 
> as you have
> > your code working on the other.
> > 
> > I maybe wrong but I thought the Illegal in 
> IllegalAccessException was
> > more on the lines of trying to access a private/protected method or
> > field by reflection, rather than a security (eg jaas) thing.
> > 
> > Jonny
> > 
> > --- Kris Rasmussen wrote:
> >> Thanks Jonny. By compiling the app on the server I was reffering to
> >> resin's ability to take a web app with no class files and 
> dynamically
> >> compile the java files while deploying it (or when the java files
> >> change). Basically I just uploaded the java files in place of the
> >> class files when deploying the app and resin compiled 
> everything for
> >> me. All my libraries are placed in the lib folder of the 
> app so resin
> >> should have used the same libraries to compile and to run.
> >> Furthermore, I've tested the app on my own resin server (different
> >> from the tomcat server I use to develop) and it worked perfectly.
> >> 
> >> Still, given all this, if you think there is still a way 
> for what you
> >> described to be happening, let me know because I can't think of
> >> anything else other than what I already mentioned below.
> >> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >> 
> >> It looks like the illegal access exception is a result of a binding
> >> that references a method getTemplateTagBinding() of an enhanced
> >> PageLink. I see that this method is inserted by tapestry to most
> >> components, but I don't understand why an access to it 
> would trigger
> >> an IllegalAccessException other than maybe the security settings on
> >> the shared server I am using some how prevent it?
> >> 
> >> Thanks again,
> >> Kris
> >> 
> >> Jonny Wray wrote:
> >> 
> >> Kris,
> >> 
> >> I've never used resin so can't help you with specifics, but of all
> >> the app
> >> servers I've used I've never seen any such configuration
> >> possibilities.
> >> 
> >> Not sure what you mean about getting the server to compile the
> >> application.
> >> If you mean you compiled the app on the server machine this still
> >> does not
> >> eliminate the possibility that you are using a different 
> set of jars
> >> for
> >> compiling and another for running. Remember, app servers do not use
> >> your
> >> classpath for running.
> >> 
> >> I'd still look for library incompatibilities. For example, 
> if you are
> >> using
> >> Spindle under eclipse it comes packaged with its own version of the
> >> tapestry
> >> jars. If you've downloaded your own version of the tapesty 
> jars this
> >> could
> >> mean you are compiling with one set of jars but packaging and
> >> deploying with
> >> another. I've seen the same exception in the past that was 
> caused by
> >> the
> >> same problem (but using struts on Oracle 9ias).
> >> 
> >> Jonny
> >> 
> >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> >> 
> >>> Thanks, Jonny, thats definatly possible but I don't know 
> that it is
> >> the
> >>> problem because the server runs resin and I tryed uploading the
> >> app's source
> >>> only and having the server compile from scratch and I 
> still get the
> >> same
> >>> error. Could my server be configured such that the javaassist
> >> bytecode
> >>> generator is able to generate code but my classes are not able to
> >> access it
> >>> (as the following could imply)?
> >>> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >>> 
> >>> Does tapestry cache out these dynamically generate 
> classes anywhere
> >> or is it
> >>> all done in memory?
> >>> 
> >>> Thanks,
> >>> Kris
> >>> 
> >>> 
> >>> Jonny Wray wrote:
> >>> 
> >>> This looks to me like a versioning problem with libraries ie,
> >> you've
> >>> compiled against one version of a library and are running with
> >> another. This
> >>> error occurs when method is reflectively accessed (ie at runtime)
> >> but it
> >>> cannot be found.
> >>> 
> >>> I'd check the version of the various external libs you 
> are using on
> >> the
> >>> shared server, and also check there's not multiple version of the
> >> same
> >>> libraries around.
> >>> 
> >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> >>> 
> >>>> I found the following in the logs of my shared server, how could
> >> the setup of
> >>>> this server cause this IllegalAccessException?
> >>>> 
> >>>> Unable to process client request.
> >>>> 
> >>>> 
> >>>> Session id: null
> >>>> Client address: 4.10.129.226
> >>>> 
> >>>> Exceptions:
> >>>> 
> >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> >> expression
> >>>> '
> >>> ' of
> >>>> 
> >> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >>>> 
> >>>> ognl.OgnlException: templateTagBinding
> >>>> 
> >>>> java.lang.IllegalAccessException: Method [public
> >> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >> cannot
> >>>> be
> >>>> accessed.
> >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >>>> 
> >>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> Accessor.java:54>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> .java:122)
> >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >>>> ognl.Ognl.getValue(Ognl.java:335)
> >>>> ognl.Ognl.getValue(Ognl.java:310)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>>> 
> >> 
> > 
> org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> nent.java:520)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> ng(BaseComponen>>
> >
> >> t
> >>>> TemplateLoader.java:581)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> dings(BaseCompo>>
> >
> >> n
> >>>> entTemplateLoader.java:373)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:307)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:215)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>>> 
> >> 
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >>>> 
> >>> 
> >> 
> > 
> org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> eLoader.java:566>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>>> 
> >> 
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> ne.java:912)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> rvlet.java:238)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> t.java:199)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >>>> 
> >> 
> > 
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> Servlet.java:96>>
> >
> >> )
> >> 
> > === message truncated ===
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-user-help@jakarta.apache.org
> > 
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

RE: Error deploying tapestry on specific server. (more info)

Posted by Petter Måhlén <pe...@elevance.se>.
Hi,

I looked very quickly at the PageLink class and .jwc. As far as I can tell,
in rc1, there's no property called templateTagBinding in the .jwc, and no
methods defined in the class (I even tried a "grep -i templatetagbinding" in
all the .java and .jwc files). Are you using rc1 or beta4? If you're on
beta4, I'd try switching to rc1 just to see what happens.

/ Petter

> -----Original Message-----
> From: Kris Rasmussen [mailto:kristapestry@yahoo.com] 
> Sent: den 23 mars 2004 11:28
> To: Tapestry users
> Subject: Re: Error deploying tapestry on specific server. (more info)
> 
> 
> I can't shutdown the server since its shared. At this point I 
> am running out of time so I think I am going to have to 
> switch over to another host. I am in the process of setting 
> up my own servers but in the mean time I need a cheap place 
> to host my clients site. Anyone got any recommendations?
>  
> Thanks for all the ideas and trying to help.
>  
> Kris
> 
> Jonny Wray <jo...@yahoo.com> wrote:
> 
> 
> Kris,
> 
> I'd never assume that the web-inf/lib jars take priority. 
> That certainly
> wasn't the case for me in the past. I think it very much 
> depends on the
> class loading strategy of the app server. Still, if it's a basic
> installation of resin then looks like that's not the problem.
> 
> I don't know what else to suggest. I thought of the library 
> conflict as I'd
> seen this error before and that was the cause, although not 
> with tapestry.
> That fact coupled with the fact that your app works on one 
> instance of resin
> and not another suggested that to me.
> 
> I guess one thing I'd try - are you just hot loading the app 
> into the shared
> server or have you tried shutting down, deploying then 
> restarting. Maybe the
> app server is caching the classes. I'm grasping at straws 
> now, sorry I can't
> be of any more help.
> 
> Jonny
> 
> On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:
> 
> > I don't think it could be a library conflict because the 
> server only has the
> > basica jdk and resin libraries installed (so I am told) and 
> my lib directory
> > should take priority (or so I think).
> > 
> > The problem isn't with another library anyways, its with 
> any enhanced method,
> > specifically the getTemplateTagBinding() which may simply 
> be the first
> > enhanced method that is called. I read in the jboss forums that an
> > IllegalAccess exception can happen when two classes of the 
> same class are
> > loaded into memory so it might be possible that the 
> enhanced classes have been
> > loaded twice in memory. Do the classes that tapestry 
> enhances reside only in
> > memory or are they stored somewhere else?
> > 
> > Thanks again,
> > Kris
> > 
> > Jonny Wray wrote:
> > 
> > Kris,
> > 
> > Ah, I understand now - did't know resin could do this.
> > 
> > Have you checked the centralized lib directory for the whole
> > installation of resin to see if there's another version of any apps
> > around that conflict with your WEB-INF/lib versions?
> > 
> > That's about the only thing I can think of. I don't know 
> resin, but as
> > I said I've never heard of any configuration properties 
> that could do
> > this, but it must be a difference between the two versions 
> as you have
> > your code working on the other.
> > 
> > I maybe wrong but I thought the Illegal in 
> IllegalAccessException was
> > more on the lines of trying to access a private/protected method or
> > field by reflection, rather than a security (eg jaas) thing.
> > 
> > Jonny
> > 
> > --- Kris Rasmussen wrote:
> >> Thanks Jonny. By compiling the app on the server I was reffering to
> >> resin's ability to take a web app with no class files and 
> dynamically
> >> compile the java files while deploying it (or when the java files
> >> change). Basically I just uploaded the java files in place of the
> >> class files when deploying the app and resin compiled 
> everything for
> >> me. All my libraries are placed in the lib folder of the 
> app so resin
> >> should have used the same libraries to compile and to run.
> >> Furthermore, I've tested the app on my own resin server (different
> >> from the tomcat server I use to develop) and it worked perfectly.
> >> 
> >> Still, given all this, if you think there is still a way 
> for what you
> >> described to be happening, let me know because I can't think of
> >> anything else other than what I already mentioned below.
> >> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >> 
> >> It looks like the illegal access exception is a result of a binding
> >> that references a method getTemplateTagBinding() of an enhanced
> >> PageLink. I see that this method is inserted by tapestry to most
> >> components, but I don't understand why an access to it 
> would trigger
> >> an IllegalAccessException other than maybe the security settings on
> >> the shared server I am using some how prevent it?
> >> 
> >> Thanks again,
> >> Kris
> >> 
> >> Jonny Wray wrote:
> >> 
> >> Kris,
> >> 
> >> I've never used resin so can't help you with specifics, but of all
> >> the app
> >> servers I've used I've never seen any such configuration
> >> possibilities.
> >> 
> >> Not sure what you mean about getting the server to compile the
> >> application.
> >> If you mean you compiled the app on the server machine this still
> >> does not
> >> eliminate the possibility that you are using a different 
> set of jars
> >> for
> >> compiling and another for running. Remember, app servers do not use
> >> your
> >> classpath for running.
> >> 
> >> I'd still look for library incompatibilities. For example, 
> if you are
> >> using
> >> Spindle under eclipse it comes packaged with its own version of the
> >> tapestry
> >> jars. If you've downloaded your own version of the tapesty 
> jars this
> >> could
> >> mean you are compiling with one set of jars but packaging and
> >> deploying with
> >> another. I've seen the same exception in the past that was 
> caused by
> >> the
> >> same problem (but using struts on Oracle 9ias).
> >> 
> >> Jonny
> >> 
> >> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> >> 
> >>> Thanks, Jonny, thats definatly possible but I don't know 
> that it is
> >> the
> >>> problem because the server runs resin and I tryed uploading the
> >> app's source
> >>> only and having the server compile from scratch and I 
> still get the
> >> same
> >>> error. Could my server be configured such that the javaassist
> >> bytecode
> >>> generator is able to generate code but my classes are not able to
> >> access it
> >>> (as the following could imply)?
> >>> 
> >>> java.lang.IllegalAccessException: Method [public
> >>> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >>> cannot be
> >>>> accessed.
> >>> 
> >>> Does tapestry cache out these dynamically generate 
> classes anywhere
> >> or is it
> >>> all done in memory?
> >>> 
> >>> Thanks,
> >>> Kris
> >>> 
> >>> 
> >>> Jonny Wray wrote:
> >>> 
> >>> This looks to me like a versioning problem with libraries ie,
> >> you've
> >>> compiled against one version of a library and are running with
> >> another. This
> >>> error occurs when method is reflectively accessed (ie at runtime)
> >> but it
> >>> cannot be found.
> >>> 
> >>> I'd check the version of the various external libs you 
> are using on
> >> the
> >>> shared server, and also check there's not multiple version of the
> >> same
> >>> libraries around.
> >>> 
> >>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> >>> 
> >>>> I found the following in the logs of my shared server, how could
> >> the setup of
> >>>> this server cause this IllegalAccessException?
> >>>> 
> >>>> Unable to process client request.
> >>>> 
> >>>> 
> >>>> Session id: null
> >>>> Client address: 4.10.129.226
> >>>> 
> >>>> Exceptions:
> >>>> 
> >>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> >> expression
> >>>> '
> >>> ' of
> >>>> 
> >> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >>>> 
> >>>> ognl.OgnlException: templateTagBinding
> >>>> 
> >>>> java.lang.IllegalAccessException: Method [public
> >> org.apache.tapestry.IBinding
> >>>> 
> >> 
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> >> cannot
> >>>> be
> >>>> accessed.
> >>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >>>> 
> >>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectProperty
> Accessor.java:54>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> > 
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor
> .java:122)
> >>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >>>> ognl.Ognl.getValue(Ognl.java:335)
> >>>> ognl.Ognl.getValue(Ognl.java:310)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>>> 
> >> 
> > 
> org.apache.tapestry.AbstractComponent.getBinding(AbstractCompo
> nent.java:520)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addStaticBindi
> ng(BaseComponen>>
> >
> >> t
> >>>> TemplateLoader.java:581)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBin
> dings(BaseCompo>>
> >
> >> n
> >>>> entTemplateLoader.java:373)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:307)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseCo
> mponentTemplate>>
> >
> >> L
> >>>> oader.java:215)
> >>>> 
> >> 
> > 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>>> 
> >> 
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >>>> 
> >>> 
> >> 
> > 
> org.apache.tapestry.pageload.PageLoader.constructComponent(Pag
> eLoader.java:566>
> >
> >>> 
> >>> )
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>>> 
> >> 
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>>> 
> >> 
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>>> 
> >> 
> > 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> ne.java:912)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> rvlet.java:238)
> >>>> 
> >> 
> > 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> t.java:199)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >>>> 
> >> 
> > 
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChain
> Servlet.java:96>>
> >
> >> )
> >> 
> > === message truncated ===
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-user-help@jakarta.apache.org
> > 
> > Do you Yahoo!?
> > Yahoo! Finance Tax Center - File online. File on time.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
I can't shutdown the server since its shared. At this point I am running out of time so I think I am going to have to switch over to another host. I am in the process of setting up my own servers but in the mean time I need a cheap place to host my clients site. Anyone got any recommendations?
 
Thanks for all the ideas and trying to help.
 
Kris

Jonny Wray <jo...@yahoo.com> wrote:


Kris,

I'd never assume that the web-inf/lib jars take priority. That certainly
wasn't the case for me in the past. I think it very much depends on the
class loading strategy of the app server. Still, if it's a basic
installation of resin then looks like that's not the problem.

I don't know what else to suggest. I thought of the library conflict as I'd
seen this error before and that was the cause, although not with tapestry.
That fact coupled with the fact that your app works on one instance of resin
and not another suggested that to me.

I guess one thing I'd try - are you just hot loading the app into the shared
server or have you tried shutting down, deploying then restarting. Maybe the
app server is caching the classes. I'm grasping at straws now, sorry I can't
be of any more help.

Jonny

On 3/22/04 5:58 PM, "Kris Rasmussen" wrote:

> I don't think it could be a library conflict because the server only has the
> basica jdk and resin libraries installed (so I am told) and my lib directory
> should take priority (or so I think).
> 
> The problem isn't with another library anyways, its with any enhanced method,
> specifically the getTemplateTagBinding() which may simply be the first
> enhanced method that is called. I read in the jboss forums that an
> IllegalAccess exception can happen when two classes of the same class are
> loaded into memory so it might be possible that the enhanced classes have been
> loaded twice in memory. Do the classes that tapestry enhances reside only in
> memory or are they stored somewhere else?
> 
> Thanks again,
> Kris
> 
> Jonny Wray wrote:
> 
> Kris,
> 
> Ah, I understand now - did't know resin could do this.
> 
> Have you checked the centralized lib directory for the whole
> installation of resin to see if there's another version of any apps
> around that conflict with your WEB-INF/lib versions?
> 
> That's about the only thing I can think of. I don't know resin, but as
> I said I've never heard of any configuration properties that could do
> this, but it must be a difference between the two versions as you have
> your code working on the other.
> 
> I maybe wrong but I thought the Illegal in IllegalAccessException was
> more on the lines of trying to access a private/protected method or
> field by reflection, rather than a security (eg jaas) thing.
> 
> Jonny
> 
> --- Kris Rasmussen wrote:
>> Thanks Jonny. By compiling the app on the server I was reffering to
>> resin's ability to take a web app with no class files and dynamically
>> compile the java files while deploying it (or when the java files
>> change). Basically I just uploaded the java files in place of the
>> class files when deploying the app and resin compiled everything for
>> me. All my libraries are placed in the lib folder of the app so resin
>> should have used the same libraries to compile and to run.
>> Furthermore, I've tested the app on my own resin server (different
>> from the tomcat server I use to develop) and it worked perfectly.
>> 
>> Still, given all this, if you think there is still a way for what you
>> described to be happening, let me know because I can't think of
>> anything else other than what I already mentioned below.
>> 
>>> java.lang.IllegalAccessException: Method [public
>>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>>> cannot be
>>>> accessed.
>> 
>> It looks like the illegal access exception is a result of a binding
>> that references a method getTemplateTagBinding() of an enhanced
>> PageLink. I see that this method is inserted by tapestry to most
>> components, but I don't understand why an access to it would trigger
>> an IllegalAccessException other than maybe the security settings on
>> the shared server I am using some how prevent it?
>> 
>> Thanks again,
>> Kris
>> 
>> Jonny Wray wrote:
>> 
>> Kris,
>> 
>> I've never used resin so can't help you with specifics, but of all
>> the app
>> servers I've used I've never seen any such configuration
>> possibilities.
>> 
>> Not sure what you mean about getting the server to compile the
>> application.
>> If you mean you compiled the app on the server machine this still
>> does not
>> eliminate the possibility that you are using a different set of jars
>> for
>> compiling and another for running. Remember, app servers do not use
>> your
>> classpath for running.
>> 
>> I'd still look for library incompatibilities. For example, if you are
>> using
>> Spindle under eclipse it comes packaged with its own version of the
>> tapestry
>> jars. If you've downloaded your own version of the tapesty jars this
>> could
>> mean you are compiling with one set of jars but packaging and
>> deploying with
>> another. I've seen the same exception in the past that was caused by
>> the
>> same problem (but using struts on Oracle 9ias).
>> 
>> Jonny
>> 
>> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
>> 
>>> Thanks, Jonny, thats definatly possible but I don't know that it is
>> the
>>> problem because the server runs resin and I tryed uploading the
>> app's source
>>> only and having the server compile from scratch and I still get the
>> same
>>> error. Could my server be configured such that the javaassist
>> bytecode
>>> generator is able to generate code but my classes are not able to
>> access it
>>> (as the following could imply)?
>>> 
>>> java.lang.IllegalAccessException: Method [public
>>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>>> cannot be
>>>> accessed.
>>> 
>>> Does tapestry cache out these dynamically generate classes anywhere
>> or is it
>>> all done in memory?
>>> 
>>> Thanks,
>>> Kris
>>> 
>>> 
>>> Jonny Wray wrote:
>>> 
>>> This looks to me like a versioning problem with libraries ie,
>> you've
>>> compiled against one version of a library and are running with
>> another. This
>>> error occurs when method is reflectively accessed (ie at runtime)
>> but it
>>> cannot be found.
>>> 
>>> I'd check the version of the various external libs you are using on
>> the
>>> shared server, and also check there's not multiple version of the
>> same
>>> libraries around.
>>> 
>>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
>>> 
>>>> I found the following in the logs of my shared server, how could
>> the setup of
>>>> this server cause this IllegalAccessException?
>>>> 
>>>> Unable to process client request.
>>>> 
>>>> 
>>>> Session id: null
>>>> Client address: 4.10.129.226
>>>> 
>>>> Exceptions:
>>>> 
>>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
>> expression
>>>> '
>>> ' of
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
>>>> 
>>>> ognl.OgnlException: templateTagBinding
>>>> 
>>>> java.lang.IllegalAccessException: Method [public
>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>> cannot
>>>> be
>>>> accessed.
>>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
>>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
>>>> 
>>> 
>> 
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
>
>>> 
>>> )
>>>> 
>> 
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
>>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
>>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
>>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
>>>> ognl.Ognl.getValue(Ognl.java:335)
>>>> ognl.Ognl.getValue(Ognl.java:310)
>>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
>>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
>>>> 
>> 
> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
>
>> t
>>>> TemplateLoader.java:581)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
>
>> n
>>>> entTemplateLoader.java:373)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
>
>> L
>>>> oader.java:307)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
>
>> L
>>>> oader.java:215)
>>>> 
>> 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
>>>> 
>> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
>>>> 
>>> 
>> 
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
>
>>> 
>>> )
>>>> 
>> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>>>> 
>> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>>>> 
>> 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>>>> 
>> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
>>>> 
>> 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
>>>> 
>> 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>>>> 
>> 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>>>> 
>> 
> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
>
>> )
>> 
> === message truncated ===
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Jonny Wray <jo...@yahoo.com>.

Kris,

I'd never assume that the web-inf/lib jars take priority. That certainly
wasn't the case for me in the past. I think it very much depends on the
class loading strategy of the app server. Still, if it's a basic
installation of resin then looks like that's not the problem.

I don't know what else to suggest. I thought of the library conflict as I'd
seen this error before and that was the cause, although not with tapestry.
That fact coupled with the fact that your app works on one instance of resin
and not another suggested that to me.

I guess one thing I'd try - are you just hot loading the app into the shared
server or have you tried shutting down, deploying then restarting. Maybe the
app server is caching the classes. I'm grasping at straws now, sorry I can't
be of any more help.
 
Jonny

On 3/22/04 5:58 PM, "Kris Rasmussen" <kr...@yahoo.com> wrote:

> I don't think it could be a library conflict because the server only has the
> basica jdk and resin libraries installed (so I am told) and my lib directory
> should take priority (or so I think).
> 
> The problem isn't with another library anyways, its with any enhanced method,
> specifically the getTemplateTagBinding() which may simply be the first
> enhanced method that is called. I read in the jboss forums that an
> IllegalAccess exception can happen when two classes of the same class are
> loaded into memory so it might be possible that the enhanced classes have been
> loaded twice in memory. Do the classes that tapestry enhances reside only in
> memory or are they stored somewhere else?
> 
> Thanks again,
> Kris
> 
> Jonny Wray <jo...@yahoo.com> wrote:
> 
> Kris,
> 
> Ah, I understand now - did't know resin could do this.
> 
> Have you checked the centralized lib directory for the whole
> installation of resin to see if there's another version of any apps
> around that conflict with your WEB-INF/lib versions?
> 
> That's about the only thing I can think of. I don't know resin, but as
> I said I've never heard of any configuration properties that could do
> this, but it must be a difference between the two versions as you have
> your code working on the other.
> 
> I maybe wrong but I thought the Illegal in IllegalAccessException was
> more on the lines of trying to access a private/protected method or
> field by reflection, rather than a security (eg jaas) thing.
> 
> Jonny
> 
> --- Kris Rasmussen wrote:
>> Thanks Jonny. By compiling the app on the server I was reffering to
>> resin's ability to take a web app with no class files and dynamically
>> compile the java files while deploying it (or when the java files
>> change). Basically I just uploaded the java files in place of the
>> class files when deploying the app and resin compiled everything for
>> me. All my libraries are placed in the lib folder of the app so resin
>> should have used the same libraries to compile and to run.
>> Furthermore, I've tested the app on my own resin server (different
>> from the tomcat server I use to develop) and it worked perfectly.
>> 
>> Still, given all this, if you think there is still a way for what you
>> described to be happening, let me know because I can't think of
>> anything else other than what I already mentioned below.
>> 
>>> java.lang.IllegalAccessException: Method [public
>>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>>> cannot be
>>>> accessed.
>> 
>> It looks like the illegal access exception is a result of a binding
>> that references a method getTemplateTagBinding() of an enhanced
>> PageLink. I see that this method is inserted by tapestry to most
>> components, but I don't understand why an access to it would trigger
>> an IllegalAccessException other than maybe the security settings on
>> the shared server I am using some how prevent it?
>> 
>> Thanks again,
>> Kris
>> 
>> Jonny Wray wrote:
>> 
>> Kris,
>> 
>> I've never used resin so can't help you with specifics, but of all
>> the app
>> servers I've used I've never seen any such configuration
>> possibilities.
>> 
>> Not sure what you mean about getting the server to compile the
>> application.
>> If you mean you compiled the app on the server machine this still
>> does not
>> eliminate the possibility that you are using a different set of jars
>> for
>> compiling and another for running. Remember, app servers do not use
>> your
>> classpath for running.
>> 
>> I'd still look for library incompatibilities. For example, if you are
>> using
>> Spindle under eclipse it comes packaged with its own version of the
>> tapestry
>> jars. If you've downloaded your own version of the tapesty jars this
>> could
>> mean you are compiling with one set of jars but packaging and
>> deploying with
>> another. I've seen the same exception in the past that was caused by
>> the
>> same problem (but using struts on Oracle 9ias).
>> 
>> Jonny
>> 
>> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
>> 
>>> Thanks, Jonny, thats definatly possible but I don't know that it is
>> the
>>> problem because the server runs resin and I tryed uploading the
>> app's source
>>> only and having the server compile from scratch and I still get the
>> same
>>> error. Could my server be configured such that the javaassist
>> bytecode
>>> generator is able to generate code but my classes are not able to
>> access it
>>> (as the following could imply)?
>>> 
>>> java.lang.IllegalAccessException: Method [public
>>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>>> cannot be
>>>> accessed.
>>> 
>>> Does tapestry cache out these dynamically generate classes anywhere
>> or is it
>>> all done in memory?
>>> 
>>> Thanks,
>>> Kris
>>> 
>>> 
>>> Jonny Wray wrote:
>>> 
>>> This looks to me like a versioning problem with libraries ie,
>> you've
>>> compiled against one version of a library and are running with
>> another. This
>>> error occurs when method is reflectively accessed (ie at runtime)
>> but it
>>> cannot be found.
>>> 
>>> I'd check the version of the various external libs you are using on
>> the
>>> shared server, and also check there's not multiple version of the
>> same
>>> libraries around.
>>> 
>>> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
>>> 
>>>> I found the following in the logs of my shared server, how could
>> the setup of
>>>> this server cause this IllegalAccessException?
>>>> 
>>>> Unable to process client request.
>>>> 
>>>> 
>>>> Session id: null
>>>> Client address: 4.10.129.226
>>>> 
>>>> Exceptions:
>>>> 
>>>> org.apache.tapestry.ApplicationRuntimeException: Unable to read
>> expression
>>>> '
>>> ' of
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
>>>> 
>>>> ognl.OgnlException: templateTagBinding
>>>> 
>>>> java.lang.IllegalAccessException: Method [public
>> org.apache.tapestry.IBinding
>>>> 
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
>> cannot
>>>> be
>>>> accessed.
>>>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
>>>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
>>>> 
>>> 
>> 
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
>
>>> 
>>> )
>>>> 
>> 
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
>>>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
>>>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
>>>> ognl.SimpleNode.getValue(SimpleNode.java:192)
>>>> ognl.Ognl.getValue(Ognl.java:335)
>>>> ognl.Ognl.getValue(Ognl.java:310)
>>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
>>>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
>>>> 
>> 
> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
>
>> t
>>>> TemplateLoader.java:581)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
>
>> n
>>>> entTemplateLoader.java:373)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
>
>> L
>>>> oader.java:307)
>>>> 
>> 
> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
>
>> L
>>>> oader.java:215)
>>>> 
>> 
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
>>>> 
>> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
>>>> 
>>> 
>> 
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
>
>>> 
>>> )
>>>> 
>> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>>>> 
>> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>>>> 
>> 
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>>>> 
>> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
>>>> 
>> 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
>>>> 
>> 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>>>> 
>> 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>>>> 
>> 
> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
>
>> )
>> 
> === message truncated ===
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
I don't think it could be a library conflict because the server only has the basica jdk and resin libraries installed (so I am told) and my lib directory should take priority (or so I think). 
 
The problem isn't with another library anyways, its with any enhanced method, specifically the getTemplateTagBinding() which may simply be the first enhanced method that is called. I read in the jboss forums that an IllegalAccess exception can happen when two classes of the same class are loaded into memory so it might be possible that the enhanced classes have been loaded twice in memory. Do the classes that tapestry enhances reside only in memory or are they stored somewhere else?
 
Thanks again,
Kris

Jonny Wray <jo...@yahoo.com> wrote:

Kris,

Ah, I understand now - did't know resin could do this. 

Have you checked the centralized lib directory for the whole
installation of resin to see if there's another version of any apps
around that conflict with your WEB-INF/lib versions? 

That's about the only thing I can think of. I don't know resin, but as
I said I've never heard of any configuration properties that could do
this, but it must be a difference between the two versions as you have
your code working on the other.

I maybe wrong but I thought the Illegal in IllegalAccessException was
more on the lines of trying to access a private/protected method or
field by reflection, rather than a security (eg jaas) thing.

Jonny

--- Kris Rasmussen wrote:
> Thanks Jonny. By compiling the app on the server I was reffering to
> resin's ability to take a web app with no class files and dynamically
> compile the java files while deploying it (or when the java files
> change). Basically I just uploaded the java files in place of the
> class files when deploying the app and resin compiled everything for
> me. All my libraries are placed in the lib folder of the app so resin
> should have used the same libraries to compile and to run.
> Furthermore, I've tested the app on my own resin server (different
> from the tomcat server I use to develop) and it worked perfectly.
> 
> Still, given all this, if you think there is still a way for what you
> described to be happening, let me know because I can't think of
> anything else other than what I already mentioned below.
> 
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> 
> It looks like the illegal access exception is a result of a binding
> that references a method getTemplateTagBinding() of an enhanced
> PageLink. I see that this method is inserted by tapestry to most
> components, but I don't understand why an access to it would trigger
> an IllegalAccessException other than maybe the security settings on
> the shared server I am using some how prevent it?
> 
> Thanks again,
> Kris
> 
> Jonny Wray wrote:
> 
> Kris,
> 
> I've never used resin so can't help you with specifics, but of all
> the app
> servers I've used I've never seen any such configuration
> possibilities.
> 
> Not sure what you mean about getting the server to compile the
> application.
> If you mean you compiled the app on the server machine this still
> does not
> eliminate the possibility that you are using a different set of jars
> for
> compiling and another for running. Remember, app servers do not use
> your
> classpath for running.
> 
> I'd still look for library incompatibilities. For example, if you are
> using
> Spindle under eclipse it comes packaged with its own version of the
> tapestry
> jars. If you've downloaded your own version of the tapesty jars this
> could
> mean you are compiling with one set of jars but packaging and
> deploying with
> another. I've seen the same exception in the past that was caused by
> the
> same problem (but using struts on Oracle 9ias).
> 
> Jonny
> 
> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> 
> > Thanks, Jonny, thats definatly possible but I don't know that it is
> the
> > problem because the server runs resin and I tryed uploading the
> app's source
> > only and having the server compile from scratch and I still get the
> same
> > error. Could my server be configured such that the javaassist
> bytecode
> > generator is able to generate code but my classes are not able to
> access it
> > (as the following could imply)?
> > 
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> > 
> > Does tapestry cache out these dynamically generate classes anywhere
> or is it
> > all done in memory?
> > 
> > Thanks,
> > Kris
> > 
> > 
> > Jonny Wray wrote:
> > 
> > This looks to me like a versioning problem with libraries ie,
> you've
> > compiled against one version of a library and are running with
> another. This
> > error occurs when method is reflectively accessed (ie at runtime)
> but it
> > cannot be found.
> > 
> > I'd check the version of the various external libs you are using on
> the
> > shared server, and also check there's not multiple version of the
> same
> > libraries around.
> > 
> > On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > 
> >> I found the following in the logs of my shared server, how could
> the setup of
> >> this server cause this IllegalAccessException?
> >> 
> >> Unable to process client request.
> >> 
> >> 
> >> Session id: null
> >> Client address: 4.10.129.226
> >> 
> >> Exceptions:
> >> 
> >> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> expression
> >> '
> > ' of
> >>
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >> 
> >> ognl.OgnlException: templateTagBinding
> >> 
> >> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot
> >> be
> >> accessed.
> >> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >> 
> > 
>
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
> >
> > )
> >>
>
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> >> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >> ognl.Ognl.getValue(Ognl.java:335)
> >> ognl.Ognl.getValue(Ognl.java:310)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>
>
org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
> t
> >> TemplateLoader.java:581)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
> n
> >> entTemplateLoader.java:373)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:307)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:215)
> >>
>
org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >> 
> > 
>
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
> >
> > )
> >>
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>
>
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>
>
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> >>
>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> >>
>
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >> 
>
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
> )
> 
=== message truncated ===


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Jonny Wray <jo...@yahoo.com>.
Kris,

Ah, I understand now - did't know resin could do this. 

Have you checked the centralized lib directory for the whole
installation of resin to see if there's another version of any apps
around that conflict with your WEB-INF/lib versions? 

That's about the only thing I can think of. I don't know resin, but as
I said I've never heard of any configuration properties that could do
this, but it must be a difference between the two versions as you have
your code working on the other.

I maybe wrong but I thought the Illegal in IllegalAccessException was
more on the lines of trying to access a private/protected method or
field by reflection, rather than a security (eg jaas) thing.

Jonny

--- Kris Rasmussen <kr...@yahoo.com> wrote:
> Thanks Jonny. By compiling the app on the server I was reffering to
> resin's ability to take a web app with no class files and dynamically
> compile the java files while deploying it (or when the java files
> change). Basically I just uploaded the java files in place of the
> class files when deploying the app and resin compiled everything for
> me. All my libraries are placed in the lib folder of the app so resin
> should have used the same libraries to compile and to run.
> Furthermore, I've tested the app on my own resin server (different
> from the tomcat server I use to develop) and it worked perfectly.
>  
> Still, given all this, if you think there is still a way for what you
> described to be happening, let me know because I can't think of
> anything else other than what I already mentioned below.
>  
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
>  
> It looks like the illegal access exception is a result of a binding
> that references a method getTemplateTagBinding() of an enhanced
> PageLink. I see that this method is inserted by tapestry to most
> components, but I don't understand why an access to it would trigger
> an IllegalAccessException other than maybe the security settings on
> the shared server I am using some how prevent it?
>  
> Thanks again,
> Kris
> 
> Jonny Wray <jo...@yahoo.com> wrote:
> 
> Kris,
> 
> I've never used resin so can't help you with specifics, but of all
> the app
> servers I've used I've never seen any such configuration
> possibilities.
> 
> Not sure what you mean about getting the server to compile the
> application.
> If you mean you compiled the app on the server machine this still
> does not
> eliminate the possibility that you are using a different set of jars
> for
> compiling and another for running. Remember, app servers do not use
> your
> classpath for running.
> 
> I'd still look for library incompatibilities. For example, if you are
> using
> Spindle under eclipse it comes packaged with its own version of the
> tapestry
> jars. If you've downloaded your own version of the tapesty jars this
> could
> mean you are compiling with one set of jars but packaging and
> deploying with
> another. I've seen the same exception in the past that was caused by
> the
> same problem (but using struts on Oracle 9ias).
> 
> Jonny
> 
> On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:
> 
> > Thanks, Jonny, thats definatly possible but I don't know that it is
> the
> > problem because the server runs resin and I tryed uploading the
> app's source
> > only and having the server compile from scratch and I still get the
> same
> > error. Could my server be configured such that the javaassist
> bytecode
> > generator is able to generate code but my classes are not able to
> access it
> > (as the following could imply)?
> > 
> > java.lang.IllegalAccessException: Method [public
> > org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> > cannot be
> >> accessed.
> > 
> > Does tapestry cache out these dynamically generate classes anywhere
> or is it
> > all done in memory?
> > 
> > Thanks,
> > Kris
> > 
> > 
> > Jonny Wray wrote:
> > 
> > This looks to me like a versioning problem with libraries ie,
> you've
> > compiled against one version of a library and are running with
> another. This
> > error occurs when method is reflectively accessed (ie at runtime)
> but it
> > cannot be found.
> > 
> > I'd check the version of the various external libs you are using on
> the
> > shared server, and also check there's not multiple version of the
> same
> > libraries around.
> > 
> > On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> > 
> >> I found the following in the logs of my shared server, how could
> the setup of
> >> this server cause this IllegalAccessException?
> >> 
> >> Unable to process client request.
> >> 
> >> 
> >> Session id: null
> >> Client address: 4.10.129.226
> >> 
> >> Exceptions:
> >> 
> >> org.apache.tapestry.ApplicationRuntimeException: Unable to read
> expression
> >> '
> > ' of
> >>
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> >> 
> >> ognl.OgnlException: templateTagBinding
> >> 
> >> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
> >>
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot
> >> be
> >> accessed.
> >> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> >> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> >> 
> > 
>
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
> >
> > )
> >>
>
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> >> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> >> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> >> ognl.SimpleNode.getValue(SimpleNode.java:192)
> >> ognl.Ognl.getValue(Ognl.java:335)
> >> ognl.Ognl.getValue(Ognl.java:310)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> >> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> >>
>
org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
> t
> >> TemplateLoader.java:581)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
> n
> >> entTemplateLoader.java:373)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:307)
> >> 
>
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
> L
> >> oader.java:215)
> >>
>
org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> >>
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> >> 
> > 
>
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
> >
> > )
> >>
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> >>
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> >>
>
org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> >>
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> >>
>
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> >>
>
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> >>
>
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> >> 
>
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
> )
> 
=== message truncated ===


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
Thanks Jonny. By compiling the app on the server I was reffering to resin's ability to take a web app with no class files and dynamically compile the java files while deploying it (or when the java files change). Basically I just uploaded the java files in place of the class files when deploying the app and resin compiled everything for me. All my libraries are placed in the lib folder of the app so resin should have used the same libraries to compile and to run. Furthermore, I've tested the app on my own resin server (different from the tomcat server I use to develop) and it worked perfectly.
 
Still, given all this, if you think there is still a way for what you described to be happening, let me know because I can't think of anything else other than what I already mentioned below.
 
> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot be
>> accessed.
 
It looks like the illegal access exception is a result of a binding that references a method getTemplateTagBinding() of an enhanced PageLink. I see that this method is inserted by tapestry to most components, but I don't understand why an access to it would trigger an IllegalAccessException other than maybe the security settings on the shared server I am using some how prevent it?
 
Thanks again,
Kris

Jonny Wray <jo...@yahoo.com> wrote:

Kris,

I've never used resin so can't help you with specifics, but of all the app
servers I've used I've never seen any such configuration possibilities.

Not sure what you mean about getting the server to compile the application.
If you mean you compiled the app on the server machine this still does not
eliminate the possibility that you are using a different set of jars for
compiling and another for running. Remember, app servers do not use your
classpath for running.

I'd still look for library incompatibilities. For example, if you are using
Spindle under eclipse it comes packaged with its own version of the tapestry
jars. If you've downloaded your own version of the tapesty jars this could
mean you are compiling with one set of jars but packaging and deploying with
another. I've seen the same exception in the past that was caused by the
same problem (but using struts on Oracle 9ias).

Jonny

On 3/21/04 5:56 PM, "Kris Rasmussen" wrote:

> Thanks, Jonny, thats definatly possible but I don't know that it is the
> problem because the server runs resin and I tryed uploading the app's source
> only and having the server compile from scratch and I still get the same
> error. Could my server be configured such that the javaassist bytecode
> generator is able to generate code but my classes are not able to access it
> (as the following could imply)?
> 
> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot be
>> accessed.
> 
> Does tapestry cache out these dynamically generate classes anywhere or is it
> all done in memory?
> 
> Thanks,
> Kris
> 
> 
> Jonny Wray wrote:
> 
> This looks to me like a versioning problem with libraries ie, you've
> compiled against one version of a library and are running with another. This
> error occurs when method is reflectively accessed (ie at runtime) but it
> cannot be found.
> 
> I'd check the version of the various external libs you are using on the
> shared server, and also check there's not multiple version of the same
> libraries around.
> 
> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> 
>> I found the following in the logs of my shared server, how could the setup of
>> this server cause this IllegalAccessException?
>> 
>> Unable to process client request.
>> 
>> 
>> Session id: null
>> Client address: 4.10.129.226
>> 
>> Exceptions:
>> 
>> org.apache.tapestry.ApplicationRuntimeException: Unable to read expression
>> '
> ' of
>> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
>> 
>> ognl.OgnlException: templateTagBinding
>> 
>> java.lang.IllegalAccessException: Method [public org.apache.tapestry.IBinding
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] cannot
>> be
>> accessed.
>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
>> 
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
>
> )
>> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
>> ognl.SimpleNode.getValue(SimpleNode.java:192)
>> ognl.Ognl.getValue(Ognl.java:335)
>> ognl.Ognl.getValue(Ognl.java:310)
>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
>> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
t
>> TemplateLoader.java:581)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
n
>> entTemplateLoader.java:373)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
L
>> oader.java:307)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
L
>> oader.java:215)
>> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
>> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
>> 
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
>
> )
>> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
>> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
>> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
)
>> com.caucho.server.http.Invocation.service(Invocation.java:315)
>> com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
>> com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
>> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
>> com.caucho.server.TcpConnection.run(TcpConnection.java:139)
>> java.lang.Thread.run(Thread.java:534)
>> 
>> 
>> Kris Rasmussen wrote:
>> Sorry guys, I hate to bother you with my own debugging, but the following
>> error is driving me nuts since I do not have much access to the server I am
>> deploying it on. Basically my web apps works perfect with every version of
>> tomcat/resin I have tryed it on with my windows and linux boxes, but when I
>> got to deploy it on a shared server, I get the following error. A very simple
>> test app I wrote that just displays hello works, but my app throws the
>> following error. Anyone have any idea what it means so I can figure out what
>> to look into.
>> 
>> Thanks a bunch.
>> 
>> org.apache.tapestry.ApplicationRuntimeException: Unable to update expression
>> '
>> ' of 
>> 
org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/re>>
s
>> tart] 
>> to ExpressionBinding[framework:Exception
>> @org.apache.tapestry.Tapestry@RESTART_SERVICE].
>> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146)
>> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125)
>> at 
>> org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678)
>> at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401)
>> at 
>> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:54>>
5
>> ) 
>> at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>> at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>> at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>> at 
>> 
org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngin>>
e
>> .java:495) 
>> at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954)
>> at 
>> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>> at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>> at 
>> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
)
>> at com.caucho.server.http.Invocation.service(Invocation.java:315)
>> at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
>> at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
>> at 
>> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
>> at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
>> at java.lang.Thread.run(Thread.java:534)
>> 
>> Do you Yahoo!?
>> Yahoo! Finance Tax Center - File online. File on time.
>> Do you Yahoo!?
>> Yahoo! Finance Tax Center - File online. File on time.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Jonny Wray <jo...@yahoo.com>.
Kris,

I've never used resin so can't help you with specifics, but of all the app
servers I've used I've never seen any such configuration possibilities.

Not sure what you mean about getting the server to compile the application.
If you mean you compiled the app on the server machine this still does not
eliminate the possibility that you are using a different set of jars for
compiling and another for running. Remember, app servers do not use your
classpath for running.

I'd still look for library incompatibilities. For example, if you are using
Spindle under eclipse it comes packaged with its own version of the tapestry
jars. If you've downloaded your own version of the tapesty jars this could
mean you are compiling with one set of jars but packaging and deploying with
another. I've seen the same exception in the past that was caused by the
same problem (but using struts on Oracle 9ias).

Jonny

On 3/21/04 5:56 PM, "Kris Rasmussen" <kr...@yahoo.com> wrote:

> Thanks, Jonny, thats definatly possible but I don't know that it is the
> problem because the server runs resin and I tryed uploading the app's source
> only and having the server compile from scratch and I still get the same
> error. Could my server be configured such that the javaassist bytecode
> generator is able to generate code but my classes are not able to access it
> (as the following could imply)?
> 
> java.lang.IllegalAccessException: Method [public
> org.apache.tapestry.IBinding
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()]
> cannot be
>> accessed.
> 
> Does tapestry cache out these dynamically generate classes anywhere or is it
> all done in memory?
> 
> Thanks,
> Kris
> 
> 
> Jonny Wray <jo...@yahoo.com> wrote:
> 
> This looks to me like a versioning problem with libraries ie, you've
> compiled against one version of a library and are running with another. This
> error occurs when method is reflectively accessed (ie at runtime) but it
> cannot be found.
> 
> I'd check the version of the various external libs you are using on the
> shared server, and also check there's not multiple version of the same
> libraries around.
> 
> On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:
> 
>> I found the following in the logs of my shared server, how could the setup of
>> this server cause this IllegalAccessException?
>> 
>> Unable to process client request.
>> 
>> 
>> Session id: null
>> Client address: 4.10.129.226
>> 
>> Exceptions:
>> 
>> org.apache.tapestry.ApplicationRuntimeException: Unable to read expression
>> '
> ' of
>> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
>> 
>> ognl.OgnlException: templateTagBinding
>> 
>> java.lang.IllegalAccessException: Method [public org.apache.tapestry.IBinding
>> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] cannot
>> be
>> accessed.
>> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
>> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
>> 
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
>
> )
>> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
>> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
>> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
>> ognl.SimpleNode.getValue(SimpleNode.java:192)
>> ognl.Ognl.getValue(Ognl.java:335)
>> ognl.Ognl.getValue(Ognl.java:310)
>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
>> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
>> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponen>>
t
>> TemplateLoader.java:581)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompo>>
n
>> entTemplateLoader.java:373)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
L
>> oader.java:307)
>> 
org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplate>>
L
>> oader.java:215)
>> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
>> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
>> 
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
>
> )
>> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
>> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
>> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
)
>> com.caucho.server.http.Invocation.service(Invocation.java:315)
>> com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
>> com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
>> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
>> com.caucho.server.TcpConnection.run(TcpConnection.java:139)
>> java.lang.Thread.run(Thread.java:534)
>> 
>> 
>> Kris Rasmussen wrote:
>> Sorry guys, I hate to bother you with my own debugging, but the following
>> error is driving me nuts since I do not have much access to the server I am
>> deploying it on. Basically my web apps works perfect with every version of
>> tomcat/resin I have tryed it on with my windows and linux boxes, but when I
>> got to deploy it on a shared server, I get the following error. A very simple
>> test app I wrote that just displays hello works, but my app throws the
>> following error. Anyone have any idea what it means so I can figure out what
>> to look into.
>> 
>> Thanks a bunch.
>> 
>> org.apache.tapestry.ApplicationRuntimeException: Unable to update expression
>> '
>> ' of 
>> 
org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/re>>
s
>> tart] 
>> to ExpressionBinding[framework:Exception
>> @org.apache.tapestry.Tapestry@RESTART_SERVICE].
>> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146)
>> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125)
>> at 
>> org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678)
>> at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401)
>> at 
>> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:54>>
5
>> ) 
>> at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
>> at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
>> at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
>> at 
>> 
org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngin>>
e
>> .java:495) 
>> at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954)
>> at 
>> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>> at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
>> at 
>> 
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96>>
)
>> at com.caucho.server.http.Invocation.service(Invocation.java:315)
>> at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
>> at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
>> at 
>> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
>> at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
>> at java.lang.Thread.run(Thread.java:534)
>> 
>> Do you Yahoo!?
>> Yahoo! Finance Tax Center - File online. File on time.
>> Do you Yahoo!?
>> Yahoo! Finance Tax Center - File online. File on time.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Error deploying tapestry on specific server. (more info)

Posted by Kris Rasmussen <kr...@yahoo.com>.
Thanks, Jonny, thats definatly possible but I don't know that it is the problem because the server runs resin and I tryed uploading the app's source only and having the server compile from scratch and I still get the same error. Could my server be configured such that the javaassist bytecode generator is able to generate code but my classes are not able to access it (as the following could imply)?
 
 java.lang.IllegalAccessException: Method [public 
org.apache.tapestry.IBinding
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] 
cannot be
> accessed.
 
Does tapestry cache out these dynamically generate classes anywhere or is it all done in memory?
 
Thanks,
Kris


Jonny Wray <jo...@yahoo.com> wrote:

This looks to me like a versioning problem with libraries ie, you've
compiled against one version of a library and are running with another. This
error occurs when method is reflectively accessed (ie at runtime) but it
cannot be found.

I'd check the version of the various external libs you are using on the
shared server, and also check there's not multiple version of the same
libraries around. 

On 3/21/04 2:22 PM, "Kris Rasmussen" wrote:

> I found the following in the logs of my shared server, how could the setup of
> this server cause this IllegalAccessException?
> 
> Unable to process client request.
> 
> 
> Session id: null
> Client address: 4.10.129.226
> 
> Exceptions:
> 
> org.apache.tapestry.ApplicationRuntimeException: Unable to read expression
> '
' of
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> 
> ognl.OgnlException: templateTagBinding
> 
> java.lang.IllegalAccessException: Method [public org.apache.tapestry.IBinding
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] cannot be
> accessed.
> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
)
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> ognl.SimpleNode.getValue(SimpleNode.java:192)
> ognl.Ognl.getValue(Ognl.java:335)
> ognl.Ognl.getValue(Ognl.java:310)
> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponent
> TemplateLoader.java:581)
> org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompon
> entTemplateLoader.java:373)
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateL
> oader.java:307)
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateL
> oader.java:215)
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
)
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
> com.caucho.server.http.Invocation.service(Invocation.java:315)
> com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
> com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> java.lang.Thread.run(Thread.java:534)
> 
> 
> Kris Rasmussen wrote:
> Sorry guys, I hate to bother you with my own debugging, but the following
> error is driving me nuts since I do not have much access to the server I am
> deploying it on. Basically my web apps works perfect with every version of
> tomcat/resin I have tryed it on with my windows and linux boxes, but when I
> got to deploy it on a shared server, I get the following error. A very simple
> test app I wrote that just displays hello works, but my app throws the
> following error. Anyone have any idea what it means so I can figure out what
> to look into.
> 
> Thanks a bunch.
> 
> org.apache.tapestry.ApplicationRuntimeException: Unable to update expression
> '
> ' of 
> org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/res
> tart] 
> to ExpressionBinding[framework:Exception
> @org.apache.tapestry.Tapestry@RESTART_SERVICE].
> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146)
> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125)
> at 
> org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678)
> at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401)
> at 
> org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:545
> ) 
> at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> at 
> org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngine
> .java:495) 
> at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954)
> at 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> at 
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
> at com.caucho.server.http.Invocation.service(Invocation.java:315)
> at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> at 
> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
> at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> at java.lang.Thread.run(Thread.java:534)
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.

Re: Error deploying tapestry on specific server. (more info)

Posted by Jonny Wray <jo...@yahoo.com>.
This looks to me like a versioning problem with libraries ie, you've
compiled against one version of a library and are running with another. This
error occurs when  method is reflectively accessed (ie at runtime) but it
cannot be found.

I'd check the version of the various external libs you are using on the
shared server, and also check there's not multiple version of the same
libraries around. 

On 3/21/04 2:22 PM, "Kris Rasmussen" <kr...@yahoo.com> wrote:

> I found the following in the logs of my shared server, how could the setup of
> this server cause this IllegalAccessException?
> 
> Unable to process client request.
> 
> 
>     Session id: null
> Client address: 4.10.129.226
> 
> Exceptions:
> 
> org.apache.tapestry.ApplicationRuntimeException: Unable to read expression
> '<parsed expression>' of
> org.apache.tapestry.link.PageLink$Enhance_0@aa42a2[Home/$PageLink].
> 
> ognl.OgnlException: templateTagBinding
> 
> java.lang.IllegalAccessException: Method [public org.apache.tapestry.IBinding
> org.apache.tapestry.link.PageLink$Enhance_0.getTemplateTagBinding()] cannot be
> accessed.
> ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:312)
> ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:728)
> 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54>
)
> ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
> ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1443)
> ognl.ASTProperty.getValueBody(ASTProperty.java:96)
> ognl.SimpleNode.getValue(SimpleNode.java:192)
> ognl.Ognl.getValue(Ognl.java:335)
> ognl.Ognl.getValue(Ognl.java:310)
> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:174)
> org.apache.tapestry.util.prop.OgnlUtils.get(OgnlUtils.java:199)
> org.apache.tapestry.AbstractComponent.getBinding(AbstractComponent.java:520)
> org.apache.tapestry.BaseComponentTemplateLoader.addStaticBinding(BaseComponent
> TemplateLoader.java:581)
> org.apache.tapestry.BaseComponentTemplateLoader.addTemplateBindings(BaseCompon
> entTemplateLoader.java:373)
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateL
> oader.java:307)
> org.apache.tapestry.BaseComponentTemplateLoader.process(BaseComponentTemplateL
> oader.java:215)
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:141)
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:176)
> 
org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:566>
)
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> org.apache.tapestry.engine.HomeService.service(HomeService.java:100)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:912)
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
> com.caucho.server.http.Invocation.service(Invocation.java:315)
> com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
> com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> java.lang.Thread.run(Thread.java:534)
> 
> 
> Kris Rasmussen <kr...@yahoo.com> wrote:
> Sorry guys, I hate to bother you with my own debugging, but the following
> error is driving me nuts since I do not have much access to the server I am
> deploying it on. Basically my web apps works perfect with every version of
> tomcat/resin I have tryed it on with my windows and linux boxes, but when I
> got to deploy it on a shared server, I get the following error. A very simple
> test app I wrote that just displays hello works, but my app throws the
> following error. Anyone have any idea what it means so I can figure out what
> to look into.
> 
> Thanks a bunch.
> 
> org.apache.tapestry.ApplicationRuntimeException: Unable to update expression
> '
> ' of 
> org.apache.tapestry.link.ServiceLink$Enhance_1@18a6d76[framework:Exception/res
> tart] 
> to ExpressionBinding[framework:Exception
> @org.apache.tapestry.Tapestry@RESTART_SERVICE].
> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:146)
> at org.apache.tapestry.util.prop.OgnlUtils.set(OgnlUtils.java:125)
> at 
> org.apache.tapestry.AbstractComponent.setBinding(AbstractComponent.java:678)
> at org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:401)
> at 
> org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:545
> ) 
> at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:806)
> at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:194)
> at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:236)
> at 
> org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngine
> .java:495) 
> at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:954)
> at 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
> at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
> at 
> com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
> at com.caucho.server.http.Invocation.service(Invocation.java:315)
> at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
> at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
> at 
> com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
> at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
> at java.lang.Thread.run(Thread.java:534)
> 
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org