Java 嵌套异常为org.hibernate.QueryParameterException:找不到命名参数[limit]
堆栈跟踪 com.riomed.cellma.exception.GenericBusinessException: org.springframework.orm.hibernate3.HibernateQueryException:无法 定位命名参数[限制];嵌套异常是 org.hibernate.QueryParameterException:找不到命名的 参数[限制]在 com.riomed.cellma.session.CellmaFacade.findestablishmentprofessionalsbysernameestid(CellmaFacade.java:30866) 在 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机 方法)在 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于java.base/java.lang.reflect.Method.invoke(Method.java:566) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:149) 在 org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:171) 在 org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) 在 com.sun.proxy.$Proxy321.findestablishmentprofessionalsbysernameestid(未知) 来源)在 com.riomed.cellma.cellma.util.GeneralWebLayerUtils.addAjaxExtraDetailsEntryForQucId(GeneralWebLayerUtils.java:4252) 在 com.riomed.cellma.cellma.util.AssessmentsSaveQuestionsUtils.SaveReferralRecordforQuestionResponsed(AssessmentsSaveQuestionsUtils.java:178) 在 com.riomed.cellma.actions.SaveQuestionsResultAction.execute(SaveQuestionsResultAction.java:239) 在 org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421) 在 org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226) 在 org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) 在 org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:660) http.HttpServlet.service(HttpServlet.java:741)位于 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:167) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) 在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:128) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.SensitiveDataCheckFilter.doFilter(SensitiveDataCheckFilter.java:1944) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 位于com.riomed.cellma.filter.CSRFFilter.doFilter(CSRFFilter.java:1726) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 位于com.riomed.cellma.filter.XSSFilter.doFilter(XSSFilter.java:2301) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.PatientSelectCheckFilter.doFilter(PatientSelectCheckFilter.java:416) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.authorizationfilter.doFilter(authorizationfilter.java:1598) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.AuthenticationFilter.doFilter(AuthenticationFilter.java:287) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 com.riomed.cellma.filter.MessageDisplayFilter.doFilter(MessageDisplayFilter.java:138) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 在 org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176) 在 org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) 在 org.tuckey.web.filters.urlrewrite.UrlRewriter.processJava 嵌套异常为org.hibernate.QueryParameterException:找不到命名参数[limit],java,hibernate,hql,Java,Hibernate,Hql,堆栈跟踪 com.riomed.cellma.exception.GenericBusinessException: org.springframework.orm.hibernate3.HibernateQueryException:无法 定位命名参数[限制];嵌套异常是 org.hibernate.QueryParameterException:找不到命名的 参数[限制]在 com.riomed.cellma.session.CellmaFacade.findestablishmentpro
public java.util.Collection findEstablishmentProfessionalsByUsernameEstId(
java.lang.String espUseUsername, java.lang.Integer espEstId, Integer limit) throws GenericBusinessException {
try {
ArrayList paramList = new ArrayList();
List valueList = new ArrayList();
paramList.add(new String("espEstId"));
valueList.add(espEstId);
paramList.add(new String("espUseUsername"));
valueList.add(espUseUsername);
String queryString = "from "
+ EstablishmentProfessionalsBean.class.getName()
+ " e where e.espEstId = :espEstId and e.espRecordStatus='approved' and e.espUseUsername=:espUseUsername and e.espShow=1";
// Add a an order by on all primary keys to assure reproducable
// results.
queryString += " order by e.espSurname ASC,e.espInitials ASC,e.espExtClinicName ASC";
if(limit != null && limit.intValue() > 0){
paramList.add(new String("limit"));
valueList.add(limit);
}
String params [] = (String []) paramList.toArray (new String [paramList.size ()]);
List list = hibernateTemplate.findByNamedParam(queryString,params, valueList.toArray());
return list;
} catch (DataAccessException e) {
log.error("DataAccessException", e);
throw new GenericBusinessException(e);
} finally {
log.debug("finished findEstablishmentProfessionalsByUsernameEstId((java.lang.String espUseUsername, java.lang.Integer espEstId, Integer limit)");
}
}
following are the stack trace
e where e.espEstId = :espEstId and e.espRecordStatus='approved'
and e.espUseUsername=:espUseUsername and e.espShow=1
paramList.add(new String("limit"));
valueList.add(limit);