You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Penyihir Kecil <pe...@gmail.com> on 2007/12/11 15:42:28 UTC
T5 : NULL (no data)display for SELECT component ?
i tried select component but i have difficulty and got stuck on it.
i had already read the archive milis, but still have no idea what had
happened with mine
here's my code....
i always get null value(no data) to diplay in my select component.
when i debug it,
getPositionList() in Home.java always return a list of value.
but it doesn't work when i try to call the model : return new
PositionSelectionModel(getPositionList());
does anyone can help clear me up....
thnx...
*
-----------------------------------------------------------------------------------------------------
Home.tml*
<select t:type="select" t:id="position" value="position"
model="positionSelectionModel" encoder="valueEncoder"/>
-------------------------------------------------------------------------------------------------
*Home.java
.....
*private PositionSelectionModel positionSelectionModel;
public PositionSelectionModel getPositionSelectionModel() {
setPositionList(getPositionDao().queryForList("", ""));
return new PositionSelectionModel(getPositionList());
}
public ValueEncoder<Position> getValueEncoder(){
return new PositionValueEncoder(getPositionList());
}
......
------------------------------------------------------------------------------------------------------
*PositionSelectionModel .java *
public class PositionSelectionModel implements SelectModel {
private List<Position> positionList;
public PositionSelectionModel(List<Position> positionList){
this.positionList = positionList;
}
public List<OptionGroupModel> getOptionGroups() {
return null;
}
public List<OptionModel> getOptions() {
List<OptionModel> optionModelList = new ArrayList<OptionModel>();
for(Position position: positionList) {
System.out.println(position.getPosition());
optionModelList.add(new OptionModelImpl(position.getPosition(),
false, position,new String[0]));
}
return optionModelList;
}
public void visit(SelectModelVisitor arg0) {
}
}
------------------------------------------------------------------------------------------------------------------------------
*PositionValueEncoder.java*
public class PositionValueEncoder implements ValueEncoder<Position> {
private List<Position> positionList;
public PositionValueEncoder(List positionList) {
this.positionList = positionList;
}
public String toClient(Position position) {
return position.getPosition();
}
public Position toValue(String value) {
for(Position position : positionList) {
if(position.getPosition().equals(value)) {
return position;
}
}
return null;
}
}
Re: T5 : NULL (no data)display for SELECT component ?
Posted by jeffrey ai <jf...@gmail.com>.
There are several examples of how to use "Select" component in the following
link.
They may help you to figure out what's wrong with your code.
http://lombok.demon.co.uk/tapestry5Demo/
Cheers,
Jeffrey Ai
Penyihir Kecil-2 wrote:
>
> i tried select component but i have difficulty and got stuck on it.
> i had already read the archive milis, but still have no idea what had
> happened with mine
> here's my code....
>
> i always get null value(no data) to diplay in my select component.
> when i debug it,
>
> getPositionList() in Home.java always return a list of value.
> but it doesn't work when i try to call the model : return new
> PositionSelectionModel(getPositionList());
>
> does anyone can help clear me up....
>
> thnx...
> *
> -----------------------------------------------------------------------------------------------------
> Home.tml*
> <select t:type="select" t:id="position" value="position"
> model="positionSelectionModel" encoder="valueEncoder"/>
>
> -------------------------------------------------------------------------------------------------
> *Home.java
> .....
>
> *private PositionSelectionModel positionSelectionModel;
> public PositionSelectionModel getPositionSelectionModel() {
> setPositionList(getPositionDao().queryForList("", ""));
> return new PositionSelectionModel(getPositionList());
> }
> public ValueEncoder<Position> getValueEncoder(){
> return new PositionValueEncoder(getPositionList());
> }
>
> ......
> ------------------------------------------------------------------------------------------------------
> *PositionSelectionModel .java *
>
> public class PositionSelectionModel implements SelectModel {
> private List<Position> positionList;
>
> public PositionSelectionModel(List<Position> positionList){
> this.positionList = positionList;
> }
>
> public List<OptionGroupModel> getOptionGroups() {
> return null;
> }
>
> public List<OptionModel> getOptions() {
> List<OptionModel> optionModelList = new ArrayList<OptionModel>();
>
> for(Position position: positionList) {
> System.out.println(position.getPosition());
> optionModelList.add(new
> OptionModelImpl(position.getPosition(),
> false, position,new String[0]));
> }
>
> return optionModelList;
> }
>
> public void visit(SelectModelVisitor arg0) {
>
> }
>
> }
> ------------------------------------------------------------------------------------------------------------------------------
>
> *PositionValueEncoder.java*
>
> public class PositionValueEncoder implements ValueEncoder<Position> {
> private List<Position> positionList;
>
> public PositionValueEncoder(List positionList) {
> this.positionList = positionList;
> }
> public String toClient(Position position) {
> return position.getPosition();
> }
>
> public Position toValue(String value) {
> for(Position position : positionList) {
> if(position.getPosition().equals(value)) {
> return position;
> }
> }
> return null;
> }
> }
>
>
--
View this message in context: http://www.nabble.com/T5-%3A-NULL-%28no-data%29display-for-SELECT-component---tp14275375p14279159.html
Sent from the Tapestry - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org