ein <html:select in einem <logic:iterate

Athro

Mitglied
Ich habe ein Problem, ich benutze (mit Struts) in einem Iterator ein SelectOptions
Wenn der User eine Option auswählt und dann im Textfeld Bemerkung was schreibt verschwindet seine Bemerkung nach der Action, ich hab alles versucht aber ohne Erfolg. Wie kann ich eine Ausgewählte Option mit Bemerkung an meine Action senden, es liegt an den SelectOption, denn wenn ich es lösche kann ich die Bemerkung weiter schicken
Code:
public class BatModuleBean {
	private String batModuleName = "";
	private String aus = "";
	private ArrayList<String> ausList = new ArrayList<String>();	
	private String bemerkung = "";
	private String selectedAus = "";	
	public BatModuleBean() {
		super();
	}
	public ArrayList<String> getAusList() {
		return ausList;
	}
	public void setAusList(ArrayList<String> ausList) {
		this.ausList = ausList;
	}
	public String getBatModuleName() {
		return batModuleName;
	}
	public void setBatModuleName(String batModuleName) {
		this.batModuleName = batModuleName;
	}
	public void setBemerkung(String bemerkung) {
		this.bemerkung = bemerkung;
	}
	public String getBemerkung() {
		return this.bemerkung;
	}
	public void setSelectedAus(String selectedAus) {
		this.selectedAus = selectedAus;
	}
	public String getSelectedAus() {
		return selectedAus;
	}
}
Code:
public class SaveInfosProcessForm extends ActionForm {

	// --------------------------------------------------------- Instance
	// Variables

	/** properties */
	private BatModuleBean batModuleBean = new BatModuleBean(); 
	private ArrayList batModuleBeanList = new ArrayList();

	public void setBatModuleBeanList(ArrayList batModuleBeanList){
		this.batModuleBeanList = batModuleBeanList;
	}
	public ArrayList getBatModuleBeanList(){		
		return this.batModuleBeanList;
	}
	
	
	private void initBatModuleBeanList(){		
		for (int i=0; i<getBatModuleBeanList().size(); i++){
			BatModuleBean batModuleBean = getBatModuleBean(i);
			// Initialsiere die Ausprägung Liste
			batModuleBean.getAuspraegungList().clear();
			// initialsiere die BatModuleBean List
			setBatModuleBean(i, new BatModuleBean());
			
		}
	}
	public void setBatModuleBean(int index, BatModuleBean batModuleBean){
		ConstantsDB.log.info("SaveInfosProcessForm -----> setBatModuleBean(index, batModuleBean): index = " + index);
		if(index < batModuleBeanList.size()){
			this.batModuleBeanList.set(index, batModuleBean);
		}else{
			this.batModuleBeanList.add(index, batModuleBean);
		}
	}

	public BatModuleBean getBatModuleBean(int index){
		if(this.batModuleBeanList.size() <= index){
			this.batModuleBeanList.add(new BatModuleBean());
			index = 0;
		}
		return (BatModuleBean) this.batModuleBeanList.get(index);
	}	

	public void setBatModuleBean(BatModuleBean batModuleBean){
		this.batModuleBean = batModuleBean;
	}

	public BatModuleBean getBatModuleBean(){
		return this.batModuleBean;
	}
HTML:
<logic:iterate indexId="index" id="batModuleBean" name="SaveInfosProcessForm" property="batModuleBeanList">		
<tr>						 
<td>
<bean:write name="batModuleBean" property="batModuleName"/>
</td>
<td>
<logic:notEmpty name="batModuleBean" property="ausList">		
<html:select name="batModuleBean" property="selectedAus">
<html:options name="batModuleBean" property="ausList"/>
</html:select>
</logic:notEmpty> 
<logic:empty  name="batModuleBean" property="ausList">
<select disabled="disabled">
</select>
</logic:empty>
</td>
<td>
<html:text name="batModuleBean" property="bemerkung" indexed="true"/>
</td>
</tr>
</logic:iterate>
Danke
 
Zurück