Mit selectItems kein Funktionsaufruf über Command-Button

calimero

Grünschnabel
Hallo zusammen,

ich erstelle gerade eine kleine web-applikation in jsf 1.2 inkl. eclipselink-jpa. in einer h:selectOneListBox soll eine kategorie gewählt und mittels commandbutton eine funktion aufgerufen werden, die die ausgewählte kategorie als selektiert setzt und mit dem rückgabewert eine weiterleitung zur nächsten seite einleitet. es funktioniert leider nicht. die funktion wird nicht einmal aufgerufen. wenn ich die selectOneListBox entferne, funktioniert der funktionsaufruf, der rückgabewert leitet erwartungsgemäß auch die weiterleitung ein.

ich raff einfach net, wo da das problem steckt. hier meine code-schnipsel:
die jsp-seite
Code:
<f:view>
	<h:form>
		<h:panelGrid columns="1" border="1">
			<f:facet name="header">
				<h:outputText value="Poisen" />
			</f:facet>
			<h:column>
				<h:outputText value="Hauptkategorie wählen" />
			</h:column>
			<h:column>
				<h:selectOneListbox converter="converterCategory" value="#{categoryAList.current}">
					<f:selectItems value="#{categoryAList.selectItems}" />
				</h:selectOneListbox>
			</h:column>
			<h:column>
				<h:commandButton action="#{categoryAList.selectCategory}" value="Weiter" />
			</h:column>
		</h:panelGrid>
	</h:form>
</f:view>

hier die bean:
Code:
public class CategoryAListBean extends ListBean<CategoryA> {

    public CategoryAListBean() {
	super();
	setList(pdbb.getCategoriesA());
	current = getList().get(0);
	getListModel().setWrappedData(getList());
    }

    public List<SelectItem> getSelectItems() {
	List<SelectItem> selectItems = new ArrayList<SelectItem>();
	for (CategoryA category : pdbb.getCategoriesA()) {
	    selectItems.add(new SelectItem(category, category.getTitle()));
	}
	return selectItems;
    }

    public String selectCategory() {
	this.current = (CategoryA) getListModel().getRowData();
	return "showCategoriesB";
    }

}

hier die super-bean:
Code:
public class ListBean<T> {
    private List<T> list;
    private DataModel listModel;
    protected T current;
    protected POIsenDBBean pdbb;
    protected FacesContext fc;

    public ListBean() {
	fc = FacesContext.getCurrentInstance();
	pdbb = (POIsenDBBean) fc.getApplication().evaluateExpressionGet(fc,
		"#{poisenDB}", POIsenDBBean.class);
	setListModel(new ListDataModel());
    }

    public T getCurrent() {
	return current;
    }

    public void setCurrent(T obj) {
	this.current = obj;
    }

    public List<T> getList() {
	return list;
    }

    public void setList(List<T> list) {
	this.list = list;
	getListModel().setWrappedData(list);
    }

    public void setListModel(DataModel listModel) {
	this.listModel = listModel;
    }

    public DataModel getListModel() {
	return listModel;
    }

    public int getLength() {
	return this.list.size();
    }

}

hier der converter:
Code:
public class ConverterCategory implements Converter {

    public Object getAsObject(FacesContext fc, UIComponent uic, String str)
	    throws ConverterException {
	POIsenDBBean pdbb = (POIsenDBBean) fc.getApplication()
		.evaluateExpressionGet(fc, "#{poisenDB}", POIsenDBBean.class);
	return pdbb.getCategoryA(Integer.parseInt(str));
    }

    public String getAsString(FacesContext fc, UIComponent uic, Object o)
	    throws ConverterException {
	CategoryA categoryA = (CategoryA) o;
	return String.valueOf(categoryA.getId());
    }

}

