Win a copy of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams this week in the Reactive Progamming forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Junilu Lacar
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Knute Snortum
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Ganesh Patekar

'select' componet in tapestry

 
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't know why i can not get the submitted value of the dropdown list , it always be null .The code is below :
html:
<td>
<select jwcid="places"></select>
</td>
page:
<property name="place"/>

<component id="places" type="PropertySelection">
<binding name="value" value="place"/>
<binding name="model" value="placeDropdownList"/>
</component>
java:
public abstract class TestTapestry extends BasePage
{

public abstract void setPlace(String place);

public abstract String getPlace();

public List getList()
{
List<List<String>> list = new ArrayList<List<String>>();
List<String> list1 = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
list1.add("Beijing");
list1.add("Shanghai");
list1.add("Xianggang");
list1.add("Dongjing");
list2.add("北京");
list2.add("上海");
list2.add("香港");
list2.add("东京");

list.add(list1);
list.add(list2);

return list;
}

public IPropertySelectionModel getPlaceDropdownList()
{
PlaceDropdownList places = new PlaceDropdownList();
places.placesList = this.getList();
setPlace("Dongjing");
return places;
}

public String submit(IRequestCycle cycle)
{
System.out.println(getPlace());
}


private class PlaceDropdownList implements IPropertySelectionModel
{
List placesList = null;

public String getLabel(int arg0) {
List list = (List)placesList.get(1);
return (String)list.get(arg0);
}

public Object getOption(int arg0) {
List list = (List)placesList.get(0);
return list.get(arg0);
}

public String getValue(int arg0) {
List list = (List)placesList.get(0);
return (String)list.get(arg0);
}

public int getOptionCount() {
return ((List)placesList.get(0)).size();
}

public Object translateValue(String arg0) {
return arg0;
}
}
}

when submit method invoked , will get null . Waiting for your help , thank you very much.
[ August 15, 2006: Message edited by: David George ]
 
Ranch Hand
Posts: 390
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
getPlace() should be null; I am damn sure getPlaceDropdownList()
was never called; if you want getPlace() to have value; try setting setPlace() in pageBeginRender() method; remember this method is called only if your class implements PageBeginRenderListener interface.
 
Oh the stink of it! Smell my tiny ad!
Java file APIs (DOC, XLS, PDF, and many more)
https://products.aspose.com/total/java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!