SpringMVC form:Optionen Attribut items: was genau wird erwartet?
Ich bin noch neu in SpringMVC (und jstl-Tag für diese Angelegenheit). Ich versuche zu füllen-Optionen in einer select from eine Liste von Objekten. Ich habe einen Weg gefunden, es zu tun mit c:forEach, aber ich denke immer es MUSS einen Weg, um die form: - Optionen-Methode arbeiten.
Habe ich stöberte herum und über die nächste Sache, die ich finden kann, um die offizielle Dokumentation über das Attribut items ist hier >> http://static.springsource.org/spring/docs/2.0.x/reference/spring-form.tld.html#spring-form.tld.options
Sagt Sie das Attribut items ist für
"Die Sammlung, Map oder ein array von Objekten verwendet, um die innere "option " tags"
Meine Verwirrung ist, welche Art von Sammlung, Karte, oder ein array der Objekte, die er sucht. In welchem format müssen Sie sein? Ist es auf der Suche nach einer Auflistung oder eines Arrays vom Typ String, der speziell? Kann ich
List<MyObject>
und wenn ja, was wäre MyObject müssen, damit diese gültig ist (d.h. Methoden, Variablen)?
Derzeit, wenn ich versuche zu verwenden MyObject, bekomme ich eine Ausnahme, die sagt -
ConverterNotFoundException: Keine Konverter gefunden, die in der Lage Konvertierung vom Typ com.Beispiel.MyObject Typ java.lang.String
Muss ich einen Konverter? Wo würde das gehen? Wie würde das funktionieren? Ich habe gegoogelt, die Fehlermeldung und habe nicht wirklich aufgedreht, etwas bestimmtes, was ich zu tun versuche... (die Meisten sind Ergebnisse über Roo)
der MyObject-Klasse sieht wie folgt aus:
public class MyObject{
private String company;
private Customer customer;
private Address customerAddress;
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
}
public Address getCustomerAddress() {
return customerAddress;
}
public void setCustomerAddress(Address customerAddress) {
this.customerAddress = customerAddress;
}
}
und ich versuche, es zu benutzen, wie Z:
<form:select path="myObjectList">
<form:option value="0"/>
<form:options items="myObjectList" />
</form:select>
Weiß jemand konkret, was falsch ist über dieser Methode? Oder soll ich mich mit einem
List<String>
zu erreichen, was ich mache?
BEARBEITEN hier ist der stack-trace >> http://pastebin.com/2c5XBCmG
InformationsquelleAutor Hylianux | 2013-03-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Spring-Dokumentation sagt über die
items
Attribut desform:options
tag:Kurz gesagt, wenn Sie brauchen, um eine Liste der Benutzerdefinierten Bohnen, wie die Elemente, die das Attribut verwenden müssen Sie auch die
itemValue
unditemLabel
Attribute. Ich persönlich werde lieber mit Karten -LinkedHashMap
Instanzen speciffically - für das Auffüllen meiner Auswahl-tags, aber das ist Geschmackssache.Anpassung ein Beispiel aus der Spring-Dokumentation, der code sollte wie folgt Aussehen:
Ich bin mit der
company
Attribut, da beideitemValue
unditemLabel
, aber du bist frei in der Wahl der Attribute, die deinen Anforderungen entspricht.Welche Fehler/Ausnahme Sie bekommen?
Ich habe es in der ursprünglichen Frage, die ConverterNotFoundException. Ich werde fügen Sie den vollständigen stack-trace zu dem original-Beitrag, wenn das hilfreich wäre. Werde ich auch einfügen, es hier >> pastebin.com/2c5XBCmG
Ich bin zu Ahnen, das Problem kommt von der path-Attribut. Jedes mal, wenn ich verwendet, beziehen sich auf ein String-Attribut des Befehls. Kann man es damit versuchen?
Die itemList-Wert ist unabhängig von dem Befehl: die Werte können aus jedem Objekt, das in einem Bereich sichtbar, in die Seite. Das ist der Grund, warum müssen Sie das Objekt angeben und die Attribut Liste
InformationsquelleAutor Carlos Gavidia
In der Regel mache ich es mit dem Frühlings-tag wie diesem :
nicht vergessen, einschließlich der namespace-Deklaration :
xmlns:springform="http://www.springframework.org/tags/form"
InformationsquelleAutor jpprade