无法在 GAE 上的 Hibernate 查询提取中查看字段的值
无法在 GAE 上的 Hibernate Query Fetch 中查看字段的值。
Query query = session.createSQLQuery("select s.id,e.firstName, e.middleName, e.lastName, es.title as empStatusTitle,e.transportMode as trModeId," +
" tr.title as trMode" +
" from SecurityPrincipals as s " +
" left join Employee as e on e.userId=s.id " +
" left join EmployeeStatus as es on e.employeeStatus = es.id " +
" left join TransportationModes as tr on e.transportMode = tr.id " +
" where s.id= :userId").setResultTransformer(new AliasToBeanResultTransformer(EmployeeDTO.class));
query.setParameter("userId", userId);
当我调用employeeDTO.getTrMode()时,employeeDTO.getEmpStatusTitle正确获取了所有值并在本地计算机中正常运行。但是当我尝试在GAE上部署时,该值没有进入view.jsf,但在本地运行时它就在那里。我EmployeeDTO.java 中有所有这些的 getter 和 setter。所有其他如名字、中间名、姓氏都没有问题。
我的employeeView.jsf是:
<h:outputText value="Transport Mode" />
<h:outputText id="transportMode" value="#{employeeView.employeeDTO.trMode}" style="font-weight:bold" />
<h:outputText value="Employee Status" />
<h:outputText id="employeeStatus" value="#{employeeView.employeeDTO.empStatusTitle}" style="font-weight:bold" />
Cannot view values for the fields in Hibernate Query Fetch on GAE.
Query query = session.createSQLQuery("select s.id,e.firstName, e.middleName, e.lastName, es.title as empStatusTitle,e.transportMode as trModeId," +
" tr.title as trMode" +
" from SecurityPrincipals as s " +
" left join Employee as e on e.userId=s.id " +
" left join EmployeeStatus as es on e.employeeStatus = es.id " +
" left join TransportationModes as tr on e.transportMode = tr.id " +
" where s.id= :userId").setResultTransformer(new AliasToBeanResultTransformer(EmployeeDTO.class));
query.setParameter("userId", userId);
When I call employeeDTO.getTrMode(),employeeDTO.getEmpStatusTitle got all values correctly and running properly in local machine.But when I try to deploy on GAE the value is not getting in the view.jsf but it is there when running locally.I have getters and setters for all these in EmployeeDTO.java. All others like firstName,middleName,lastName has no problem.
My employeeView.jsf is :
<h:outputText value="Transport Mode" />
<h:outputText id="transportMode" value="#{employeeView.employeeDTO.trMode}" style="font-weight:bold" />
<h:outputText value="Employee Status" />
<h:outputText id="employeeStatus" value="#{employeeView.employeeDTO.empStatusTitle}" style="font-weight:bold" />
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
由于一切都在本地运行,因此您的代码和查询可能没问题。由于它不适用于 GAE,因此可能存在一些不同的环境。数据库不同或配置不正确。您应该放入一些错误检查代码以确保查询确实有效。
Since it all works locally, then your code and query are probably fine. And since it does not work on GAE, then there is probably something environmental that's different. The database is different or not configured properly. You should put some error checking code in to make sure the query is actually working.