---------- Forwarded message ----------
From: Mike Oestereter <[EMAIL PROTECTED]>
Date: Jul 13, 2006 11:13 AM
Subject: tacos double submit (add) problem
To: [email protected]
Hello
My code below works for the item delete - but a normal "submit" button
click after an "add" button click gives me an unexpected and
additional "add".
Also, if I do more than one "add" followed my a final "submit" the
whole thing goes out of sync with a..
Caused by: ognl.MethodFailedException: Method "setMyItemValue" failed
for object [EMAIL PROTECTED]
[java.lang.IndexOutOfBoundsException: Index: 4, Size: 4]
It works fine if I take out the Tacos/Ajax components - but then of
course also without the nice partial screen updates.
If I use a @tacos:PartialFor instead of the normal @For then the whole
thing also goes out of sync.
A normal @Form also does not work.
To move the invocation form the "listener" to the "action" has not any
influence.
If I change the updateComponents of the add button to part1 [it
includes the form] in stead of part2 [does not include the form
component] (this is not what I want) then the submission works - but
without the partial updates as I wanted and I might as well use normal
non-Ajaxy stuff.
I'm using the tacos4-beta-3-20060710-1929. I want to use the MenuBar2 stuff.
Thanks in advance
This is my html
<span jwcid="@Insert"
value="ognl:new java.util.Date()"/>
<div jwcid="[EMAIL PROTECTED]"
id="part1">
<form jwcid="[EMAIL PROTECTED]:AjaxForm">
<input jwcid="[EMAIL PROTECTED]"
value="ognl:otherValue1"/><br/>
<span jwcid="@Insert"
value="ognl:new java.util.Date()"/><br/>
<input jwcid="[EMAIL PROTECTED]"
value="ognl:otherValue2"/>
<div jwcid="[EMAIL PROTECTED]"
id="part2">
<table>
<tr jwcid="@For"
element="tr"
source="ognl:mylist"
index="ognl:index">
<td>
<span jwcid="@Insert"
value="ognl:index"/>
</td>
<td>
<input jwcid="[EMAIL PROTECTED]"
value="ognl:myItemValue"/>
</td>
<td>
<input jwcid="[EMAIL PROTECTED]:AjaxSubmit"
action="listener:doRemoveItem"
parameters="ognl:index"
value="Delete"
updateComponents="ognl:{'part2'}"/>
</td>
</tr>
</table>
</div>
<input jwcid="[EMAIL PROTECTED]:AjaxSubmit"
action="listener:doAddItem"
updateComponents="ognl:{'part2'}"
value="Add"/>
<input jwcid="[EMAIL PROTECTED]:AjaxSubmit"
listener="listener:doSubmit1"
updateComponents="ognl:{'part1'}"
value="Submit"/>
</form>
</div>
My .page
<property name="otherValue1" persist="session" />
<property name="otherValue2" persist="session" />
<property name="index" initial-value="0" />
<property name="mylist" persist="session" />
And the .java
public abstract void setOtherValue1(String value);
public abstract String getOtherValue1();
public abstract void setOtherValue2(String value);
public abstract String getOtherValue2();
public abstract List getMylist();
public abstract void setMylist(List list);
public abstract int getIndex();
public void pageBeginRender(PageEvent pageEvent) {
if (getMylist() == null) {
ArrayList list = new ArrayList();
list.add("one");
list.add("two");
list.add("three");
setMylist(list);
}
}
public void doSubmit1(IRequestCycle cycle) {
}
public void doRemoveItem(IRequestCycle cycle, int idx) {
getMylist().remove(idx);
}
public void doAddItem(IRequestCycle cycle) {
getMylist().add(new String("new stringy"));
}
public String getMyItemValue() {
return (String) getMylist().get(getIndex());
}
public void setMyItemValue(String value) {
getMylist().set(getIndex(),value);
}
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Tacos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tacos-devel