The exception relates to Java 6 in conjunction with javassist, the library used 
for runtime class transformation. You can get it to work with a few 
workarounds, see this old thread:
http://markmail.org/message/dyvvplkjkbedzopw

Cheers,
Peter 

-- 
If you are not an intended recipient of this e-mail, please notify the sender, 
delete it and do not read, act upon, print, disclose, copy, retain or 
redistribute it. Please visit http://www.albourne.com/email.html for important 
additional terms relating to this e-mail.

----- Original Message -----
From: "buckofive" <klecko...@yahoo.com>
To: users@tapestry.apache.org
Sent: Tuesday, 30 December, 2008 8:43:41 AM GMT +02:00 Athens, Beirut, 
Bucharest, Istanbul
Subject: T5: Exception creating a pageLink in Tomcat but not in Jetty


Hi All,

I've been racking my brain all day on this one so I probally have tunnel
vision but I am getting a weird exception when trying to create a pageLink
on tomcat 5.5, jdk 1.6.06.  Maybe someone has come across this already. I'm
really not sure if this is a tomcat issue, a tapestry issue or my issue. 
I've tried stepping through the tapestry code but didn't find anything
obvious.  This code works fine using Jetty and jdk 1.6.06.  Thanks in
advance for any help or guidance.

So sorry to spam this huge exception but heres what I know:

This is the call:  
   Link link = resources.createPageLink(AttachMenuItemMedia.class, true,
menuItem.getId());

which results in tapestry reporting this as the top level exception:

org.apache.tapestry5.ioc.internal.util.TapestryException
Could not convert 'blockRender' into a component parameter binding:
java.lang.NoClassDefFoundError:
com/roialte/presentation/components/AttachFiles

java.lang.ClassNotFoundException
caught an exception while obtaining a class file for
com.roialte.presentation.components.AttachFiles

exception
    org.apache.tapestry5.internal.services.TransformationException: 3

# org.apache.tapestry5.internal.services.TransformationException
3




I suspect the above is not really the cause since the classes are there and
the lowest exception on the stack shows this:





# java.lang.ArrayIndexOutOfBoundsException
3

Stack trace

        * javassist.bytecode.ByteArray.write16bit(ByteArray.java:40)
        *
javassist.bytecode.StackMapTable$Shifter.update(StackMapTable.java:744)
        *
javassist.bytecode.StackMapTable$Shifter.sameFrame(StackMapTable.java:720)
        *
javassist.bytecode.StackMapTable$Walker.stackMapFrames(StackMapTable.java:194)
        *
javassist.bytecode.StackMapTable$Walker.parse(StackMapTable.java:179)
        *
javassist.bytecode.StackMapTable$Shifter.doit(StackMapTable.java:714)
        * javassist.bytecode.StackMapTable.shiftPc(StackMapTable.java:693)
        * javassist.bytecode.CodeIterator.insertGap0(CodeIterator.java:676)
        * javassist.bytecode.CodeIterator.insertGap(CodeIterator.java:636)
        *
javassist.bytecode.CodeIterator.insertGapCore(CodeIterator.java:467)
        * javassist.bytecode.CodeIterator.insertGap(CodeIterator.java:413)
        * javassist.expr.Expr.replace0(Expr.java:298)
        * javassist.expr.FieldAccess.replace(FieldAccess.java:213)
        *
org.apache.tapestry5.internal.services.InternalClassTransformationImpl$2.edit(InternalClassTransformationImpl.java:1739)
        * javassist.expr.ExprEditor.loopBody(ExprEditor.java:197)
        * javassist.expr.ExprEditor.doit(ExprEditor.java:90)
        * javassist.CtClassType.instrument(CtClassType.java:1289)
        *
org.apache.tapestry5.internal.services.InternalClassTransformationImpl.replaceFieldAccess(InternalClassTransformationImpl.java:1745)
        *
org.apache.tapestry5.internal.services.InternalClassTransformationImpl.performFieldTransformations(InternalClassTransformationImpl.java:1673)
        *
org.apache.tapestry5.internal.services.InternalClassTransformationImpl.finish(InternalClassTransformationImpl.java:1336)
        *
org.apache.tapestry5.internal.services.ComponentClassTransformerImpl.transformComponentClass(ComponentClassTransformerImpl.java:172)
        *
org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl.onLoad(ComponentInstantiatorSourceImpl.java:201)
        * javassist.Loader.findClass(Loader.java:340)
        *
org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$PackageAwareLoader.findClass(ComponentInstantiatorSourceImpl.java:92)
        * javassist.Loader.loadClass(Loader.java:311)
        * java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        * java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        * java.lang.Class.getDeclaredMethods0(Native Method)
        * java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
        * java.lang.Class.getDeclaredMethods(Class.java:1791)
        * java.beans.Introspector$1.run(Introspector.java:1272)
        * java.security.AccessController.doPrivileged(Native Method)
        *
java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1270)
        *
java.beans.Introspector.getTargetMethodInfo(Introspector.java:1136)
        * java.beans.Introspector.getBeanInfo(Introspector.java:387)
        * java.beans.Introspector.getBeanInfo(Introspector.java:159)
        *
org.apache.tapestry5.ioc.internal.services.PropertyAccessImpl.buildAdapter(PropertyAccessImpl.java:84)
        *
org.apache.tapestry5.ioc.internal.services.PropertyAccessImpl.getAdapter(PropertyAccessImpl.java:65)
        *
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.infoForTerm(PropertyConduitSourceImpl.java:401)
        *
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.build(PropertyConduitSourceImpl.java:160)
        *
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.create(PropertyConduitSourceImpl.java:102)
        *
org.apache.tapestry5.internal.bindings.PropBindingFactory.newBinding(PropBindingFactory.java:45)
        *
org.apache.tapestry5.internal.services.BindingSourceImpl.newBinding(BindingSourceImpl.java:78)
        *
org.apache.tapestry5.internal.services.PageElementFactoryImpl.newBinding(PageElementFactoryImpl.java:309)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.findBinding(PageLoaderProcessor.java:261)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.bindParameterFromTemplate(PageLoaderProcessor.java:167)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.attribute(PageLoaderProcessor.java:296)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.loadTemplateForComponent(PageLoaderProcessor.java:503)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.workComponentQueue(PageLoaderProcessor.java:834)
        *
org.apache.tapestry5.internal.services.PageLoaderProcessor.loadPage(PageLoaderProcessor.java:392)
        *
org.apache.tapestry5.internal.services.PageLoaderImpl.loadPage(PageLoaderImpl.java:59)
        *
org.apache.tapestry5.internal.services.PagePoolCache.checkout(PagePoolCache.java:210)
        *
org.apache.tapestry5.internal.services.PagePoolImpl.checkout(PagePoolImpl.java:99)
        *
org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
        *
org.apache.tapestry5.internal.services.LinkFactoryImpl.createPageRenderLink(LinkFactoryImpl.java:148)
        *
org.apache.tapestry5.internal.structure.PageImpl.createPageRenderLink(PageImpl.java:184)
        *
org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.createPageLink(InternalComponentResourcesImpl.java:152)
        *
com.roialte.presentation.pages.ButtonWizard.getIFrameUrl(ButtonWizard.java:257)




        
-- 
View this message in context: 
http://www.nabble.com/T5%3A-Exception-creating-a-pageLink-in-Tomcat-but-not-in-Jetty-tp21213703p21213703.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to