<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;"><div id="yiv877190190"><br>When I was upgrading JBoss from 4.2.3GA to 5.0.1GA and JDK from 5 to 6, I met <br><br>some errors in the deployment.<br><br>The error message is:<br>22:44:33,938 INFO [TomcatDeployment] deploy, ctxPath=/rs<br>22:44:33,985 ERROR [[/rs]] Exception starting filter BasicAuthFilter<br>java.lang.NoClassDefFoundError: com/example/context/Identity<br> at java.lang.Class.getDeclaredConstructors0(Native Method)<br> at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)<br> at java.lang.Class.getConstructor0(Unknown Source)<br> at java.lang.Class.newInstance0(Unknown Source)<br> at java.lang.Class.newInstance(Unknown
Source)<br> at <br><br>org.jboss.web.tomcat.service.TomcatInjectionContainer.newInstance(TomcatInjectionContainer.java:258)<br> at <br><br>org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:220)<br> at <br><br>org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:332)<br> at <br><br>org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:90)<br> at <br><br>org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3783)<br> at <br><br>org.apache.catalina.core.StandardContext.start(StandardContext.java:4413)<br> at
<br><br>org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:312)<br> at <br><br>org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:144)<br> at <br>......<br><br>My app is like this:<br>App.ear<br> - APP-INF<br> - META-INF<br> - Foo.war<br> - WEB-INF<br> - META-INF<br>The jars in war/WEB-INF/lib has dependencies on jars in ear/APP-INF/lib.<br><br>In ear/META-INF/, application.xml is like this:<br><?xml version="1.0" encoding="UTF-8"?><br><application xmlns="http://java.sun.com/xml/ns/javaee" <br><br>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5"<br>xsi:schemaLocation="http://java.sun.com/xml/ns/javaee <br><br>http://java.sun.com/xml/ns/javaee/application_5.xsd"><br> <display-name>My
APP</display-name><br> <module><br> <web><br> <web-uri>Foo.war</web-uri><br> <context-root>/rs</context-root><br> </web><br> </module><br></application><br><br>In ear/META-INF/, jboss-app.xml is like this:<br><?xml version="1.0" encoding="UTF-8"?><br><jboss-app><br> <loader-repository><br> com.example:loader=App.ear<br> <loader-repository-config><br> java2ParentDelegation=false<br> </loader-repository-config><br> </loader-repository><br> <library-directory><br>
APP-INF/lib<br> </library-directory> <br></jboss-app><br><br>In war/META-INF, the Manifest is like:<br>Manifest-Version: 1.0<br>Ant-Version: Apache Ant 1.7.0<br>Created-By: William<br>Title: Sample App<br>Copyright: Copyright 2009.<br>Class-Path: APP-INF/classes/<br><br>1) While I was deploying the ear in JBOSS 4.x & JDK5, it succeeded.<br>2) If I move jar files from ear/APP-INF/lib to war/WEB-INF/lib or reversingly, the deployment succeeds as well.<br><br>Seemingly, the error has relation with classloader, am I doing something wrong?<br><br>Thanks,<br>William<br><br></div></td></tr></table><br>
<hr size=1><a href="http://cn.rd.yahoo.com/mail_cn/tagline/card/*http://card.mail.cn.yahoo.com/"> 好玩贺卡等你发,邮箱贺卡全新上线!</a>