By debug mode, do you mean using the debugger, or do you mean with production mode turned off?
In either case this is somewhat odd; the debugger shouldn't impact code, and production mode shouldn't affect anything outside of the exception report page. On Thu, Jul 31, 2008 at 1:36 AM, José Paumard <[EMAIL PROTECTED]> wrote: > Hello all, > > I just noticed something that I fail to explain. I'm using Eclipse / T5 / > Jetty plugin, just as in the tutorial, and developing a T5 application. I've > been working on this configuration for quite some time now, and it's my 3rd > application developped with T5. > What I saw, is a difference of behavior of the application when I run it > "normally" and in "debug mode". In normal mode, my app runs fine, and in > debug mode, I've got a class cast exception on the following case. > > I have a generic class associated with a form : > > The class : > > public abstract class MyObjectEditor<T> { > public abstract T getMyObject() ; > public abstract void setMyObject(T t) ; > public abstract String getExcludeList() ; > } > > > The TML : > > <t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > <t:form t:id="myobjecteditor"> > <t:errors/> > <t:beaneditor t:id="myobject" t:exclude="prop:excludelist"/> > <t:submit t:value="message:submit-label"/> > </t:form> > </t:container> > > > Of course the abstract class is extended by concrete classes, let's say this > one (a simplified version, there's not everything in it) : > > public class AbstractSomeObjectEditor extends MyObjectEditor<SomeObject> { > private SomeObject someObject ; > > @OnEvent(component="myobjecteditor",value="success") > ResultPage createMyObject() { > boolean created = objectService.createObject(getMyObject()) ; > if (created) { > resultPage.setMessage(messages.get("object-created")) ; > } else { > resultPage.setMessage(messages.get("object-not-created")) ; > } > return resultPage ; > } > @Override > public SomeObject getMyObject() { > return someObject ; > } > > @Override > public void setMyObject(SomeObject someObject) { > this.someObject = someObject ; > } > > @Override > public String getExcludeList() { > return "id, creationDate, lastRevisionDate" ; > } > } > > In normal mode, everything runs flawlessly. In debug mode I have the > following exception : > > location > > classpath:org.mycomp.mywebapp.components.AbstractSomeObjectEditor.MyObjectEditor.tml, > line 10, column 65 (this is the place where the beaneditor is) > > java.lang.ClassCastException > java.lang.Object > > # > org.mycomp.mywebapp.components.AbstractSomeObjectEditor.setMyObject(AbstractSomeObjectEditor.java:1) > # > org.apache.tapestry5.internal.bindings.PropBinding.set(PropBinding.java:66) > # > org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.writeParameter(InternalComponentResourcesImpl.java:273) > # > org.apache.tapestry5.corelib.components.BeanEditor._$update_parameter_object(BeanEditor.java) > # > org.apache.tapestry5.corelib.components.BeanEditor.doPrepare(BeanEditor.java:162) > # > org.apache.tapestry5.corelib.components.BeanEditor$Prepare.execute(BeanEditor.java:47) > # > org.apache.tapestry5.corelib.components.BeanEditor$Prepare.execute(BeanEditor.java:41) > # > org.apache.tapestry5.corelib.internal.FormSupportImpl.storeAndExecute(FormSupportImpl.java:98) > # > org.apache.tapestry5.corelib.components.BeanEditor.setupRender(BeanEditor.java:141) > # > org.apache.tapestry5.corelib.components.BeanEditor.setupRender(BeanEditor.java) > # > org.apache.tapestry5.internal.structure.ComponentPageElementImpl$13$1.run(ComponentPageElementImpl.java:475) > # > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:895) > # > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$100(ComponentPageElementImpl.java:50) > # > org.apache.tapestry5.internal.structure.ComponentPageElementImpl$13.render(ComponentPageElementImpl.java:479) > # > org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:68) > # > org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:108) > > Any thoughts would be much appreciated, > > José > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Howard M. Lewis Ship Creator Apache Tapestry and Apache HiveMind --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]