Didn't find anything weird :) Try excluding more of your pojo properties until you find which one causes this...
Also, try the properties parameter as described at http://tacos.sourceforge.net/tacos4.1/beanform/component-reference.html instead of the exclude one On Sat, Jun 14, 2008 at 5:24 AM, Andreas Andreou <[EMAIL PROTECTED]> wrote: > So, you're saying that when you're creating a new bandPojo > it works, but when you're editing an existing one it fails? > > I'm taking a look at the error messages + the beanform templates to see > why this is happening - is it possible to try T4.1.6-SNAPSHOT and > OGNL-2.7.3 in the meantime (just in case) ? > > On Sat, Jun 14, 2008 at 5:04 AM, <[EMAIL PROTECTED]> wrote: >> Hello all, >> >> I'm having an issue with BeanForm (version 0.9). I have a feeling it's >> something I'm missing - but I've done about all the research and probing I >> can >> think of to no avail. >> >> The particulars - I'm executing in Jetty 4.2.27 (old, I know - but it seems >> rather trusty) on ubuntu linux. My tapestry jars are the 4.1.5 release, I'm >> using tacos 4.1.1. Along with OGNL 2.7.2 (hope I didn't forget anything). >> >> I've searched the exceptions and errors messages, I've went through the >> source >> code for the component, and I've done a bunch of searches in MarkMail and >> Nabble. I found a promising lead, but that too doesn't work. >> >> So - I have pojo, Band, and I am able to use BeanForm to create a new pojo >> (and >> persist, etc). >> >> [my .html] >> ------------------------------ >> <form jwcid="[EMAIL PROTECTED]:BeanForm" >> bean="ognl:bandPojo" >> exclude="bandId" >> delegate="bean:validationDelegate" >> clientValidationEnabled="ognl:true" >> focus="ognl:true" >> method="post" >> save="listener:save" >> delete="listener:delete"/> >> >> But when I enter my edit page from the view-all page with a pojo specified >> for >> editing, I get the following 4 exceptions (which result one from the other, I >> think): >> >> -------------------------------------- >> Exception: Unable to read OGNL expression '<parsed OGNL expression>' of >> [EMAIL PROTECTED]/EditBand/bandEdit.label]: labelBlock >> >> org.apache.tapestry.BindingException >> >> ExpressionBinding[pages/EditBand/bandEdit.label labelBlock] >> classpath:/net/sf/beanform/BeanFormLabel.jwc, line 37, column 51 >> >> 36 <component id="label" type="RenderBlock"> >> 37 <binding name="block" value="labelBlock"/> >> 38 </component> >> >> Exception: Unable to read OGNL expression '<parsed OGNL expression>' of >> [EMAIL PROTECTED]/EditBand/bandEdit.label]: labelBlock >> >> org.apache.hivemind.ApplicationRuntimeException >> >> component: [EMAIL PROTECTED]/EditBand/bandEdit.label] >> classpath:/net/sf/beanform/BeanForm.jwc, line 109, column 49 >> >> 107 <component id="renderBody" type="RenderBody"/> >> 108 <component id="rows" type="BeanFormRows"/> >> 109 <component id="label" type="BeanFormLabel"/> >> 110 <component id="field" type="BeanFormField"/> >> 111 <component id="buttons" type="BeanFormButtons"/> >> >> Exception: labelBlock >> ognl.OgnlException >> >> Exception: >> java.lang.NullPointerException >> >> Stack Trace: >> >> * >> net.sf.beanform.BeanFormComponent.getPropertySelectionModel(BeanFormComponent.java:105) >> * >> net.sf.beanform.BeanFormComponent.hasPropertySelectionModel(BeanFormComponent.java:99) >> * net.sf.beanform.BeanFormLabel.getLabelBlock(BeanFormLabel.java:45) >> * sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> * >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> * >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> * java.lang.reflect.Method.invoke(Method.java:585) >> * ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:851) >> * ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1414) >> * >> ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60) >> * ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:147) >> * ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2210) >> * ognl.ASTProperty.getValueBody(ASTProperty.java:114) >> * ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212) >> * ognl.SimpleNode.getValue(SimpleNode.java:258) >> * ognl.Ognl.getValue(Ognl.java:494) >> * ognl.Ognl.getValue(Ognl.java:458) >> * >> org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.readCompiled(ExpressionEvaluatorImpl.java:123) >> * >> $ExpressionEvaluator_11a849d15d2.readCompiled($ExpressionEvaluator_11a849d15d2.java) >> * >> org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:141) >> * >> org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:125) >> * >> org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:84) >> * $RenderBlock_242.getBlock($RenderBlock_242.java) >> * >> org.apache.tapestry.components.RenderBlock.renderComponent(RenderBlock.java:61) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.Any.renderComponent(Any.java:44) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * >> org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:39) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.Any.renderComponent(Any.java:44) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:181) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107) >> * net.sf.beanform.BeanFormRows.renderComponent(BeanFormRows.java:58) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.IfBean.renderComponent(IfBean.java:94) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.Any.renderComponent(Any.java:44) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.Block.renderForComponent(Block.java:65) >> * >> org.apache.tapestry.components.RenderBlock.renderComponent(RenderBlock.java:65) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * org.apache.tapestry.components.IfBean.renderComponent(IfBean.java:94) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107) >> * net.sf.beanform.BeanForm.renderComponent(BeanForm.java:191) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * >> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538) >> * >> org.apache.tapestry.form.FormSupportImpl.rewind(FormSupportImpl.java:624) >> * org.apache.tapestry.form.Form.renderComponent(Form.java:196) >> * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724) >> * >> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187) >> * org.apache.tapestry.form.Form.rewind(Form.java:269) >> * >> org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:469) >> * org.apache.tapestry.form.Form.trigger(Form.java:280) >> * >> org.apache.tapestry.engine.DirectService.triggerComponent(DirectService.java:166) >> * org.apache.tapestry.engine.DirectService.service(DirectService.java:142) >> * $IEngineService_11a849d1510.service($IEngineService_11a849d1510.java) >> * >> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:72) >> * >> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241) >> * >> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:54) >> * >> $WebRequestServicer_11a849d14e8.service($WebRequestServicer_11a849d14e8.java) >> * >> org.apache.tapestry.services.impl.DisableCachingFilter.service(DisableCachingFilter.java:54) >> * >> $WebRequestServicerFilter_11a849d14ea.service($WebRequestServicerFilter_11a849d14ea.java) >> * >> $WebRequestServicer_11a849d14ec.service($WebRequestServicer_11a849d14ec.java) >> * >> $WebRequestServicer_11a849d14e4.service($WebRequestServicer_11a849d14e4.java) >> * >> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:61) >> * >> $ServletRequestServicer_11a849d14ca.service($ServletRequestServicer_11a849d14ca.java) >> * >> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) >> * >> $ServletRequestServicerFilter_11a849d14c6.service($ServletRequestServicerFilter_11a849d14c6.java) >> * >> $ServletRequestServicer_11a849d14cc.service($ServletRequestServicer_11a849d14cc.java) >> * >> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) >> * >> $ServletRequestServicerFilter_11a849d14c4.service($ServletRequestServicerFilter_11a849d14c4.java) >> * >> $ServletRequestServicer_11a849d14cc.service($ServletRequestServicer_11a849d14cc.java) >> * >> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) >> * >> $ServletRequestServicerFilter_11a849d14c8.service($ServletRequestServicerFilter_11a849d14c8.java) >> * >> $ServletRequestServicer_11a849d14cc.service($ServletRequestServicer_11a849d14cc.java) >> * >> $ServletRequestServicer_11a849d14be.service($ServletRequestServicer_11a849d14be.java) >> * >> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:126) >> * >> org.apache.tapestry.ApplicationServlet.doPost(ApplicationServlet.java:171) >> * javax.servlet.http.HttpServlet.service(HttpServlet.java:760) >> * javax.servlet.http.HttpServlet.service(HttpServlet.java:853) >> * org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358) >> * >> org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:342) >> * org.apache.tapestry.RedirectFilter.doFilter(RedirectFilter.java:103) >> * >> org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334) >> * >> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286) >> * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567) >> * org.mortbay.http.HttpContext.handle(HttpContext.java:1807) >> * >> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:526) >> * org.mortbay.http.HttpContext.handle(HttpContext.java:1757) >> * org.mortbay.http.HttpServer.service(HttpServer.java:879) >> * org.mortbay.http.HttpConnection.service(HttpConnection.java:789) >> * org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960) >> * org.mortbay.http.HttpConnection.handle(HttpConnection.java:806) >> * >> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218) >> * org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331) >> * org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520) >> >> Now - I found a message from Sept 2006 that mentioned there is an issue with >> BeanForm being used in a Form tag. I believe it's a modification from 4.0 to >> 4.1 regarding the Form component: >> >> http://www.nabble.com/I%27m-trying-to-get-the-marvelous-BeanForm-component-working-with-tap-4.1-td6119786.html#a6122605 >> >> I thought "DANG! THAT'S GOTTA BE IT!" Because my problem appears to be >> related >> to the Form component being rewound. So I changed .html >> >> >> [my .html] >> ------------------------------ >> <form jwcid="@Form"> >> <span jwcid="[EMAIL PROTECTED]:BeanForm" >> bean="ognl:bandPojo" >> exclude="bandId" >> delegate="bean:validationDelegate" >> clientValidationEnabled="ognl:true" >> focus="ognl:true" >> method="post" >> save="listener:save" >> delete="listener:delete"/> >> </form> >> >> I still got that above exception. I mucked with the delegate, client >> validation, and still get the exception. >> >> Sorry for the excessive length - it's just that I've done a bunch of >> research, >> debugging, and looking into this... so I wanted to make sure I included all >> the >> details. >> >> Thanks, >> >> Andy >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > > > -- > Andreas Andreou - [EMAIL PROTECTED] - http://blog.andyhot.gr > Tapestry / Tacos developer > Open Source / JEE Consulting > -- Andreas Andreou - [EMAIL PROTECTED] - http://blog.andyhot.gr Tapestry / Tacos developer Open Source / JEE Consulting --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]