Ho seguito due semplici POJO:Nessun accesso alla proprietà nidificato in bean gestito all'interno di p: colonne
class Person {
String name
Address address;
//and of course the getter/setter for the attributes
}
class Address {
String city;
//also getter/setter for this attribute
}
E un backing bean:
@ManagedBean
@RequestScoped
class PersonController {
private List persons;
private List<String> columns = Arrays.toList("name", "address.city");
//of course getter/setter
}
Ora voglio creare un DataTable.
<p:dataTable var="person" value="#{personController.persons}" columnIndexVar="index">
<p:columns var="column" value="#{personController.columns}">
<h:outputText value="#{person[column]}"/>
<p:columms>
</p:dataTable>
Quando eseguo questo ottengo un ServletException:
La persona di classe non ha la proprietà 'address.city'.
Ma se una prova per accedere alla città di proprietà come questa all'interno di P: colonne:
<h:outputText value="#{person.address.city}"/>
tutto bene.
Perché non riesco ad accedere a una proprietà nidificata come quella #{person['address.city']}
? E come posso accedervi entro p:columns
?
Il tag '' non esiste. Non state generando eccessivamente il tag '' PrimeFaces? –
BalusC
Sì. Scusa, lo cambierò. –