0
IM的数据表,如果这是SRY一种适合你的方便情况下,填充学习JSF环境primefaces从nativeQuery
我试着去填充primefaces从本机查询的数据表,这是我得到的那一刻
//My native query is defined in my entity
@NamedNativeQueries({@NamedNativeQuery(name="Tallt089.bandejaCitas",
query ="select bandeja.ep_id_tallt089 idBandeja ...)})
...
...
我把这个nativeQuery这样
public List**<TablaBandejaCitas>** bandejaCitas(String cia, String agencia, String division) {
Query query = em.createNamedQuery("Tallt089.bandejaCitas");
query.setParameter(1,cia);
query.setParameter(2,agencia);
query.setParameter(3,division);
return query.getResultList();
//this works fine retrieves correctly my query
}
并使用它在我的managedBean
public List**<TablaBandejaCitas>** bandejaCitas(String compania,
String agencia,String division){
return agendamientoSession.bandejaCitas(compania,agencia,division);
}
然后引用这是我的JSF页面上这样
<p:dataTable id="bandeja_citas"
value="#{AgendamientoMBean.bandejaCitas(UsuarioMBean.compania,UsuarioMBean.agencia,
UsuarioMBean.divisionPK.diDivision)}"
var="bandeja"
paginator="true" rows="15" >
<f:facet name="header">
Bandeja Citas por confirmar/Llamadas por realizar
</f:facet>
<p:column headerText="Id Bandeja" >
<h:outputText value ="#{bandeja.idBandeja}"/>
</p:column>
<p:column headerText="Cliente" sortBy="#{bandeja.cliente}"
filterBy="#{bandeja.cliente}">
<h:outputText value ="#{bandeja.cliente}"/>
</p:column>
...
...
...
</p:dataTable>
我意识到了var属性需要像映射查询的领域,因为JSF页面上的警告告诉我,这是一个unkwon财产
<h:outputText value ="#{bandeja.**cliente**}"/>
我不知道如何查询存储在该变量,这样的数据可以显示
现在我有一个为输入字符串例外喜欢它的读取原始数据,而不是用充满查询字段正确的变量formmatted列表中的分量..
希望你能提前understandme
apreciatte您的意见:d
是您的bandejaCitas方法只是返回对象对象的默认列表?您可能需要进行一些投射以确保其已知您拥有Bandeja实体对象。返回(列表)query.getResultList(); –
Rich
2012-01-12 21:10:16
嗨@Rich谢谢你的回答。是的,它只是返回一个列表Objects对象,你能告诉我一个关于如何实现这个强制转换的例子吗?所以我可以在jsf页面正确地调用它,我更新了我的代码添加一个演员表,但仍然不工作 –
arkantos
2012-01-12 22:38:52
当然,这是我刚刚注意到的相比,我看到使用只返回对象的getResultList()的代码,所以在至少有一个步骤是让Java知道这些对象实际上是一个您拥有属性的类,用于查询的每个投影。如果本机查询未返回映射到Entity/Bandeja类中属性的表列映射,那么我认为这是一个问题。 回过头来看,如果你能解释你为什么使用NativeQuery,并且一般会试图从数据库中抽取数据(一行或一个多元查询?),那么回答你的问题可能会有所帮助 – Rich 2012-01-12 23:09:05