itemLabel="#{client2.nomClient}": свойство 'nomClient' не найдено для типа java.lang.String
Я должен был бы получить значение select selectOneMenu, но когда я выполняю программу, это исключение появляется:
Etat HTTP 500 - /pages/T.xhtml @59,33 itemLabel="#{client2.nomClient}": Property 'nomClient' not found on type java.lang.String
это мой взгляд
<p:selectOneMenu value="#{ticketBean.maValeur}"
style="width:210px; height:20px; font-size:10px; font-weight:1px;"
required="true" requiredMessage="REQUIRED">
<f:selectItem itemLabel="Select Client" itemValue=""/>
<f:selectItems value="#{ticketBean.getMesElementsTest()}" var="client2" itemLabel="#{client2.nomClient}" itemValue="#{client2.nomClient}"
style="font-size:10px;">
</f:selectItems>
это мой классный клиент:
package com.model;
public class Client {
private int idClient;
private String nomClient;
private String adresseClient;
private String telephoneClient;
private String mailClient;
// GETTERS && SETTERS
}
это моя функция getMesElementsTest:
private static Map<String, Object> mesElementsTest;
private static ClientDaoImp clientDaoImp= new ClientDaoImp();
public static Map<String, Object> getMesElementsTest() {
mesElementsClient = new LinkedHashMap<String, Object>();
List<Client> clientlist = clientDaoImp.getAllClients();
Iterator<Client> i = clientlist.iterator();
while(i.hasNext()){
Client client=i.next();
mesElementsClient.put(client.getNomClient(),client.getNomClient());
}
return mesElementsClient;
}
1 ответ
Вы можете использовать только List
и есть что-то вроде этого:
...
public static List<Client> getMesElementsTest() {
return clientDaoImp.getAllClients();
}
...
на странице:
...
<p:selectOneMenu value="#{ticketBean.maValeur}" style="..." required="true" requiredMessage="...">
<f:selectItem itemLabel="Select Client" itemValue=""/>
<f:selectItems value="#{ticketBean.getMesElementsTest()}" var="client2" itemLabel="#{client2.nomClient}" itemValue="#{client2.nomClient}" style="...">
</f:selectItems>
...
И эта форма более эффективна, поскольку вам не нужно заполнять другую структуру данных.
Надеюсь, поможет