java ee - Error Servlet.init() when using Jersey(RESTful service) + Hibernate -
i have following problem : copy librarys of both hibernate , jersey web-inf/lib in project, when start project in tomcat , type "localhost:8080/de.vogella.jersey.jaxb/ind" error appears :
type exception report message servlet.init() servlet dummyname threw exception description server encountered internal error prevented fulfilling request. exception javax.servlet.servletexception: servlet.init() servlet dummyname threw exception org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:472) org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:99) org.apache.catalina.valves.accesslogvalve.invoke(accesslogvalve.java:947) org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:408) org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1009) org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:589) org.apache.tomcat.util.net.jioendpoint$socketprocessor.run(jioendpoint.java:310) java.util.concurrent.threadpoolexecutor.runworker(unknown source) java.util.concurrent.threadpoolexecutor$worker.run(unknown source) java.lang.thread.run(unknown source) root cause java.lang.nosuchmethoderror: org.objectweb.asm.classwriter.<init>(z)v net.sf.cglib.core.debuggingclasswriter.<init>(debuggingclasswriter.java:47) net.sf.cglib.core.defaultgeneratorstrategy.getclasswriter(defaultgeneratorstrategy.java:30) net.sf.cglib.core.defaultgeneratorstrategy.generate(defaultgeneratorstrategy.java:24) net.sf.cglib.core.abstractclassgenerator.create(abstractclassgenerator.java:216) net.sf.cglib.core.keyfactory$generator.create(keyfactory.java:145) net.sf.cglib.core.keyfactory.create(keyfactory.java:117) net.sf.cglib.core.keyfactory.create(keyfactory.java:108) net.sf.cglib.core.keyfactory.create(keyfactory.java:104) net.sf.cglib.proxy.enhancer.<clinit>(enhancer.java:69) org.hibernate.proxy.pojo.cglib.cgliblazyinitializer.getproxyfactory(cgliblazyinitializer.java:111) org.hibernate.proxy.pojo.cglib.cglibproxyfactory.postinstantiate(cglibproxyfactory.java:43) org.hibernate.tuple.entity.pojoentitytuplizer.buildproxyfactory(pojoentitytuplizer.java:162) org.hibernate.tuple.entity.abstractentitytuplizer.<init>(abstractentitytuplizer.java:135) org.hibernate.tuple.entity.pojoentitytuplizer.<init>(pojoentitytuplizer.java:55) org.hibernate.tuple.entity.entityentitymodetotuplizermapping.<init>(entityentitymodetotuplizermapping.java:56) org.hibernate.tuple.entity.entitymetamodel.<init>(entitymetamodel.java:269) org.hibernate.persister.entity.abstractentitypersister.<init>(abstractentitypersister.java:425) org.hibernate.persister.entity.singletableentitypersister.<init>(singletableentitypersister.java:109) org.hibernate.persister.persisterfactory.createclasspersister(persisterfactory.java:55) org.hibernate.impl.sessionfactoryimpl.<init>(sessionfactoryimpl.java:226) org.hibernate.cfg.configuration.buildsessionfactory(configuration.java:1218) pagination.pagination.init(pagination.java:30) org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:472) org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:99) org.apache.catalina.valves.accesslogvalve.invoke(accesslogvalve.java:947) org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:408) org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1009) org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:589) org.apache.tomcat.util.net.jioendpoint$socketprocessor.run(jioendpoint.java:310) java.util.concurrent.threadpoolexecutor.runworker(unknown source) java.util.concurrent.threadpoolexecutor$worker.run(unknown source) java.lang.thread.run(unknown source) this web.inf :
<?xml version="1.0" encoding="utf-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="webapp_id" version="2.5"> <display-name>hello jersey</display-name> <servlet> <servlet-name>dummyname</servlet-name> <servlet-class>pagination.pagination</servlet-class> </servlet> <servlet-mapping> <servlet-name>dummyname</servlet-name> <url-pattern>/ind</url-pattern> </servlet-mapping> <servlet> <servlet-name>jersey rest service</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.servletcontainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>de.vogella.jersey.jaxb</param-value> </init-param> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jersey rest service</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> </web-app> and pagination.java :
package pagination; import java.io.ioexception; import java.io.printwriter; import java.util.iterator; import java.util.list; import javax.servlet.servletconfig; import javax.servlet.servletexception; import javax.servlet.servletrequest; import javax.servlet.servletresponse; import javax.servlet.http.httpservlet; import org.hibernate.criteria; import org.hibernate.session; import org.hibernate.sessionfactory; import org.hibernate.cfg.configuration; import org.hibernate.criterion.projections; import de.vogella.jersey.jaxb.model.segmentdetails; public class pagination extends httpservlet { sessionfactory factory; //init method started public void init(servletconfig config)throws servletexception { factory = new configuration().configure().buildsessionfactory(); system.out.println("factory has been created...."); } //init method end //service method start public void service(servletrequest req, servletresponse res) throws servletexception,ioexception { int pageindex = 0; int totalnumberofrecords = 0; int numberofrecordsperpage = 4; string spageindex = req.getparameter("pageindex"); if(spageindex ==null) { pageindex = 1; }else { pageindex = integer.parseint(spageindex); } session ses = factory.opensession(); int s = (pageindex*numberofrecordsperpage) -numberofrecordsperpage; criteria crit = ses.createcriteria(segmentdetails.class); crit.setfirstresult(s); crit.setmaxresults(numberofrecordsperpage); list l = crit.list(); iterator = l.iterator(); printwriter pw = res.getwriter(); pw.println("<table border=1>"); pw.println("<tr>"); pw.println("<th>id</th><th>speed</th><th>reliability</th>"); pw.println("</tr>"); while(it.hasnext()) { segmentdetails p = (segmentdetails)it.next(); pw.println("<tr>"); pw.println("<td>"+p.getsegmentid()+"</td>"); pw.println("<td>"+p.getspeed()+"</td>"); pw.println("<td>"+p.getreliability()+"</td>"); pw.println("</tr>"); } pw.println("<table>"); criteria crit1 = ses.createcriteria(segmentdetails.class); crit1.setprojection(projections.rowcount()); list l1=crit1.list(); // pw.println(l1.size()); //returns 1, list() used execute query if true returns 1 iterator it1 = l1.iterator(); if(it1.hasnext()) { object o=it1.next(); totalnumberofrecords = integer.parseint(o.tostring()); } int noofpages = totalnumberofrecords/numberofrecordsperpage; if(totalnumberofrecords > (noofpages * numberofrecordsperpage)) { noofpages = noofpages + 1; } for(int i=1;i<=noofpages;i++) { string myurl = "ind?pageindex="+i; pw.println("<a href="+myurl+">"+i+"</a>"); } ses.close(); pw.close(); } //service method end //destroy method start public void destroy() { factory.close(); } //destroy end } please me ! in advance
check version of asm jar. looks 1 using not compatible hibernate.
Comments
Post a Comment