【问题标题】:Hibernate For input string:休眠对于输入字符串:
【发布时间】:2014-02-01 05:53:05
【问题描述】:

我有一个问题要在 dataTable 中显示一些值

这是dataTable的代码

<h:form>  
    <p:dataTable var="car" value="#{competence.getAllCompetence()}">  
    <p:column headerText="Model">  
            <h:outputText value="#{car.idCompetence}" />  
        </p:column> 
        </p:dataTable>

这是查询

public List<Object> findAllCompetence() {
        // TODO Auto-generated method stub
        return getHibernateTemplate().find("select c,pro from Competence as c  join c.technologies as pro ");
    }

并且消息错误是

Grave: Error Rendering View[/default.xhtml]
java.lang.NumberFormatException: For input string: "idCompetence"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at javax.el.ArrayELResolver.coerce(ArrayELResolver.java:159)
    at javax.el.ArrayELResolver.getValue(ArrayELResolver.java:45)
    at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:173)
    at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:200)
    at org.apache.el.parser.AstValue.getValue(AstValue.java:183)
    at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185)


Hibernate: select competence0_.idCompetence as idCompet1_3_0_, technologi1_.idTechnologie as idTechno1_7_1_, competence0_.llibelleCompetence as llibelle2_3_0_, competence0_.description as descript3_3_0_, competence0_.niveauExpert as niveauEx4_3_0_, technologi1_.idCompetence as idCompet2_7_1_, technologi1_.libelleTechnologie as libelleT3_7_1_ from gestioncollaborateur.competence competence0_ inner join gestioncollaborateur.technologie technologi1_ on competence0_.idCompetence=technologi1_.idCompetence

我不知道问题是什么,我认为它与返回对象有关

【问题讨论】:

  • 您可以尝试运行正在打印的查询吗?你可能会从中得到线索。
  • 我如何运行它!赫里希凯诗
  • 嗯,在您的second question 中,您使用了另一个查询。
  • 运行您的查询,其中显示 Hibernate : 在您的问题中。使用 SQLDeveloper 或 Toad 直接在您的数据库上运行它。

标签: spring hibernate jsf jakarta-ee hql


【解决方案1】:

您将返回一个List&lt;Object&gt;,数据表会对其进行迭代。每个 Object 实际上是一个 Object[],其中第一个数组条目是 Competence 对象,第二个条目是匹配的 Technologies 条目。

JSF 尝试使用"idCompetence" 作为数组的索引但失败了。这就是您的异常的来源。试试#{car[0].idCompetence} 看看是否有帮助。

【讨论】:

  • 如果您采用@mabi 解决方案,我认为您应该接受它作为答案:)
猜你喜欢
  • 2013-05-31
  • 1970-01-01
  • 1970-01-01
  • 2013-05-13
  • 2012-12-05
  • 2013-09-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多