Guten Morgen!
Ich habe ein kleines Problem mit meiner JSP Anwendung. Ich bin gerade dabei etwas reinzukommen, lese parallel viel und gucke mir andere Projekte an, um einfach ein paar Grundlagen nachzuprogrammieren und zu lernen.
Ich habe bis jetzt eine kleine Seite, die einfach 3 Produkte aus einem Array liest und sie mir anzeigt. Bei klick auf den Titel eines Produkts möchte ich gerne auf eine Detailseite geleitet werden.
Mein Problem besteht darin, dass der Paramter nicht korrekt übergeben wird:
Das funktioniert wunderbar. Link ist korrekt dargestellt, ich werde weitergeleitet und "test" wird ausgegeben. Wenn ich jetzt allerdings value="test" gegen value="#{product.name}" austausche, bekomme ich einen null-Wert zurück (idealerweise möchte ich gerne nur product übergeben, aber ich taste mich langsam ran ).
ich steh grad echt etwas auf der Leitung, weil das Produktname im Link ja korrekt angezeigt wird, oder darf ich das forEach-Element etwa nicht übergeben? Wenn ja, wie komme ich an das Objekt ?
Kann mir hier jemand aus der Patsche helfen?
Vielen lieben Dank!!
Ich habe ein kleines Problem mit meiner JSP Anwendung. Ich bin gerade dabei etwas reinzukommen, lese parallel viel und gucke mir andere Projekte an, um einfach ein paar Grundlagen nachzuprogrammieren und zu lernen.
Ich habe bis jetzt eine kleine Seite, die einfach 3 Produkte aus einem Array liest und sie mir anzeigt. Bei klick auf den Titel eines Produkts möchte ich gerne auf eine Detailseite geleitet werden.
Mein Problem besteht darin, dass der Paramter nicht korrekt übergeben wird:
Code:
<tr:forEach var="product" begin="0" end="#{OutPutBean.laenge}" items="#{OutPutBean.produkte}">
<table>
<tr>
<td><img src="${product.img}" height="150" width="130"/></td>
<td>
<h:form>
<h:commandLink value="#{product.name}" action="showDetails" actionListener="#{OutPutBean.ProductLink_action}">
<f:attribute name="text" value="test" />
</h:commandLink>
</h:form>
<br />
<h:outputLabel value="#{product.preis}"/>
</td>
</tr>
</table>
<hr style="color:#666666;border:dashed;">
</tr:forEach>
Java:
public void ProductLink_action(ActionEvent ae) {
text = (String) ae.getComponent().getAttributes().get("text");
System.out.println("@" + text);
}
Das funktioniert wunderbar. Link ist korrekt dargestellt, ich werde weitergeleitet und "test" wird ausgegeben. Wenn ich jetzt allerdings value="test" gegen value="#{product.name}" austausche, bekomme ich einen null-Wert zurück (idealerweise möchte ich gerne nur product übergeben, aber ich taste mich langsam ran ).
ich steh grad echt etwas auf der Leitung, weil das Produktname im Link ja korrekt angezeigt wird, oder darf ich das forEach-Element etwa nicht übergeben? Wenn ja, wie komme ich an das Objekt ?
Kann mir hier jemand aus der Patsche helfen?
Vielen lieben Dank!!
Zuletzt bearbeitet: