Folks,
I have attached all my modules to this Gallery Widget.
Can someone comment on a solution?
Here are the issues...
1. OGNL cannot do arithmetic on tableSize due to divide by ZERO. My blocker to
prevent exception is check for null but thats not a solution.
2. Parameters are not updatable with PropertySelection across SUBMIT
3. Persist fails to work either
4. Also unable to get both renderBlocks to act on same instance...
tableSize refuses to act persistent. I select from the select and it keeps
getting reset back on submit.
The docs need to be updated too.
Thanks
Best regards
Ken in nashua
From: [EMAIL PROTECTED]
To: users@tapestry.apache.org
Subject: RE: parameter binding broken in T-4.1.* - PROPERTYSELECTION
Date: Wed, 10 Oct 2007 15:25:04 -0400
If tableSize is != 0 (according to OGNL condition check) then how is OGNL
letting it get in?
An exception has occurred.You may continue by restarting the session.
[ +/- ] Exception: Unable to parse OGNL expression '(index %
tableSize) == 0': / by zero
org.apache.tapestry.BindingException
Unable to parse OGNL expression '(index % tableSize)
== 0': / by zero
binding: ExpressionBinding[Home/galleryWidget (index
% tableSize) == 0] location:
classpath:/org/trails/demo/components/Gallery.html, line 32
27 <span jwcid='[EMAIL PROTECTED]'>28 <table width='100%'>29
<tr>30 <span jwcid='[EMAIL PROTECTED]'
source='ognl:collection' value='ognl:currentObject' index='ognl:index'>31
<span jwcid='@If' condition='ognl:tableSize !=
0'>32 <span jwcid='@If'
condition='ognl:(index % tableSize) == 0'>33
<span jwcid='@Insert' value='</tr><tr>' raw='true'/>34
</span>35
</span>36 <td>37
<a jwcid='[EMAIL PROTECTED]' listener='listener:edit'
parameters='ognl:currentObject'>
[ +/- ] Exception: Unable to parse OGNL expression '(index %
tableSize) == 0': / by zero
Best regards
Ken in nashua
From: [EMAIL PROTECTED]
To: users@tapestry.apache.org
Subject: RE: parameter binding broken in T-4.1.* - PROPERTYSELECTION
Date: Wed, 10 Oct 2007 15:15:20 -0400
An exception has occurred.You may continue by restarting the session.
[ +/- ] Exception:Unable to update OGNL expression '<parsed OGNL
expression>' [EMAIL PROTECTED]/galleryWidget] to 2: Binding with value
1(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
org.apache.tapestry.BindingException
Unableto update OGNL expression '<parsed OGNL expression>' [EMAIL
PROTECTED]/galleryWidget] to 2: Binding with value
1(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
binding:
ExpressionBinding[Home/galleryWidget tableSize]
location:
classpath:/org/trails/demo/components/Gallery.jwc, line
9, column 46
4
allow-informal-parameters='yes'>
5
<parameter name='autoPagingContent'/>
6
<parameter name='collectionContent'/>
7
8
<component id='tableSizeSelect' type='PropertySelection'>
9
<binding name='value' value='tableSize'/>
10
<binding name='model' value='tableSizeModel'/>
11
</component>
12
13
<component id='pagingSpanSelect' type='PropertySelection'>
14
<binding name='value' value='pagingSpan'/>
[ +/- ] Exception:Unable to update OGNL expression
'<parsed OGNL expression>' [EMAIL PROTECTED]/galleryWidget] to 2: Binding with
value 1(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
org.apache.hivemind.ApplicationRuntimeException
Unableto update OGNL expression '<parsed OGNL expression>' [EMAIL
PROTECTED]/galleryWidget] to 2: Binding with value
1(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
component:
[EMAIL PROTECTED]/galleryWidget]
location:
[EMAIL PROTECTED](cache=true,
defaultValue=1,required=false, name=, aliases=) of public abstract
java.lang.Stringorg.trails.demo.components.Gallery.getTableSize()
[ +/- ] Exception: Binding with value 1
(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
org.apache.tapestry.BindingException
Binding with value 1
(ExpressionBinding[Home/galleryWidget 1]) may not be updated.
binding:
ExpressionBinding[Home/galleryWidget 1]
location: [EMAIL PROTECTED](cache=true,
defaultValue=1,required=false, name=, aliases=) of public abstract
java.lang.Stringorg.trails.demo.components.Gallery.getTableSize()
Stack Trace:
org.apache.tapestry.binding.AbstractBinding.createReadOnlyBindingException(AbstractBinding.java:115)
org.apache.tapestry.binding.ExpressionBinding.setObject(ExpressionBinding.java:196)
$Gallery_17.setTableSize($Gallery_17.java)
$ASTProperty_1158b56b4e5.set($ASTProperty_1158b56b4e5.java)
org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.write(ExpressionEvaluatorImpl.java:175)
$ExpressionEvaluator_1158b56b497.write($ExpressionEvaluator_1158b56b497.java)
org.apache.tapestry.binding.ExpressionBinding.setObject(ExpressionBinding.java:223)
$PropertySelection_18.setValue($PropertySelection_18.java)
org.apache.tapestry.form.PropertySelection.rewindFormComponent(PropertySelection.java:95)
org.apache.tapestry.form.AbstractFormComponent.renderComponent(AbstractFormComponent.java:90)
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:179)
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539)
org.apache.tapestry.components.Block.renderForComponent(Block.java:65)
org.apache.tapestry.components.RenderBlock.renderComponent(RenderBlock.java:65)
Best regards
Ken in nashua
From: [EMAIL PROTECTED]
To: users@tapestry.apache.org
Subject: RE: parameter binding broken in T-4.1.* - PROPERTYSELECTION
Date: Wed, 10 Oct 2007 15:10:00 -0400
An exception has occurred.You may continue by restarting the session.
[ +/- ] Exception: Unable to parse OGNL expression '(index %
tableSize) == 0': / by zero
org.apache.tapestry.BindingException
Unable
to parse OGNL expression '(index % tableSize) == 0': / by zero
binding:
ExpressionBinding[Home/galleryWidget (index %
tableSize) == 0]
location:
classpath:/org/trails/demo/components/Gallery.html,
line 32
27
<span jwcid='[EMAIL PROTECTED]'>
28
<table width='100%'>
29
<tr>
30
<span jwcid='[EMAIL PROTECTED]'
source='ognl:collection' value='ognl:currentObject' index='ognl:index'>
31
<span jwcid='@If'
condition='ognl:tableSize != 0'>
32
<span jwcid='@If'
condition='ognl:(index % tableSize) == 0'>
33
<span jwcid='@Insert'
value='</tr><tr>' raw='true'/>
34
</span>
35
</span>
36
<td>
37
<a jwcid='[EMAIL PROTECTED]'
listener='listener:edit' parameters='ognl:currentObject'>
[ +/- ] Exception: Unable to parse OGNL
expression '(index % tableSize) == 0': / by zero
org.apache.hivemind.ApplicationRuntimeException
Unable
to parse OGNL expression '(index % tableSize) == 0': / by zero
[ +/- ] Exception: / by zero
java.lang.ArithmeticException
/ by zero
Stack Trace:
ognl.OgnlOps.remainder(OgnlOps.java:932)
ognl.ASTRemainder.getValueBody(ASTRemainder.java:51)
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:202)
ognl.SimpleNode.getValue(SimpleNode.java:246)
ognl.ASTEq.getValueBody(ASTEq.java:50)
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:202)
ognl.SimpleNode.getValue(SimpleNode.java:246)
ognl.Ognl.getValue(Ognl.java:494)
ognl.Ognl.getValue(Ognl.java:458)
org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:153)
ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:523)
ognl.Ognl.compileExpression(Ognl.java:141)
org.apache.tapestry.services.impl.ExpressionCacheImpl.parse(ExpressionCacheImpl.java:152)
org.apache.tapestry.services.impl.ExpressionCacheImpl.getCompiledExpression(ExpressionCacheImpl.java:115)
$ExpressionCache_1158b51ac28.getCompiledExpression($ExpressionCache_1158b51ac28.java)
Best regards
Ken in nashua
From: [EMAIL PROTECTED]
To: users@tapestry.apache.org
Subject: RE: parameter binding broken in T-4.1.* - PROPERTYSELECTION
Date: Wed, 10 Oct 2007 14:43:49 -0400
I tried...
@Override
protected void prepareForRender(IRequestCycle cycle)
{
super.prepareForRender(cycle);
setCollection(loadCollection(getCollectionType()));
if (getTableSize() == null)
setTableSize(tableSizeOptions[0]);
if (getPagingSpan() == null)
setPagingSpan(pagingSpanOptions[0]);
}
BUT I am unable to initialize the persistent property due to this exception...
An exception has occurred.You may continue by restarting the session.
[ +/- ] Exception:Error: Change to persistent property tableSize of
Home/galleryWidgethas been ignored. Persistent properties may only be changed
prior tothe rendering of the response page.
Now arithmetic on this property is impossible in the template and there is no
way for me to even set the parameter/property up at all.
Is there a way out of this?
Best regards
Ken in nashua
From: [EMAIL PROTECTED]
To: users@tapestry.apache.org
Subject: RE: parameter binding broken in T-4.1.* - PROPERTYSELECTION
Date: Wed, 10 Oct 2007 14:32:08 -0400
I decided to model T-4 examples and it still produces exception
private static final String[] tableSizeOptions = new String[] { '1', '2',
'3', '4', '5', '10', '25', '50', '100',
'500', '1000', '2500', '5000', '10000', '25000', '50000' };
private static final String[] pagingSpanOptions = new String[] { '5', '10',
'15', '20', '25' };
public IPropertySelectionModel getTableSizeModel()
{
if (tableSizeModel == null)
tableSizeModel = new StringPropertySelectionModel(tableSizeOptions);
return tableSizeModel;
}
public IPropertySelectionModel getPagingSpanModel()
{
if (pagingSpanModel == null)
pagingSpanModel = new
StringPropertySelectionModel(pagingSpanOptions);
return pagingSpanModel;
}
<component id='tableSizeSelect' type='PropertySelection'>
<binding name='value' value='tableSize'/>
<binding name='model' value='tableSizeModel'/>
</component>
<component id='pagingSpanSelect' type='PropertySelection'>
<binding name='value' value='pagingSpan'/>
<binding name='model' value='pagingSpanModel'/>
</component>
@Persist
public abstract String getTableSize();
@Persist
public abstract String getPagingSpan();
<select jwcid='tableSizeSelect' onchange='tapestry.form.refresh(this.form)'/>
<select jwcid='pagingSpanSelect' onchange='tapestry.form.refresh(this.form)'/>
I cannot do arithmetic on this property due to divide by zero.
So how do you set the DEFAULT VALUE of a property ? I see no support for doing
this.
I cannot use parameters because it states the parameter cannot be updated.
Please advise... thank You
An exception has occurred.You may continue by restarting the session.
[ +/- ] Exception: Unable to parse OGNL expression '(index %
tableSize) == 0': / by zero
org.apache.tapestry.BindingException
Unable
to parse OGNL expression '(index % tableSize) == 0': / by zero
binding:
ExpressionBinding[Home/galleryWidget (index %
tableSize) == 0]
location:
classpath:/org/trails/demo/components/Gallery.html,
line 31
26
27
<span jwcid='[EMAIL PROTECTED]'>
28
<table width='100%'>
29
<tr>
30
<span jwcid='[EMAIL PROTECTED]'
source='ognl:collection' value='ognl:currentObject' index='ognl:index'>
31
<span jwcid='@If'
condition='ognl:(index % tableSize) == 0'>
32
<span jwcid='@Insert'
value='</tr><tr>' raw='true'/>
33
</span>
34
<td>
35
<a jwcid='[EMAIL PROTECTED]'
listener='listener:edit' parameters='ognl:currentObject'>
36
<img jwcid='@Image'
[ +/- ] Exception: Unable to parse OGNL
expression '(index % tableSize) == 0': / by zero
Climb to the top of the charts! Play Star Shuffle: the word scramble
challenge with star power. Play Now!
Climb to the top of the charts! Play Star Shuffle: the word scramble
challenge with star power. Play Now!
Climb to the top of the charts! Play Star Shuffle: the word scramble
challenge with star power. Play Now!
Help yourself to FREE treats served up daily at the Messenger Café. Stop by
today!
Climb to the top of the charts! Play Star Shuffle: the word scramble
challenge with star power. Play Now!
_________________________________________________________________
Help yourself to FREE treats served up daily at the Messenger Café. Stop by
today.
http://www.cafemessenger.com/info/info_sweetstuff2.html?ocid=TXT_TAGLM_OctWLtagline
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]