Hello, Actually I have developed an Application integrating "GWT+Spring +Hibernate" in the Hosted mode , with the help of the below given links by you - Part One :http://eggsylife.blogspot.com/2007/10/well-this-tutorial- aims-at-helping.html Part Two: http://eggsylife.blogspot.com/2007/11/hibernate-spring-google-web-toolkit.html Part Three: http://eggsylife.blogspot.com/2008/02/hibernate-spring-google-web-toolkit.html Now I am getting many warnings in this application, but the warning I am unable to solve is :
[WARN]StandardContext[]Exception while dispatching incoming RPC call com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.util.List com.company.client.rpc.TeacherService.getPupils(java.lang.Integer)' threw an unexpected exception: java.lang.NoClassDefFoundError: org/ springframework/context/ApplicationContext at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure (RPC.java:360) at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse (RPC.java:546) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall (RemoteServiceServlet.java:164) at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost (RemoteServiceServlet.java:86) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.google.gwt.dev.shell.GWTShellServlet.service (GWTShellServlet.java:289) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal (StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java: 929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java: 160) at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol $Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt (PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run (ThreadPool.java:683) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ ApplicationContext at com.company.server.gwt.TeacherServiceImpl.getPupils (TeacherServiceImpl.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse (RPC.java:527) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall (RemoteServiceServlet.java:164) at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost (RemoteServiceServlet.java:86) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.google.gwt.dev.shell.GWTShellServlet.service (GWTShellServlet.java:289) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal (StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext (StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java: 929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java: 160) at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol $Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt (PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run (ThreadPool.java:683) at java.lang.Thread.run(Unknown Source) I am sending you the Structure of few of the classes due to which I feel I got the warning, those are : 1) applicationContext.xml - <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation=" http://www.springframework.org/schema/beans classpath:spring-beans-2.0.xsd http://www.springframework.org/schema/tx classpath:spring-tx-2.0.xsd http://www.springframework.org/schema/aop classpath:spring-aop-2.0.xsd"> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>org.hsqldb.jdbcDriver</value> </property> <property name="url"> <value>>jdbc:hsqldb:hsql://localhost/testdatabase</value> </property> <property name="username"> <value>root</value> </property> <property name="password"> <value>root</value> </property> <property name="initialSize"> <value>2</value> </property> <property name="maxActive"> <value>5</value> </property> <property name="maxIdle"> <value>2</value> </property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource"/> </property> <property name="configLocation"> <value>hibernate.cfg.xml</value> </property> <property name="configurationClass"> <value>org.hibernate.cfg.AnnotationConfiguration</value> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.HSQLDialect</prop> <prop key="show_sql">true</prop> </props> </property> </bean> <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- enable the configuration of transactional behavior based on annotations --> <tx:annotation-driven transaction-manager="txManager" proxy- target-class="false" /> <bean id="pupilCollection" class="com.company.server.domain.PupilCollectionImpl" scope="prototype"> <property name="sessionFactory"><ref bean="sessionFactory"/></property> </bean> </beans> 2) MyApplication.java - package com.company.client; import java.util.Iterator; import com.company.client.dto.PupilDTO; import com.company.client.model.Observer; import com.company.client.model.Subject; import com.company.client.model.TeacherModel; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.core.client.GWT; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.ClickListener; import com.google.gwt.user.client.ui.HTML; import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.gwt.user.client.ui.RootPanel; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.VerticalPanel; import com.google.gwt.user.client.ui.Widget; public class MyApplication implements EntryPoint, Observer { private TeacherModel model = null; private VerticalPanel display = null; private VerticalPanel resultsPanel = null; /** * This is the entry point method. */ public void onModuleLoad() { model = new TeacherModel(); display = new VerticalPanel(); model.addObserver(this); HorizontalPanel searchPanel = new HorizontalPanel(); final TextBox teacherIdBox= new TextBox(); final Button button = new Button("Search"); GWT.log("button added",null); button.addClickListener(new ClickListener() { public void onClick(Widget sender) { resultsPanel.add(new HTML("Searching....")); GWT.log("addClickListener call",null); System.out.println("addClickListener call1_"+teacherIdBox.getText ()); GWT.log("addClickListener call"+teacherIdBox.getText(),null); model.getPupils(new Integer(teacherIdBox.getText())); GWT.log("after model.getPupils ",null); } }); searchPanel.add(teacherIdBox); searchPanel.add(button); resultsPanel = new VerticalPanel(); display.add(searchPanel); display.add(resultsPanel); GWT.log("database",null); RootPanel.get("database").add(display); GWT.log("database",null); } public void update(Subject o) { if ( model.getPupils() != null && model.getPupils().size() > 0) { GWT.log("database",null); resultsPanel.clear(); for( Iterator<?> it = model.getPupils().iterator(); it.hasNext ();) { PupilDTO dto = (PupilDTO)it.next(); GWT.log("database",null); resultsPanel.add(new HTML(dto.getName())); } } } } 3) ContextUtil.java - package com.company.spring; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class ContextUtil{ private static ApplicationContext context = null; private ContextUtil( ) { super(); } public static ApplicationContext getContext( ) { // Load up our Application context if (context == null) { context = new ClassPathXmlApplicationContext ("applicationContext.xml") ; } return context; } } 4) TeacherService.java - package com.company.client.rpc; import java.util.List; import com.google.gwt.user.client.rpc.RemoteService; public interface TeacherService extends RemoteService{ /** * * @gwt.typeArgs <com.company.client.dto.PupilDTO> * */ public List<?> getPupils(Integer teacherId); } 5) TeacherServiceAsync.java - package com.company.client.rpc; import com.google.gwt.user.client.rpc.AsyncCallback; public interface TeacherServiceAsync{ public void getPupils(Integer teacherId, AsyncCallback<?> callback); } 6) TeacherServiceImpl.java - package com.company.server.gwt; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.springframework.beans.BeanUtils; // import com.google.gwt.user.client.rpc.SerializationException; import com.company.client.rpc.TeacherService; import com.company.client.dto.PupilDTO; import com.company.server.domain.PupilCollection; import com.company.server.persistent.Pupil; import com.company.spring.ContextUtil; import com.google.gwt.user.server.rpc.RemoteServiceServlet; public class TeacherServiceImpl extends RemoteServiceServlet implements TeacherService{ /** * */ private static final long serialVersionUID = 1L; public List<PupilDTO> getPupils(Integer teacherId) { System.out.println(" getPupils method of TeacherServiceImpl "); List<PupilDTO> results = null; try { PupilCollection<?> collection = (PupilCollection<?>) ContextUtil.getContext().getBean("pupilCollection"); collection.getPupils(teacherId); results = new ArrayList<PupilDTO>(); for ( Iterator<?> it = collection.getList().iterator(); it.hasNext (); ) { Pupil pupil = (Pupil) it.next(); PupilDTO dto = new PupilDTO(); BeanUtils.copyProperties(dto, pupil); System.out.println(" dto : "+dto); results.add(dto); } } catch(Exception e) { System.out.println(" catch method of TeacherServiceImpl "); e.printStackTrace(); throw new RuntimeException(e); } return results; } } Please help me in solving this problem. Thanks, Poonam. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~----------~----~----~----~------~----~------~--~---