Monday 15 February 2010

java.lang.classcastexception java.lang.string cannot be cast to java.lang.integer in Criteria Spring MVC + Hibernate + JQGrid + MySQL application -



java.lang.classcastexception java.lang.string cannot be cast to java.lang.integer in Criteria Spring MVC + Hibernate + JQGrid + MySQL application -

i developing spring mvc + hibernate + jqgrid + mysql application. filter records, using criteria , passing json filter string generate restrictions. in mysql table, field brcode integer , other fields of type string.

i getting "java.lang.classcastexception java.lang.string cannot cast java.lang.integer" error in line cr.list.size().

please help me resolve error without hampering generic nature of functions, since of conditions can applied of fields. have attached error log below:

org.apache.catalina.core.standardwrappervalve.invoke servlet.service() servlet [dispatcher] in context path [/nioerpj] threw exception [request processing failed; nested exception java.lang.classcastexception: java.lang.string cannot cast java.lang.integer] root cause java.lang.classcastexception: java.lang.string cannot cast java.lang.integer @ org.hibernate.type.descriptor.java.integertypedescriptor.unwrap(integertypedescriptor.java:36) @ org.hibernate.type.descriptor.sql.integertypedescriptor$1.dobind(integertypedescriptor.java:64) @ org.hibernate.type.descriptor.sql.basicbinder.bind(basicbinder.java:90) @ org.hibernate.type.abstractstandardbasictype.nullsafeset(abstractstandardbasictype.java:286) @ org.hibernate.type.abstractstandardbasictype.nullsafeset(abstractstandardbasictype.java:281) @ org.hibernate.loader.loader.bindpositionalparameters(loader.java:1994) @ org.hibernate.loader.loader.bindparametervalues(loader.java:1965) @ org.hibernate.loader.loader.preparequerystatement(loader.java:1900) @ org.hibernate.loader.loader.executequerystatement(loader.java:1861) @ org.hibernate.loader.loader.executequerystatement(loader.java:1838) @ org.hibernate.loader.loader.doquery(loader.java:909) @ org.hibernate.loader.loader.doqueryandinitializenonlazycollections(loader.java:354) @ org.hibernate.loader.loader.dolist(loader.java:2553) @ org.hibernate.loader.loader.dolist(loader.java:2539) @ org.hibernate.loader.loader.listignorequerycache(loader.java:2369) @ org.hibernate.loader.loader.list(loader.java:2364) @ org.hibernate.loader.criteria.criterialoader.list(criterialoader.java:126) @ org.hibernate.internal.sessionimpl.list(sessionimpl.java:1682) @ org.hibernate.internal.criteriaimpl.list(criteriaimpl.java:380) @ com.nej.branchmst.dao.branchmstdaoimpl.searchbranchmsts(branchmstdaoimpl.java:103) @ com.nej.branchmst.service.branchmstserviceimpl.searchbranchmsts(branchmstserviceimpl.java:61) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:483) @ org.springframework.aop.support.aoputils.invokejoinpointusingreflection(aoputils.java:317) @ org.springframework.aop.framework.reflectivemethodinvocation.invokejoinpoint(reflectivemethodinvocation.java:190) @ org.springframework.aop.framework.reflectivemethodinvocation.proceed(reflectivemethodinvocation.java:157) @ org.springframework.transaction.interceptor.transactioninterceptor$1.proceedwithinvocation(transactioninterceptor.java:98) @ org.springframework.transaction.interceptor.transactionaspectsupport.invokewithintransaction(transactionaspectsupport.java:262) @ org.springframework.transaction.interceptor.transactioninterceptor.invoke(transactioninterceptor.java:95) @ org.springframework.aop.framework.reflectivemethodinvocation.proceed(reflectivemethodinvocation.java:179) @ org.springframework.aop.framework.jdkdynamicaopproxy.invoke(jdkdynamicaopproxy.java:207) @ com.sun.proxy.$proxy83.searchbranchmsts(unknown source) @ com.nej.controller.branchmstcontroller.getfilteredrecords(branchmstcontroller.java:95) @ com.nej.controller.branchmstcontroller.getall(branchmstcontroller.java:60) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:483) @ org.springframework.web.method.support.invocablehandlermethod.invoke(invocablehandlermethod.java:215) @ org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:132) @ org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:104) @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlemethod(requestmappinghandleradapter.java:749) @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:689) @ org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:83) @ org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:938) @ org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:870) @ org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:961) @ org.springframework.web.servlet.frameworkservlet.doget(frameworkservlet.java:852) @ javax.servlet.http.httpservlet.service(httpservlet.java:618) @ org.springframework.web.servlet.frameworkservlet.service(frameworkservlet.java:837) @ javax.servlet.http.httpservlet.service(httpservlet.java:725) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:301) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.apache.tomcat.websocket.server.wsfilter.dofilter(wsfilter.java:52) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330) @ org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118) @ org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:154) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:199) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:110) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.header.headerwriterfilter.dofilterinternal(headerwriterfilter.java:57) @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:108) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.context.request.async.webasyncmanagerintegrationfilter.dofilterinternal(webasyncmanagerintegrationfilter.java:50) @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:108) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192) @ org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160) @ org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:344) @ org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:261) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:219) @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:106) @ org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:503) @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:136) @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:78) @ org.apache.catalina.valves.abstractaccesslogvalve.invoke(abstractaccesslogvalve.java:610) @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:88) @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:526) @ org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1033) @ org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:652) @ org.apache.coyote.http11.http11aprprotocol$http11connectionhandler.process(http11aprprotocol.java:277) @ org.apache.tomcat.util.net.aprendpoint$socketprocessor.dorun(aprendpoint.java:2451) @ org.apache.tomcat.util.net.aprendpoint$socketprocessor.run(aprendpoint.java:2440) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ org.apache.tomcat.util.threads.taskthread$wrappingrunnable.run(taskthread.java:61) @ java.lang.thread.run(thread.java:745) 08-oct-2014 21:22:21.420 severe [http-apr-8080-exec-14] org.apache.catalina.core.standardwrappervalve.invoke servlet.service() servlet [dispatcher] in context path [/nioerpj] threw exception [request processing failed; nested exception java.lang.classcastexception: java.lang.string cannot cast java.lang.integer] root cause java.lang.classcastexception: java.lang.string cannot cast java.lang.integer @ org.hibernate.type.descriptor.java.integertypedescriptor.unwrap(integertypedescriptor.java:36) @ org.hibernate.type.descriptor.sql.integertypedescriptor$1.dobind(integertypedescriptor.java:64) @ org.hibernate.type.descriptor.sql.basicbinder.bind(basicbinder.java:90) @ org.hibernate.type.abstractstandardbasictype.nullsafeset(abstractstandardbasictype.java:286) @ org.hibernate.type.abstractstandardbasictype.nullsafeset(abstractstandardbasictype.java:281) @ org.hibernate.loader.loader.bindpositionalparameters(loader.java:1994) @ org.hibernate.loader.loader.bindparametervalues(loader.java:1965) @ org.hibernate.loader.loader.preparequerystatement(loader.java:1900) @ org.hibernate.loader.loader.executequerystatement(loader.java:1861) @ org.hibernate.loader.loader.executequerystatement(loader.java:1838) @ org.hibernate.loader.loader.doquery(loader.java:909) @ org.hibernate.loader.loader.doqueryandinitializenonlazycollections(loader.java:354) @ org.hibernate.loader.loader.dolist(loader.java:2553) @ org.hibernate.loader.loader.dolist(loader.java:2539) @ org.hibernate.loader.loader.listignorequerycache(loader.java:2369) @ org.hibernate.loader.loader.list(loader.java:2364) @ org.hibernate.loader.criteria.criterialoader.list(criterialoader.java:126) @ org.hibernate.internal.sessionimpl.list(sessionimpl.java:1682) @ org.hibernate.internal.criteriaimpl.list(criteriaimpl.java:380) @ com.nej.branchmst.dao.branchmstdaoimpl.searchbranchmsts(branchmstdaoimpl.java:103) @ com.nej.branchmst.service.branchmstserviceimpl.searchbranchmsts(branchmstserviceimpl.java:61) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:483) @ org.springframework.aop.support.aoputils.invokejoinpointusingreflection(aoputils.java:317) @ org.springframework.aop.framework.reflectivemethodinvocation.invokejoinpoint(reflectivemethodinvocation.java:190) @ org.springframework.aop.framework.reflectivemethodinvocation.proceed(reflectivemethodinvocation.java:157) @ org.springframework.transaction.interceptor.transactioninterceptor$1.proceedwithinvocation(transactioninterceptor.java:98) @ org.springframework.transaction.interceptor.transactionaspectsupport.invokewithintransaction(transactionaspectsupport.java:262) @ org.springframework.transaction.interceptor.transactioninterceptor.invoke(transactioninterceptor.java:95) @ org.springframework.aop.framework.reflectivemethodinvocation.proceed(reflectivemethodinvocation.java:179) @ org.springframework.aop.framework.jdkdynamicaopproxy.invoke(jdkdynamicaopproxy.java:207) @ com.sun.proxy.$proxy83.searchbranchmsts(unknown source) @ com.nej.controller.branchmstcontroller.getfilteredrecords(branchmstcontroller.java:95) @ com.nej.controller.branchmstcontroller.getall(branchmstcontroller.java:60) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:483) @ org.springframework.web.method.support.invocablehandlermethod.invoke(invocablehandlermethod.java:215) @ org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:132) @ org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:104) @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlemethod(requestmappinghandleradapter.java:749) @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:689) @ org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:83) @ org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:938) @ org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:870) @ org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:961) @ org.springframework.web.servlet.frameworkservlet.doget(frameworkservlet.java:852) @ javax.servlet.http.httpservlet.service(httpservlet.java:618) @ org.springframework.web.servlet.frameworkservlet.service(frameworkservlet.java:837) @ javax.servlet.http.httpservlet.service(httpservlet.java:725) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:301) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.apache.tomcat.websocket.server.wsfilter.dofilter(wsfilter.java:52) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330) @ org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118) @ org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:154) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:199) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:110) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.header.headerwriterfilter.dofilterinternal(headerwriterfilter.java:57) @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:108) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.context.request.async.webasyncmanagerintegrationfilter.dofilterinternal(webasyncmanagerintegrationfilter.java:50) @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:108) @ org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342) @ org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192) @ org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160) @ org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:344) @ org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:261) @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:219) @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:106) @ org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:503) @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:136) @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:78) @ org.apache.catalina.valves.abstractaccesslogvalve.invoke(abstractaccesslogvalve.java:610) @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:88) @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:526) @ org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1033) @ org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:652) @ org.apache.coyote.http11.http11aprprotocol$http11connectionhandler.process(http11aprprotocol.java:277) @ org.apache.tomcat.util.net.aprendpoint$socketprocessor.dorun(aprendpoint.java:2451) @ org.apache.tomcat.util.net.aprendpoint$socketprocessor.run(aprendpoint.java:2440) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ org.apache.tomcat.util.threads.taskthread$wrappingrunnable.run(taskthread.java:61) @ java.lang.thread.run(thread.java:745)

