Hello, I have just solved it. I have included the *.hbm.xml files in the .\WEB-INF\classes directory of Axis2.
Thank you thelime wrote: > > Hi, > > I had a similar issue recently while trying to configure and use > iBatis with an Axis2 web service. I posted a similar thread but never > got any responses. From what I understand it's not finding your > hibernate configuration because of the way the classloading is > happening inside the web service. If you add the following line to > your services.xml file under the <service> node it should work: > > <parameter name="ServiceTCCL">composite</parameter> > > You can read about this at: http://wso2.org/blog/dims/1131 > > Once I did that my iBatis config files could be loaded but then I lost > the JNDI datasource that I had set up and I decided that I would > rather have connection pooling from the Tomcat server than use iBatis. > I wish there was a way to easily include .properties files and .xml > files onto the classpath from inside the .aar automatically so it > didn't just ignore them. Once you set that parameter see if you can > use a datasource lookup. > > Good luck! > > > On Thu, Oct 29, 2009 at 6:40 AM, dpeinador <dampe2...@yahoo.es> wrote: >> >> Hello all, >> >> I continue trying to fix the mis configuration. I have isolated the Web >> service, First I have create a dummy Echo Web service, and when this Web >> service has been working. I hav added the hibernate classes. >> >> This is the Echo Class (Echo,java): >> >> package com.autentia.ws.servidor; >> >> import com.db.PoiManager; >> import java.util.List; >> >> public class Echo { >> public String hello(String nombre) { >> PoiManager pm = new PoiManager(); >> List l = pm.listPois(); >> return "Hola " + nombre + ". Numero de POIs: " + l.size(); >> } >> } >> >> And the Poi classes: >> >> PoiManager.java: >> >> package com.db; >> >> import java.util.List; >> import org.hibernate.HibernateException; >> import org.hibernate.SessionFactory; >> import org.hibernate.Transaction; >> import org.hibernate.cfg.Configuration; >> import org.hibernate.classic.Session; >> >> public class PoiManager { >> private SessionFactory sessionFactory; >> >> public PoiManager() { >> try { >> System.out.println("Inicalizando Hibernate"); >> sessionFactory = new >> Configuration().configure().buildSessionFactory(); >> System.out.println("terminado la inicializacion de >> Hibernate"); >> } catch (HibernateException e) { >> e.printStackTrace(); >> } >> } >> >> public List listPois() { >> try { >> Session session = sessionFactory.openSession(); >> Transaction tx = session.beginTransaction(); >> List result = session.find("from poi"); >> tx.commit(); >> session.close(); >> return result; >> } catch (HibernateException e) { >> throw new RuntimeException(e.getMessage()); >> } >> } >> } >> >> Poi.java: >> public class Poi { >> private Long idItem; >> private String descripcion; >> >> public Long getIdItem() { >> return idItem; >> } >> public void setIdItem(Long idItem) { >> this.idItem = idItem; >> } >> public String getDescripcion() { >> return descripcion; >> } >> public void setDescripcion(String descripcion) { >> this.descripcion = descripcion; >> } >> >> } >> >> This is my Poi.hbm.xml file: >> <?xml version="1.0"?> >> <!DOCTYPE hibernate-mapping PUBLIC >> "-//hibernate/hibernate Mapping DTD 2.0//EN" >> "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> >> <hibernate-mapping> >> <class name="com.cb.Poi" table="poi"> >> <id name="id" column="IDITEM" type="long"> >> <generator class="identity"/> >> </id> >> <property name="descripcion" column="DESCRIPCION" type="string"/> >> </class> >> </hibernate-mapping> >> >> I have created also the hibernate.cfg.xml file and I have put it in the >> WEB_INF/classes Axis directory: >> >> <?xml version='1.0' encoding='utf-8'?> >> <!DOCTYPE hibernate-configuration >> PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" >> "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> >> <hibernate-configuration> >> <session-factory> >> <property >> name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property> >> <property name="hibernate.connection.url"> >> jdbc:hsqldb://192.168.0.XX:3306/mydb?useUnicode=true&characterEncoding=UTF-8</property> >> <property name="hibernate.connection.username">user</property> >> <property name="hibernate.connection.password">password</property> >> <property >> name="dialect">org.hibernate.dialect.HSQLDialect</property> >> <property name="show_sql">true</property> >> <property >> name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property> >> <property >> name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property> >> <property name="hibernate.hbm2ddl.auto">update</property> >> <mapping resource="com/db/data/Poi.hbm.xml"/> >> </session-factory> >> </hibernate-configuration> >> >> Whit this classes I build the .aar file, I upload it and create the >> client >> from the wsdl file. When I execute the client I receive this log: >> >> [INFO] Hibernate 3.1 >> [INFO] hibernate.properties not found >> [INFO] using CGLIB reflection optimizer >> [INFO] using JDK 1.4 java.sql.Timestamp handling >> [INFO] configuring from resource: /hibernate.cfg.xml >> [INFO] Configuration resource: /hibernate.cfg.xml >> [INFO] Reading mappings from resource: com/db/data/Poi.hbm.xml >> org.hibernate.MappingException: Resource: com/db/data/Poi.hbm.xml not >> found >> at >> org.hibernate.cfg.Configuration.addResource(Configuration.java:478) >> at >> org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1443) >> at >> org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1411) >> at >> org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1392) >> at >> org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1368) >> at >> org.hibernate.cfg.Configuration.configure(Configuration.java:1288) >> at >> org.hibernate.cfg.Configuration.configure(Configuration.java:1274) >> at com.db.PoiManager.<init>(PoiManager.java:16) >> at com.autentia.ws.servidor.Echo.saludar(Echo.java:25) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:585) >> at >> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194) >> at >> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102) >> at >> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) >> at >> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) >> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) >> at >> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) >> at >> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) >> at >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) >> at >> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) >> at >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) >> at >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) >> at java.lang.Thread.run(Thread.java:595) >> [ERROR] Exception occurred while trying to invoke service method saludar >> java.lang.reflect.InvocationTargetException >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:585) >> at >> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194) >> at >> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102) >> at >> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) >> at >> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) >> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) >> at >> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) >> at >> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) >> at >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) >> at >> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) >> at >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) >> at >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: java.lang.NullPointerException >> at com.db.PoiManager.listPois(PoiManager.java:25) >> at com.autentia.ws.servidor.Echo.saludar(Echo.java:26) >> ... 27 more >> [ERROR] Exception occurred while trying to invoke service method saludar >> org.apache.axis2.AxisFault: Exception occurred while trying to invoke >> service method saludar >> at >> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:158) >> at >> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) >> at >> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) >> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) >> at >> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) >> at >> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) >> at >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) >> at >> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) >> at >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) >> at >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: java.lang.reflect.InvocationTargetException >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:585) >> at >> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194) >> at >> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102) >> ... 21 more >> Caused by: java.lang.NullPointerException >> at com.db.PoiManager.listPois(PoiManager.java:25) >> at com.autentia.ws.servidor.Echo.saludar(Echo.java:26) >> ... 27 more >> >> Can you advice me about to fix this issue? Are there any oter way to >> access >> to the database? >> -- >> View this message in context: >> http://www.nabble.com/Axis2-And-Hibernate-tp26080197p26111476.html >> Sent from the Axis - User mailing list archive at Nabble.com. >> > > -- View this message in context: http://old.nabble.com/Axis2-And-Hibernate-tp26080197p26148879.html Sent from the Axis - User mailing list archive at Nabble.com.