Jsf itemLabel="#{client2.nomClient}";:财产';nomClient';在类型java.lang.String上找不到
我将检索selectOneMenu的select值,但当我执行程序时,会出现以下异常:Jsf itemLabel="#{client2.nomClient}";:财产';nomClient';在类型java.lang.String上找不到,jsf,primefaces,Jsf,Primefaces,我将检索selectOneMenu的select值,但当我执行程序时,会出现以下异常: 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}"
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>
这是我最喜欢的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;
}
私有静态映射mesElementsTest;
私有静态ClientDaoImp ClientDaoImp=新ClientDaoImp();
公共静态映射getMesElementsTest(){
mesElementsClient=新的LinkedHashMap();
List clientlist=clientDaoImp.getAllClients();
迭代器i=clientlist.Iterator();
while(i.hasNext()){
Client=i.next();
mesElementsClient.put(client.getNomClient(),client.getNomClient());
}
返回mesElementsClient;
}
您只能使用列表,并具有以下内容:
...
public static List<Client> getMesElementsTest() {
return clientDaoImp.getAllClients();
}
...
。。。
公共静态列表getMesElementsTest(){
返回clientDaoImp.getAllClient();
}
...
第页:
...
<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>
...
。。。
...
而且,这个表单更有效,因为您不需要填充其他数据结构
希望它有帮助请发布证据证明{client2}
不是java.lang.String
的实例。您没有反驳问题中的异常消息。请发布client2
class的代码。我想没有nomClient
atribute.@ColdHack客户端2它不是类,它的名称是var我更改了类客户端,但不工作,执行消息仍然可以发布getMesElementsTest
方法的签名吗?@ColdHack这是签名:private static Map meselementstethk您非常适合您的帮助,但是my problems it not in function it in var=“Client2”类型java.lang.Strings的attribute中找不到视图如果问题仍然存在,请将问题标记为已回答,然后让我们再次尝试解决真正的问题。你试过用我的答案作为例子吗?
...
<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>
...