hi, i am not sure how to fix ur problem.. but i use the following steps in remote debugging.. may b it helps u.
1. in catalina.sh :JAVA_OPTS="$JAVA_OPTS -Xmx512m -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" 2. in eclipse under windows> preferences> in dialogue box on left click on remote debugging> right click & new> on right side give the ip of the tomcat, port as '8000' now run > open debug dialogue> remote application > configured debug thats it. hope it helps ravi Rubens wrote: > > Does anyone know how to get Hot deployment to work with Tomcat? > > I am using Struts2, Spring, Hibernate, and MySQL > > Tomcat Version: 6.0.16 > Java version: JDK 1.6.0_06 > Eclipse version: 3.4.0 > Tomcat Sysdeo Plugin version: 3.2.1 > Struts version: 2.0.11.1 > Spring Framework version: 2.5.1 > Hibernate version: 3.2.6.ga > MySQL JDBC driver: 5.1.5 > C3P0 connection pool: 0.9.1.2 > > > I started tomcat outside eclipse using a remote JPDA debugging connection > (catalina jpda start). And I started tomcat from within Eclipse using the > SYSDEO tomcat pluggin. In both instances, I get the following message > right after I change a line of code and save it when debug stepping. I > have also tried to use JDK 1.5 and had the same error. > > > "Obsolete Methods on the Stack" > Reason: > The virtual machine was unable to remove all the stack frames running old > code from the call stack. > The virtual machine is not supplying the debugger with valid data for > those frames... > > I see the following exception on the logs when the above error is > displayed: > > > May 18, 2008 10:55:30 AM org.apache.catalina.core.StandardContext reload > INFO: Reloading this Context has started > May 18, 2008 10:55:30 AM org.apache.catalina.core.StandardWrapper unload > INFO: Waiting for 1 instance(s) to be deallocated > May 18, 2008 10:55:31 AM org.apache.catalina.core.StandardWrapper unload > INFO: Waiting for 1 instance(s) to be deallocated > May 18, 2008 10:55:32 AM org.apache.catalina.core.StandardWrapper unload > INFO: Waiting for 1 instance(s) to be deallocated > May 18, 2008 10:55:32 AM org.apache.catalina.core.ApplicationContext log > INFO: Closing Spring root WebApplicationContext > May 18, 2008 10:55:32 AM org.apache.catalina.loader.WebappClassLoader > loadClass > INFO: Illegal access: this web application instance has been stopped > already. Could not load com.mysql.jdbc.profiler.ProfileEventSink. The > eventual following stack trace is caused by an error thrown for debugging > purposes as well as to attempt to terminate the thread which caused the > illegal access, and has no functional impact. > java.lang.IllegalStateException > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1246) > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206) > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) > at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4235) > at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1453) > at > com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:549) > at > com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:234) > at > com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:470) > at > com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:964) > at > com.mchange.v2.resourcepool.BasicResourcePool.destroyResource(BasicResourcePool.java:989) > at > com.mchange.v2.resourcepool.BasicResourcePool.access$100(BasicResourcePool.java:32) > at > com.mchange.v2.resourcepool.BasicResourcePool$5.run(BasicResourcePool.java:1174) > Exception in thread "Resource Destroyer in BasicResourcePool.close()" > java.lang.NoClassDefFoundError: com/mysql/jdbc/profiler/ProfileEventSink > at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4235) > at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1453) > at > com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:549) > at > com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:234) > at > com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:470) > at > com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:964) > at > com.mchange.v2.resourcepool.BasicResourcePool.destroyResource(BasicResourcePool.java:989) > at > com.mchange.v2.resourcepool.BasicResourcePool.access$100(BasicResourcePool.java:32) > at > com.mchange.v2.resourcepool.BasicResourcePool$5.run(BasicResourcePool.java:1174) > Caused by: java.lang.ClassNotFoundException: > com.mysql.jdbc.profiler.ProfileEventSink > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360) > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206) > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) > ... 9 more > May 18, 2008 10:55:34 AM org.apache.catalina.core.StandardContext > addApplicationListener > INFO: The listener > "org.acegisecurity.ui.session.HttpSessionEventPublisher" is already > configured for this context. The duplicate definition has been ignored. > May 18, 2008 10:55:34 AM org.apache.catalina.core.StandardContext > addApplicationListener > INFO: The listener "com.softlagos.web.listener.WebAppHttpSessionListener" > is already configured for this context. The duplicate definition has been > ignored. > May 18, 2008 10:55:34 AM org.apache.catalina.core.StandardContext > addApplicationListener > INFO: The listener "com.softlagos.web.common.SpringBeanFactory" is already > configured for this context. The duplicate definition has been ignored. > May 18, 2008 10:55:35 AM org.apache.catalina.loader.WebappClassLoader > loadClass > INFO: Illegal access: this web application instance has been stopped > already. Could not load com.mysql.jdbc.SQLError. The eventual following > stack trace is caused by an error thrown for debugging purposes as well as > to attempt to terminate the thread which caused the illegal access, and > has no functional impact. > java.lang.IllegalStateException > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1246) > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206) > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) > at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3134) > at com.mysql.jdbc.MysqlIO.quit(MysqlIO.java:1616) > at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4223) > at com.mysql.jdbc.ConnectionImpl.cleanup(ConnectionImpl.java:1257) > at com.mysql.jdbc.ConnectionImpl.finalize(ConnectionImpl.java:2663) > at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method) > at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83) > at java.lang.ref.Finalizer.access$100(Finalizer.java:14) > at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160) > May 18, 2008 10:55:36 AM org.apache.catalina.core.ApplicationContext log > INFO: Initializing Spring root WebApplicationContext > May 18, 2008 10:55:56 AM org.apache.catalina.core.StandardContext > filterStart > SEVERE: Exception starting filter struts2Filter > Caught exception while loading file struts-default.xml - [unknown > location] > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:839) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:131) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201) > at > org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275) > at > org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) > at > org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108) > at > org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709) > at > org.apache.catalina.core.StandardContext.start(StandardContext.java:4356) > at > org.apache.catalina.core.StandardContext.reload(StandardContext.java:3099) > at > org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:404) > at > org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1309) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) > at java.lang.Thread.run(Thread.java:619) > Caused by: java.lang.ClassCastException: > org.apache.xerces.parsers.XML11Configuration cannot be cast to > org.apache.xerces.xni.parser.XMLParserConfiguration > at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source) > at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source) > at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source) > at > org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown > Source) > at > com.sun.org.apache.xalan.internal.xsltc.trax.SAX2DOM.<init>(SAX2DOM.java:69) > at > com.sun.org.apache.xalan.internal.xsltc.runtime.output.TransletOutputHandlerFactory.getSerializationHandler(TransletOutputHandlerFactory.java:187) > at > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getOutputHandler(TransformerImpl.java:392) > at > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerHandlerImpl.setResult(TransformerHandlerImpl.java:137) > at > com.opensymphony.xwork2.util.DomHelper$DOMBuilder.setup(DomHelper.java:213) > at > com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:198) > at > com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:189) > at > com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:175) > at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:115) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:830) > ... 20 more > May 18, 2008 10:55:56 AM org.apache.catalina.core.StandardContext start > SEVERE: Error filterStart > May 18, 2008 10:55:56 AM org.apache.catalina.core.StandardContext start > SEVERE: Context [/webphone] startup failed due to previous errors > May 18, 2008 10:55:56 AM org.apache.catalina.core.ApplicationContext log > INFO: Closing Spring root WebApplicationContext > log4j:ERROR LogMananger.repositorySelector was null likely due to error in > class reloading, using NOPLoggerRepository. > > > > > -- View this message in context: http://www.nabble.com/-S2--Hot-Deployment-in-Tomcat--tp17304850p17338734.html Sent from the Struts - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]