the relevant portion of branchmstdaoimpl.java file below:

@override public list<branchmst> searchbranchmsts(string filters, int pagesize, int page, string sidx, string sord) { list<branchmst> ls = null; criteria cr = getcurrentsession().createcriteria(branchmst.class); jqgridfilter jqgridfilter = jqgridobjectmapper.map(filters); (jqgridfilter.rule rule: jqgridfilter.getrules()) { cr.add(getrestriction(rule.getfield(), rule.getop(), (string) rule.getdata())); } noofrecords = cr.list().size(); cr.setfirstresult((page - 1) * pagesize); cr.setmaxresults(pagesize); ls = cr.list(); homecoming ls; } public simpleexpression getrestriction(string field, string op, string data){ if(op.equals("cn")){ homecoming restrictions.like(field, data, matchmode.anywhere); }else if(op.equals("eq")){ homecoming restrictions.eq(field, data); }else if(op.equals("ne")){ homecoming restrictions.ne(field, data); }else if(op.equals("lt")){ homecoming restrictions.lt(field, data); }else if(op.equals("le")){ homecoming restrictions.le(field, data); }else if(op.equals("gt")){ homecoming restrictions.gt(field, data); }else if(op.equals("ge")){ homecoming restrictions.ge(field, data); }else{ homecoming null; } }

i getting error on line "noofrecords = cr.list().size();" in function searchbranchmsts.

in string fields no error, error comes if seek filter using brcode field integer. pl. help, resolving error keeping generic nature of above function filter conditions can more 1 , may in order.

java mysql spring hibernate jqgrid

No comments:

Post a Comment