Can you post the stacktrace? Do any of the classes in jar in lib/ext depend on classes that are inside the webapp or one of its jars? Do you have the jar in question in both lib/ext and inside the webapp as well?
It would be worthwhile if you compare your webapp to the standard test-spec.war that is part of the demo-base in the standard distribution - it uses some jars inside demo-base/lib/ext. Jan On 23 July 2014 21:37, Ney André de Mello Zunino <[email protected]> wrote: > Hi and sorry for the missing details; here they are: > > I'm using Jetty 9.2.1 running on OpenJDK 7. > > My shared JAR has been placed in my '${jetty.home}/lib/ext' which, > AFAIC, is the same as '${jetty.base}/lib/ext', since I'm not specifying > a different base. Am I right? The classes in the shared JAR have nothing > special about them. They don't use annotations. > > My webapp is a very simple Servlet 2.4 application. It contains a filter > which indeed makes use of a couple of classes in the shared JAR. And > here's where the 'NoClassDefFound' error occurs. The app's also got a > Servlet which references classes in the shared JAR. And that's about it. > > As I said in my original message, the JAR is definitely being added to > the classpath reported by 'java -jar start.jar --list-classpath'. I've > read about the fact that web applications prioritize libraries and > resources within their 'WEB-INF', but I expected the container's > classpath to be visible as well. Surely, I must be missing something. > > Anything else I should add? > > Thank you! > > On 22-07-2014 20:00, Jan Bartel wrote: >> You don't say which version of jetty, nor the circumstances in which >> the class should be found - is it a servlet/filter/listener or a pojo >> or via an annotation or ...? >> >> Have you put your jar in your ${jetty.base}/lib/ext or in the top >> level ${jetty.home}/lib/ext? Did you enable the ext module in >> ${jetty.base} or in ${jetty.home}? >> >> Jan >> >> On 23 July 2014 00:03, Ney André de Mello Zunino <[email protected]> >> wrote: >>> Hello. >>> >>> I'm new to Jetty and I have a question regarding class paths. I wish to >>> have a custom library (JAR) shared by multiple applications running in >>> the container. I added the JAR file to '<JETTY_HOME>/lib/ext' and >>> verified that it is actually being added to the CLASSPATH by running >>> 'java -jar start.jar --list-classpath'. However, 'NoClassDefFound' >>> errors occur when the web application is run. >>> >>> How can I make my custom JAR visible to the web application? Ideally, I >>> wish I could do that without modifying the WAR deployment so that newly >>> added applications would also have the custom JAR on their CLASSPATH >>> without extra configuration. >>> >>> Thank you in advance and sorry if the question is too trivial. I admit I >>> haven't been able to find a proper solution (given my requirements). >>> >>> -- >>> Zunino >>> _______________________________________________ >>> jetty-users mailing list >>> [email protected] >>> To change your delivery options, retrieve your password, or unsubscribe >>> from this list, visit >>> https://dev.eclipse.org/mailman/listinfo/jetty-users >> >> >> > > -- > Ney André de Mello Zunino > Analista de Pesquisa e Desenvolvimento > Softplan/Poligraph > +55 48 3027-8000 > www.softplan.com.br > twitter.com/softplanonline > _______________________________________________ > jetty-users mailing list > [email protected] > To change your delivery options, retrieve your password, or unsubscribe from > this list, visit > https://dev.eclipse.org/mailman/listinfo/jetty-users -- Jan Bartel <[email protected]> www.webtide.com 'Expert Jetty/CometD developer,production,operations advice' _______________________________________________ jetty-users mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users
