我现在又两张表一个项目信息表是主表,,一个开发商表是从表关联字段是项目名称xiangmuMC,
当我那hibernate查询是,查询语句是:
     String hql = "from Xiangmuxinxi as x, Kaifashang as k where x.xiangmuMc=k.xiangmuxinxi.xiangmuMc";
我使用这个查询是报错,报错在下方,根据这个错我从控制台印的查询语句看出一些名堂,控制台打印这么个语句:
 select 
         .........
 from
        nanyueDB.dbo.xiangmuxinxi xiangmuxin0_,
        nanyueDB.dbo.kaifashang kaifashang1_,
        nanyueDB.dbo.xiangmuxinxi xiangmuxin2_ 
    where
        kaifashang1_.zhuyaoxiangmu=xiangmuxin2_.xiangmuID 
        and xiangmuxin0_.xiangmuMC=xiangmuxin2_.xiangmuMC
开发商表.项目名称!=项目信息表的项目名称,而是项目名称的ID其中项目ID是项目表的主键
报的错是:
严重: Servlet.service() for servlet jsp threw exception
java.lang.NumberFormatException: For input string: "xiangmuId"
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:153)
at javax.el.ArrayELResolver.getValue(ArrayELResolver.java:45)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
at org.apache.el.parser.AstValue.getValue(AstValue.java:114)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923)
at org.apache.jsp.admin.xiangmuxinxi_jsp._jspService(xiangmuxinxi_jsp.java:214)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at linkey.dw.filter.EncodingFilter.doFilter(EncodingFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
2010-4-6 5:48:49 org.apache.catalina.core.StandardWrapperValve invoke

解决方案 »

  1.   

     hibernate查询语言hql  http://www.phome.asia/forum/thread/16040.html
      

  2.   

    打印下ID,如果你的hql能拿出这个id就不是hql的错我觉得应该能拿到Id,只是在jsp页面作输出的时候报错。。检查下你的id类型 。jsp页面上id的输出
      

  3.   

    我已经知道是什么问题了是我的hql语句有问题,我查的是两个对象,而我只要其中的一个对象的数据,在from前面加select x from...就可以了
      

  4.   

    非常明显
    java.lang.NumberFormatException: For input string: "xiangmuId"    数据类型转换有问题.
      

  5.   

    我已经知道是什么问题了是我的hql语句有问题,我查的是两个对象,而我只要其中的一个对象的数据,在from前面加select x from...就可以了