und hier der html-sourcecode:
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>POIsen - Choose Main-Category</title>
</head>
<body>
<form id="j_id_jsp_1210723754_1" name="j_id_jsp_1210723754_1" method="post" action="/POIsen/categoryA.faces" enctype="application/x-www-form-urlencoded">
<table border="1">
	<thead>
		<tr>
			<th scope="colgroup" colspan="1">Poisen</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td>Hauptkategorie wählen</td>
		</tr>
		<tr>
			<td><select name="j_id_jsp_1210723754_1:j_id_jsp_1210723754_7" size="8">
				<option value="1" selected="selected">Transport &amp; Verkehr</option>
				<option value="2">Medizin</option>
				<option value="3">Reise &amp; Hotel</option>
				<option value="4">Freizeit</option>
				<option value="5">Einkaufen</option>
				<option value="6">Öffentliche Einrichtung</option>
				<option value="7">Dienstleistung</option>
				<option value="8">Gastronomie</option>
			</select></td>
		</tr>

		<tr>
			<td><script type="text/javascript"><!--


	function oamSetHiddenInput(formname, name, value)
	{
		var form = document.forms[formname];
		if (typeof form == 'undefined')
		{
			form = document.getElementById(formname);
		}
		
		if(typeof form.elements[name]!='undefined' && (form.elements[name].nodeName=='INPUT' || form.elements[name].nodeName=='input'))
		{
			form.elements[name].value=value;
		}
		else
		{
			var newInput = document.createElement('input');
			newInput.setAttribute('type','hidden');
			newInput.setAttribute('id',name);
			newInput.setAttribute('name',name);
			newInput.setAttribute('value',value);
			form.appendChild(newInput);
		}
		
	}
	
	
	function oamClearHiddenInput(formname, name, value)
	{
		var form = document.forms[formname];
		if (typeof form == 'undefined')
		{
			form = document.getElementById(formname);
		}
		
		var hInput = form.elements[name];
		if(typeof hInput !='undefined')
		{
			form.removeChild(hInput);
		}
		
	}
	
	function oamSubmitForm(formName, linkId, target, params)
	{
		
		var clearFn = 'clearFormHiddenParams_'+formName.replace(/-/g, '\$:').replace(/:/g,'_');
		if(typeof window[clearFn] =='function')
		{
			window[clearFn](formName);
		}
		
		if(typeof window.getScrolling!='undefined')
		{
			oamSetHiddenInput(formName,'autoScroll',getScrolling());
		}
		
		var form = document.forms[formName];
		if (typeof form == 'undefined')
		{
			form = document.getElementById(formName);
		}
		
		var oldTarget = form.target;
		if(target != null)
		{
			
			form.target=target;
		}
		if((typeof params!='undefined') && params != null)
		{
			
			for(var i=0, param; (param = params[i]); i++)
			{
				oamSetHiddenInput(formName,param[0], param[1]);
			}
			
		}
		
		oamSetHiddenInput(formName,formName +':'+'_idcl',linkId);
		
		if(form.onsubmit)
		{
			var result=form.onsubmit();
			if((typeof result=='undefined')||result)
			{
				try
				{
					form.submit();
				}
				catch(e){}
			}
			
		}
		else 
		{
			try
			{
				form.submit();
			}
			catch(e){}
		}
		
		form.target=oldTarget;
		if((typeof params!='undefined') && params != null)
		{
			
			for(var i=0, param; (param = params[i]); i++)
			{
				oamClearHiddenInput(formName,param[0], param[1]);
			}
			
		}
		
		oamClearHiddenInput(formName,formName +':'+'_idcl',linkId);return false;
	}
	

//--></script><input id="j_id_jsp_1210723754_1:j_id_jsp_1210723754_10" name="j_id_jsp_1210723754_1:j_id_jsp_1210723754_10" type="submit" value="Weiter"
				onclick="if(typeof window.getScrolling!='undefined'){oamSetHiddenInput('j_id_jsp_1210723754_1','autoScroll',getScrolling());}" /> <input type="hidden" name="autoScroll" /> <input
				id="j_id_jsp_1210723754_1:j_id_jsp_1210723754_11" name="j_id_jsp_1210723754_1:j_id_jsp_1210723754_11" type="submit" value="showCategoriesB"
				onclick="if(typeof window.getScrolling!='undefined'){oamSetHiddenInput('j_id_jsp_1210723754_1','autoScroll',getScrolling());}" /></td>
		</tr>
	</tbody>
</table>
<input type="hidden" name="j_id_jsp_1210723754_1_SUBMIT" value="1" /><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState"
	value="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" /></form>
</body>
</html>

das java-script ist von tomahawk. wenn ich tomahawk aus dem build-path entferne, ist auch javascript weg, aber das problem bleibt.

ich hab wirklich alles möglich versucht, aber es will net. wäre euch sehr verbunden, wenn ihr eine lösung hättet, bzw. die fehler findet.

ach ja, die umgebung:
myfaces 1.2.9
jstl 1.1
tomahawk12 1.1.9
 
Zuletzt bearbeitet:
Ist eigentlich fast fertig. Also, der ausgewählte Wert der h:selectOneListbox landet in dem Bean-Property, dass Du mit value angegeben hast. In deinem Beispiel steht ja
Code:
<h:selectOneListbox converter="converterCategory" value="#{categoryAList.current}">
   <f:selectItems value="#{categoryAList.selectItems}" />
</h:selectOneListbox>
Also landet der eine ausgewählte Wert in dem Property value="#{categoryAList.current}". Das Property musst Du dann in deiner action verwenden.

Das was du mit dem this.current = (CategoryA) getListModel().getRowData(); versuchst, brauchst Du gar nicht machen. Das value binding erledigt JSF für Dich. Der ausgewählte Wert landet von alleine da wo er sein soll.
Java:
public String selectCategory() {
   System.out.println(this.current); // Da ist magisch der korrekt Wert gelandet.
   this.current = (CategoryA) getListModel().getRowData(); // hier überschreibst Du ihn.
   System.out.println(this.current); // Jetzt ist der Wert unerwartet.
   return "showCategoriesB";
}
 
Ah, den converter habe ich übersehen. Hast du mal einen h:messages tag auf der JSP Seite platziert? Ganz oben am besten. Könnte sein, dass dein Converter aussteigt, aber das siehst Du ohne h:messages nicht.
 
danke erst mal, super, das du drüber geschaut hast.
hab deinen rat befolgt und ein h:messages eingefügt und erhalte dann dort:
j_id_jsp_1607678831_1:j_id_jsp_1607678831_9: Validierungsfehler: Wert ist keine gültige Auswahl

ich gucke selber, aber vielleicht weisst du ja, auf was sich der validierungsfehler bezieht?

danke

ps.: hab grad nach der fehlermeldung gesucht und bin darauf gestossen, dass die klasse eine equals-methode bruacht. teste ich grad mal.
 
Zuletzt bearbeitet:
DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANNNNKEEEEEEEEEEE...

das wars. das equals hat gefehlt!

danke nochmal fürs damit beschäftigen und vor allem für den tipp mit den messages. auch das doppelte setzen war überflüssig
 
Zuletzt bearbeitet:
Zurück