----- Original Message ----- > From: Warren Bell <warrenbe...@gmail.com> > To: Tomcat Users List <users@tomcat.apache.org> > Cc: > Sent: Monday, December 12, 2011 7:26 PM > Subject: Re: Tomcat xerces conflicts and Endorsed,Standards Override Mechanism > > Here are all the jars in my app. There are a lot. The jars that came in > as dependencies of smooks are: > > milyn-smooks-csv-1.5.jar > openscv-1.8.jar > milyn-smooks-flatfile-1.5.jar > milyn-smooks-javabean-1.5.jar > milyn-smooks-core-1.5.jar > milyn-commons-1.5.jar > freemaker-2.3.15.jar > javassist-3.10.0.GA.jar > xstream-1.4.1.jar > xmlpull-1.1.3.1.jar > xpp3_min-1.1.4c.jar > mvel2-2.0.17.jar > jaxen-1.1.1.jar > xercesImpl-2.6.2.jar > jta-1.1.jar > > All of the other jars in my app: > > activation-1.1.jar mvel2-2.0.17.jar > antlr-2.7.2.jar opencsv-1.8.jar > aopalliance-1.0.jar oro-2.0.8.jar > aspectjrt-1.6.1.jar postgresql-8.3-603.jdbc3.jar > aspectjweaver-1.6.1.jar servlet-api-2.3.jar > cglib-nodep-2.1_3.jar servlet-api-2.5.jar > commons-beanutils-1.7.0.jar slf4j-api-1.5.8.jar > commons-chain-1.1.jar slf4j-log4j12-1.5.10.jar > commons-codec-20041127.091804.jar spring-2.5.6.SEC01.jar > commons-collections-3.2.1.jar spring-aspects-2.5.6.SEC01.jar > commons-dbcp-all-1.3-r699049.jar spring-beans-2.0.8.jar > commons-digester-1.8.jar spring-context-2.0.8.jar > commons-email-1.1.jar spring-core-2.0.8.jar > commons-exec-1.0.jar spring-dao-2.0.8.jar > commons-io-1.4.jar spring-ibatis-2.0.8.jar > commons-lang-2.4.jar spring-jdbc-2.0.8.jar > commons-logging-1.1.jar sslext-1.2-0.jar > commons-math-2.0.jar struts-core-1.3.8.jar > commons-validator-1.3.1.jar struts-taglib-1.3.8.jar > cron4j-2.2.3.jar struts-tiles-1.3.8.jar > dom4j-1.1.jar swarm-1.4-rc1.jar > edtFTPj-2.0.4.jar velocity-1.6.1.jar > freemarker-2.3.15.jar velocity-tools-2.0-beta3.jar > hive-1.4-rc1.jar wasp-1.4-rc1.jar > ibatis-sqlmap-2.3.0.jar webservices-api.jar > inmethod-grid-1.4.2-SNAPSHOT.jar webservices-extra-api.jar > javassist-3.10.0.GA.jar webservices-extra.jar > jaxen-1.1.1.jar webservices-rt.jar > jconn2-1.jar wicket-1.4.7.jar > joda-time-1.6.jar wicket-datetime-1.4.7.jar > jta-1.1.jar wicket-extensions-1.4.7.jar > junit-3.8.1.jar wicket-ioc-1.4.7.jar > log4j-1.2.14.jar wicket-spring-1.4.7.jar > mail-1.4.jar wicket-spring-annot-1.3.5.jar > milyn-commons-1.5.jar wicomsec-1.4-rc1.jar > milyn-smooks-core-1.5.jar wiquery-1.0.1.jar > milyn-smooks-csv-1.5.jar xercesImpl-2.6.2.jar > milyn-smooks-flatfile-1.5.jar xmlpull-1.1.3.1.jar > milyn-smooks-javabean-1.5.jar xpp3_min-1.1.4c.jar > minis-1.4.1.jar xstream-1.4.1.jar > > I am using Maven to manage my apps dependencies. My app does not depend > directly on some of these jars, like the struts jars. They got dragged > in as dependencies of something else. As for the exception: > > java.lang.IncompatibleClassChangeError: Class org.jaxen.JaxenHandler > does not implement the requested interface org.jaxen.saxpath.XPathHandler > at org.jaxen.saxpath.base.XPathReader.parse(XPathReader.java:98) > at > org.milyn.cdr.xpath.SelectorStepBuilder._buildSteps(SelectorStepBuilder.java:110) > at > org.milyn.cdr.xpath.SelectorStepBuilder.<clinit>(SelectorStepBuilder.java:43) > at > org.milyn.cdr.SmooksResourceConfiguration.setSelector(SmooksResourceConfiguration.java:447) > at > org.milyn.cdr.SmooksResourceConfiguration.<init>(SmooksResourceConfiguration.java:304) > at > org.milyn.cdr.SmooksResourceConfigurationStore.addHandlerFactoryConfig(SmooksResourceConfigurationStore.java:143) > at > org.milyn.cdr.SmooksResourceConfigurationStore.registerInstalledHandlerFactories(SmooksResourceConfigurationStore.java:139) > at > org.milyn.cdr.SmooksResourceConfigurationStore.<init>(SmooksResourceConfigurationStore.java:112) > at > org.milyn.container.standalone.StandaloneApplicationContext.<init>(StandaloneApplicationContext.java:59) > at org.milyn.Smooks.<init>(Smooks.java:118) > at org.milyn.Smooks.<init>(Smooks.java:170) > at > com.scanman.cron.task.ImportPriceChangesFromSupplier.executeTask(ImportPriceChangesFromSupplier.java:70) > at com.scanman.cron.task.ScanManTask.execute(ScanManTask.java:79) > at it.sauronsoftware.cron4j.TaskExecutor$Runner.run(Unknown Source) > at java.lang.Thread.run(Thread.java:680) > > This is the first exception thrown before I started moving jars around > into the endorsed folder. The endorsed folder is empty when this > exception is thrown. > > Thanks, > > Warren Bell > > On 12/12/11 11:49 AM, Christopher Schultz wrote: >> Warren, >> >> On 12/9/11 4:47 PM, Warren Bell wrote: >>> This makes me think I am on the right track and the exceptions I >>> am getting seem to point to the wrong classes being loaded. >> >> Maybe, but maybe not. >> >>> My question is, is their a set of XML related jars that I should >>> take out of my app and place in this endorsed directory or is there >>> a different way of fixing this problem ? >> >> What other JARs do you have in your webapp? >> >> Also, what's the full stack trace of these exceptions? If you place >> things into "endorsed" then they will plug-into JAXP which means > that >> Tomcat will use them internally to load things (like server.xml) and >> so you'll need to have all dependencies (like xml-apis.jar for >> instance) in that endorsed directory, too. Otherwise, you could get >> weird stuff like this happening. >> >> -chris >> >
If you're using Maven to manage the dependencies, how about marking the offending jars <scope>provided</scope>, and see if the later versions provided in the JRE (and in Tomcat for the servlet spec) meet the expected requirements. Your IDE should be happy with it (at least NetBeans and Eclipse would be), and Maven will not include those jars in your war file. . . . . just a thought. /mde/ --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org