You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Andrea Chiumenti <ki...@gmail.com> on 2007/07/14 11:07:04 UTC
T4 Help with parameters binding
Hello I'm having a problem with T4.1.2
I' have a component with
<parameter name="startRow" required="no" default-value="ognl:0">
<description>
When you have a scrollable table, this is the index of the first
row displayed.
</description>
</parameter>
and its listener:
public void addNewListener(IRequestCycle cycle) {
callSubmitBeforeListener(cycle, getAddNewAction());
if (!CommonUtils.nullOrEmpty(getSource())) {
if (getDisplayRowCount() > 0) {
setStartRow(Math.max(0, getSource().size() -
getDisplayRowCount()));
}
}
}
When trying to call setStartRow this exception is thrown:
Binding with value 0 (ExpressionBinding[Home/tableForm 0]) may not be
updated. org.apache.tapestry.BindingException Binding with value 0
(ExpressionBinding[Home/tableForm 0]) may not be updated. binding:
ExpressionBinding[Home/tableForm
0] location: classpath:/org/jfly/web/components/edittable/EditTable.jwc,
line 30, column 69
25 <description> 26 If it's a sized table (a table that can display only a
limited amount of rows a time) this 27 is number of the entire source
displayed. It's needed for scrollbar creation 28 </description> 29</parameter>
30 <parameter name="startRow" required="no" default-value="ognl:0">
31<description>
32 When you have a scrollable table, this is the index of the first row
displayed. 33 </description> 34 </parameter> 35 <parameter
name="displayRowCount" required="no" default-value="ognl:0"> Stack Trace:
-
org.apache.tapestry.binding.AbstractBinding.createReadOnlyBindingException
(AbstractBinding.java:115)
- org.apache.tapestry.binding.ExpressionBinding.setObject(
ExpressionBinding.java:196)
- $EditTable_16.setStartRow($EditTable_16.java)
- org.jfly.web.components.edittable.EditTable.rewindFormComponent(
EditTable.java:429)
- org.apache.tapestry.form.AbstractFormComponent.renderComponent(
AbstractFormComponent.java:94)
- org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
- org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
DojoAjaxResponseBuilder.java:625)
- org.apache.tapestry.AbstractComponent.renderBody(
AbstractComponent.java:539)
- org.apache.tapestry.form.FormSupportImpl.rewind(FormSupportImpl.java:615)
- org.apache.tapestry.form.Form.renderComponent(Form.java:196)
- org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
- org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
DojoAjaxResponseBuilder.java:625)
- org.apache.tapestry.form.Form.rewind(Form.java:269)
- org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:453)
- 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_113c3a6ae71.service($IEngineService_113c3a6ae71.java)
- org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(
EngineServiceOuterProxy.java:72)
- org.apache.tapestry.engine.AbstractEngine.service(
AbstractEngine.java:237)
- org.apache.tapestry.services.impl.InvokeEngineTerminator.service(
InvokeEngineTerminator.java:54)
- $WebRequestServicer_113c3a6ae42.service($WebRequestServicer_113c3a6ae42.java)
- $WebRequestServicer_113c3a6ae3e.service($WebRequestServicer_113c3a6ae3e.java)
-
org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service
(WebRequestServicerPipelineBridge.java:61)
- $ServletRequestServicer_113c3a6ae24.service($ServletRequestServicer_113c3a6ae24.java)
- org.apache.tapestry.request.DecodedRequestInjector.service(
DecodedRequestInjector.java:55)
- $ServletRequestServicerFilter_113c3a6ae20.service($ServletRequestServicerFilter_113c3a6ae20.java)
- $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
- org.apache.tapestry.multipart.MultipartDecoderFilter.service(
MultipartDecoderFilter.java:52)
- $ServletRequestServicerFilter_113c3a6ae1e.service($ServletRequestServicerFilter_113c3a6ae1e.java)
- $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
........................
What can I do ?
It seems to me that in previous T4.1.2-SNAPSHOT this didn't appear.
Please help!
Thanks in advance,
kiuma
Re: T4 Help with parameters binding
Posted by Andrea Chiumenti <ki...@gmail.com>.
ok, I'll try to put a non working example on it these days
On 7/14/07, Jesse Kuhnert <jk...@gmail.com> wrote:
>
> Nothing is coming to me off the top of my head. I'll be happy to take a
> look of course when I'm ready if someone logs it in the Tapestry JIRA.
>
> On 7/14/07, Andrea Chiumenti <ki...@gmail.com> wrote:
> >
> > This can be solved is in jwc definition I put:
> > <parameter name="startRow" required="no"
> > default-value="ognl:startRowProp">
> > <description>
> > When you have a scrollable table, this is the index of the
> > first
> > row displayed.
> > </description>
> > </parameter>
> > <property name="startRowProp" initial-value="ognl:0"/>
> >
> > This behaviour seems to be changed.
> > Doesn't the default-value create a property by itself if I pass an
> > expression like ognl:0 ?
> >
> > Please let me know if the solution is the one I have to adopt by now.
> >
> > again,
> > kiuma
> >
> > On 7/14/07, Andrea Chiumenti <ki...@gmail.com> wrote:
> > >
> > > Hello I'm having a problem with T4.1.2
> > >
> > > I' have a component with
> > > <parameter name="startRow" required="no" default-value="ognl:0">
> > > <description>
> > > When you have a scrollable table, this is the index of the
> > > first row displayed.
> > > </description>
> > > </parameter>
> > >
> > > and its listener:
> > > public void addNewListener(IRequestCycle cycle) {
> > > callSubmitBeforeListener(cycle, getAddNewAction());
> > > if (!CommonUtils.nullOrEmpty(getSource())) {
> > > if (getDisplayRowCount() > 0) {
> > > setStartRow(Math.max(0, getSource().size() -
> > > getDisplayRowCount()));
> > > }
> > > }
> > > }
> > >
> > >
> > > When trying to call setStartRow this exception is thrown:
> > >
> > > Binding with value 0 (ExpressionBinding[Home/tableForm 0]) may not be
> > > updated. org.apache.tapestry.BindingException Binding with value 0
> > > (ExpressionBinding[Home/tableForm 0]) may not be updated. binding:
> > ExpressionBinding[Home/tableForm
> > > 0] location:
> > classpath:/org/jfly/web/components/edittable/EditTable.jwc,
> > > line 30, column 69
> > > 25 <description> 26 If it's a sized table (a table that can display
> only
> > a
> > > limited amount of rows a time) this 27 is number of the entire source
> > > displayed. It's needed for scrollbar creation 28 </description>
> > 29</parameter>
> > > 30 <parameter name="startRow" required="no" default-value="ognl:0">
> > 31<description>
> > > 32 When you have a scrollable table, this is the index of the first
> row
> > > displayed. 33 </description> 34 </parameter> 35 <parameter
> > > name="displayRowCount" required="no" default-value="ognl:0"> Stack
> > Trace:
> > >
> > > -
> > >
> >
> org.apache.tapestry.binding.AbstractBinding.createReadOnlyBindingException
> > > (AbstractBinding.java:115)
> > > - org.apache.tapestry.binding.ExpressionBinding.setObject(
> > > ExpressionBinding.java:196)
> > > - $EditTable_16.setStartRow($EditTable_16.java)
> > > - org.jfly.web.components.edittable.EditTable.rewindFormComponent(
> > > EditTable.java:429)
> > > - org.apache.tapestry.form.AbstractFormComponent.renderComponent(
> > > AbstractFormComponent.java:94)
> > > - org.apache.tapestry.AbstractComponent.render(
> > > AbstractComponent.java:725)
> > > - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> > > DojoAjaxResponseBuilder.java:625)
> > > - org.apache.tapestry.AbstractComponent.renderBody(
> > > AbstractComponent.java:539)
> > > - org.apache.tapestry.form.FormSupportImpl.rewind(
> > > FormSupportImpl.java:615)
> > > - org.apache.tapestry.form.Form.renderComponent(Form.java:196)
> > > - org.apache.tapestry.AbstractComponent.render(
> > > AbstractComponent.java:725)
> > > - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> > > DojoAjaxResponseBuilder.java:625)
> > > - org.apache.tapestry.form.Form.rewind(Form.java:269)
> > > - org.apache.tapestry.engine.RequestCycle.rewindForm(
> > > RequestCycle.java:453)
> > > - 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_113c3a6ae71.service($IEngineService_113c3a6ae71.java)
> > >
> > > - org.apache.tapestry.services.impl.EngineServiceOuterProxy.service
> (
> > > EngineServiceOuterProxy.java:72)
> > > - org.apache.tapestry.engine.AbstractEngine.service(
> > > AbstractEngine.java:237)
> > > - org.apache.tapestry.services.impl.InvokeEngineTerminator.service(
> > > InvokeEngineTerminator.java:54)
> > > -
> >
> $WebRequestServicer_113c3a6ae42.service($WebRequestServicer_113c3a6ae42.java)
> > >
> > > -
> >
> $WebRequestServicer_113c3a6ae3e.service($WebRequestServicer_113c3a6ae3e.java)
> > >
> > > -
> > >
> >
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service
> > > (WebRequestServicerPipelineBridge.java:61)
> > > -
> >
> $ServletRequestServicer_113c3a6ae24.service($ServletRequestServicer_113c3a6ae24.java)
> > >
> > > - org.apache.tapestry.request.DecodedRequestInjector.service(
> > > DecodedRequestInjector.java:55)
> > > -
> >
> $ServletRequestServicerFilter_113c3a6ae20.service($ServletRequestServicerFilter_113c3a6ae20.java)
> > >
> > > -
> >
> $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
> > >
> > > - org.apache.tapestry.multipart.MultipartDecoderFilter.service(
> > > MultipartDecoderFilter.java:52)
> > > -
> >
> $ServletRequestServicerFilter_113c3a6ae1e.service($ServletRequestServicerFilter_113c3a6ae1e.java)
> > >
> > > -
> >
> $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
> > >
> > >
> > >
> > > ........................
> > >
> > > What can I do ?
> > >
> > > It seems to me that in previous T4.1.2-SNAPSHOT this didn't appear.
> > >
> > > Please help!
> > >
> > > Thanks in advance,
> > > kiuma
> > >
> >
>
>
>
> --
> Jesse Kuhnert
> Tapestry/Dojo team member/developer
>
> Open source based consulting work centered around
> dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com
>
Re: T4 Help with parameters binding
Posted by Jesse Kuhnert <jk...@gmail.com>.
Nothing is coming to me off the top of my head. I'll be happy to take a
look of course when I'm ready if someone logs it in the Tapestry JIRA.
On 7/14/07, Andrea Chiumenti <ki...@gmail.com> wrote:
>
> This can be solved is in jwc definition I put:
> <parameter name="startRow" required="no"
> default-value="ognl:startRowProp">
> <description>
> When you have a scrollable table, this is the index of the
> first
> row displayed.
> </description>
> </parameter>
> <property name="startRowProp" initial-value="ognl:0"/>
>
> This behaviour seems to be changed.
> Doesn't the default-value create a property by itself if I pass an
> expression like ognl:0 ?
>
> Please let me know if the solution is the one I have to adopt by now.
>
> again,
> kiuma
>
> On 7/14/07, Andrea Chiumenti <ki...@gmail.com> wrote:
> >
> > Hello I'm having a problem with T4.1.2
> >
> > I' have a component with
> > <parameter name="startRow" required="no" default-value="ognl:0">
> > <description>
> > When you have a scrollable table, this is the index of the
> > first row displayed.
> > </description>
> > </parameter>
> >
> > and its listener:
> > public void addNewListener(IRequestCycle cycle) {
> > callSubmitBeforeListener(cycle, getAddNewAction());
> > if (!CommonUtils.nullOrEmpty(getSource())) {
> > if (getDisplayRowCount() > 0) {
> > setStartRow(Math.max(0, getSource().size() -
> > getDisplayRowCount()));
> > }
> > }
> > }
> >
> >
> > When trying to call setStartRow this exception is thrown:
> >
> > Binding with value 0 (ExpressionBinding[Home/tableForm 0]) may not be
> > updated. org.apache.tapestry.BindingException Binding with value 0
> > (ExpressionBinding[Home/tableForm 0]) may not be updated. binding:
> ExpressionBinding[Home/tableForm
> > 0] location:
> classpath:/org/jfly/web/components/edittable/EditTable.jwc,
> > line 30, column 69
> > 25 <description> 26 If it's a sized table (a table that can display only
> a
> > limited amount of rows a time) this 27 is number of the entire source
> > displayed. It's needed for scrollbar creation 28 </description>
> 29</parameter>
> > 30 <parameter name="startRow" required="no" default-value="ognl:0">
> 31<description>
> > 32 When you have a scrollable table, this is the index of the first row
> > displayed. 33 </description> 34 </parameter> 35 <parameter
> > name="displayRowCount" required="no" default-value="ognl:0"> Stack
> Trace:
> >
> > -
> >
> org.apache.tapestry.binding.AbstractBinding.createReadOnlyBindingException
> > (AbstractBinding.java:115)
> > - org.apache.tapestry.binding.ExpressionBinding.setObject(
> > ExpressionBinding.java:196)
> > - $EditTable_16.setStartRow($EditTable_16.java)
> > - org.jfly.web.components.edittable.EditTable.rewindFormComponent(
> > EditTable.java:429)
> > - org.apache.tapestry.form.AbstractFormComponent.renderComponent(
> > AbstractFormComponent.java:94)
> > - org.apache.tapestry.AbstractComponent.render(
> > AbstractComponent.java:725)
> > - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> > DojoAjaxResponseBuilder.java:625)
> > - org.apache.tapestry.AbstractComponent.renderBody(
> > AbstractComponent.java:539)
> > - org.apache.tapestry.form.FormSupportImpl.rewind(
> > FormSupportImpl.java:615)
> > - org.apache.tapestry.form.Form.renderComponent(Form.java:196)
> > - org.apache.tapestry.AbstractComponent.render(
> > AbstractComponent.java:725)
> > - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> > DojoAjaxResponseBuilder.java:625)
> > - org.apache.tapestry.form.Form.rewind(Form.java:269)
> > - org.apache.tapestry.engine.RequestCycle.rewindForm(
> > RequestCycle.java:453)
> > - 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_113c3a6ae71.service($IEngineService_113c3a6ae71.java)
> >
> > - org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(
> > EngineServiceOuterProxy.java:72)
> > - org.apache.tapestry.engine.AbstractEngine.service(
> > AbstractEngine.java:237)
> > - org.apache.tapestry.services.impl.InvokeEngineTerminator.service(
> > InvokeEngineTerminator.java:54)
> > -
> $WebRequestServicer_113c3a6ae42.service($WebRequestServicer_113c3a6ae42.java)
> >
> > -
> $WebRequestServicer_113c3a6ae3e.service($WebRequestServicer_113c3a6ae3e.java)
> >
> > -
> >
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service
> > (WebRequestServicerPipelineBridge.java:61)
> > -
> $ServletRequestServicer_113c3a6ae24.service($ServletRequestServicer_113c3a6ae24.java)
> >
> > - org.apache.tapestry.request.DecodedRequestInjector.service(
> > DecodedRequestInjector.java:55)
> > -
> $ServletRequestServicerFilter_113c3a6ae20.service($ServletRequestServicerFilter_113c3a6ae20.java)
> >
> > -
> $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
> >
> > - org.apache.tapestry.multipart.MultipartDecoderFilter.service(
> > MultipartDecoderFilter.java:52)
> > -
> $ServletRequestServicerFilter_113c3a6ae1e.service($ServletRequestServicerFilter_113c3a6ae1e.java)
> >
> > -
> $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
> >
> >
> >
> > ........................
> >
> > What can I do ?
> >
> > It seems to me that in previous T4.1.2-SNAPSHOT this didn't appear.
> >
> > Please help!
> >
> > Thanks in advance,
> > kiuma
> >
>
--
Jesse Kuhnert
Tapestry/Dojo team member/developer
Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com
Re: T4 Help with parameters binding
Posted by Andrea Chiumenti <ki...@gmail.com>.
This can be solved is in jwc definition I put:
<parameter name="startRow" required="no" default-value="ognl:startRowProp">
<description>
When you have a scrollable table, this is the index of the first
row displayed.
</description>
</parameter>
<property name="startRowProp" initial-value="ognl:0"/>
This behaviour seems to be changed.
Doesn't the default-value create a property by itself if I pass an
expression like ognl:0 ?
Please let me know if the solution is the one I have to adopt by now.
again,
kiuma
On 7/14/07, Andrea Chiumenti <ki...@gmail.com> wrote:
>
> Hello I'm having a problem with T4.1.2
>
> I' have a component with
> <parameter name="startRow" required="no" default-value="ognl:0">
> <description>
> When you have a scrollable table, this is the index of the
> first row displayed.
> </description>
> </parameter>
>
> and its listener:
> public void addNewListener(IRequestCycle cycle) {
> callSubmitBeforeListener(cycle, getAddNewAction());
> if (!CommonUtils.nullOrEmpty(getSource())) {
> if (getDisplayRowCount() > 0) {
> setStartRow(Math.max(0, getSource().size() -
> getDisplayRowCount()));
> }
> }
> }
>
>
> When trying to call setStartRow this exception is thrown:
>
> Binding with value 0 (ExpressionBinding[Home/tableForm 0]) may not be
> updated. org.apache.tapestry.BindingException Binding with value 0
> (ExpressionBinding[Home/tableForm 0]) may not be updated. binding: ExpressionBinding[Home/tableForm
> 0] location: classpath:/org/jfly/web/components/edittable/EditTable.jwc,
> line 30, column 69
> 25 <description> 26 If it's a sized table (a table that can display only a
> limited amount of rows a time) this 27 is number of the entire source
> displayed. It's needed for scrollbar creation 28 </description> 29</parameter>
> 30 <parameter name="startRow" required="no" default-value="ognl:0"> 31<description>
> 32 When you have a scrollable table, this is the index of the first row
> displayed. 33 </description> 34 </parameter> 35 <parameter
> name="displayRowCount" required="no" default-value="ognl:0"> Stack Trace:
>
> -
> org.apache.tapestry.binding.AbstractBinding.createReadOnlyBindingException
> (AbstractBinding.java:115)
> - org.apache.tapestry.binding.ExpressionBinding.setObject(
> ExpressionBinding.java:196)
> - $EditTable_16.setStartRow($EditTable_16.java)
> - org.jfly.web.components.edittable.EditTable.rewindFormComponent(
> EditTable.java:429)
> - org.apache.tapestry.form.AbstractFormComponent.renderComponent(
> AbstractFormComponent.java:94)
> - org.apache.tapestry.AbstractComponent.render(
> AbstractComponent.java:725)
> - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> DojoAjaxResponseBuilder.java:625)
> - org.apache.tapestry.AbstractComponent.renderBody(
> AbstractComponent.java:539)
> - org.apache.tapestry.form.FormSupportImpl.rewind(
> FormSupportImpl.java:615)
> - org.apache.tapestry.form.Form.renderComponent(Form.java:196)
> - org.apache.tapestry.AbstractComponent.render(
> AbstractComponent.java:725)
> - org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(
> DojoAjaxResponseBuilder.java:625)
> - org.apache.tapestry.form.Form.rewind(Form.java:269)
> - org.apache.tapestry.engine.RequestCycle.rewindForm(
> RequestCycle.java:453)
> - 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_113c3a6ae71.service($IEngineService_113c3a6ae71.java)
>
> - org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(
> EngineServiceOuterProxy.java:72)
> - org.apache.tapestry.engine.AbstractEngine.service(
> AbstractEngine.java:237)
> - org.apache.tapestry.services.impl.InvokeEngineTerminator.service(
> InvokeEngineTerminator.java:54)
> - $WebRequestServicer_113c3a6ae42.service($WebRequestServicer_113c3a6ae42.java)
>
> - $WebRequestServicer_113c3a6ae3e.service($WebRequestServicer_113c3a6ae3e.java)
>
> -
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service
> (WebRequestServicerPipelineBridge.java:61)
> - $ServletRequestServicer_113c3a6ae24.service($ServletRequestServicer_113c3a6ae24.java)
>
> - org.apache.tapestry.request.DecodedRequestInjector.service(
> DecodedRequestInjector.java:55)
> - $ServletRequestServicerFilter_113c3a6ae20.service($ServletRequestServicerFilter_113c3a6ae20.java)
>
> - $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
>
> - org.apache.tapestry.multipart.MultipartDecoderFilter.service(
> MultipartDecoderFilter.java:52)
> - $ServletRequestServicerFilter_113c3a6ae1e.service($ServletRequestServicerFilter_113c3a6ae1e.java)
>
> - $ServletRequestServicer_113c3a6ae26.service($ServletRequestServicer_113c3a6ae26.java)
>
>
>
> ........................
>
> What can I do ?
>
> It seems to me that in previous T4.1.2-SNAPSHOT this didn't appear.
>
> Please help!
>
> Thanks in advance,
> kiuma
>