I'll look into the Spring version issue. The dependencyManagement piece should be ensuring that doesn't happen.
Marvin, if you do mvn:dependency:tree on your overlay pom, do you see those wrong Spring jars? Cheers, Scott On Sat, Feb 27, 2010 at 11:19 AM, Marvin Addison <[email protected]>wrote: > > 2010-02-26 14:04:43,080 ERROR > [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/cas]] - > SafeDispatcherServlet: > The Spring DispatcherServlet we wrap threw on init. > But for our having caught this error, the servlet would not have > initialized. > org.springframework.beans.PropertyBatchUpdateException; nested > PropertyAccessException details (1) are: > PropertyAccessException 1: > org.springframework.beans.MethodInvocationException: Property > 'publishContext' threw exception; nested exception is > java.lang.reflect.MalformedParameterizedTypeException > > My hunch is this is a problem with SafeDispatcherServlet itself that > is caused by changes to the underlying Spring FrameworkServlet, > > http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/servlet/FrameworkServlet.html > . > What's interesting is that we use SafeDispatcherServlet in our > customized CAS instance, and I got a clean deploy yesterday afternoon > after upgrading to 3.4-RC1. We use the LDAP integration module for > auth as well. > > My best guess is that there's some other startup problem in this > scenario that's exercising the error handling code path of > SafeDispatcherServlet, and it's failing in a way that masks the > underlying problem. I did some further investigation to support this > idea. I replaced SafeDispatcherServlet with DispatcherServlet and got > a clean deploy, but when I attempted to browse to /cas/, the following > is displayed in the browser: > > javax.servlet.ServletException: Servlet.init() for servlet cas threw > exception > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > > > org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857) > > > org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565) > > org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509) > java.lang.Thread.run(Thread.java:613) > > root cause > > java.lang.NoSuchFieldError: APPLICATION_CONTEXT_ID_PREFIX > > > org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:431) > > Brief Googling turned up this thread, > http://forum.springsource.org/showthread.php?p=274549, which fingered > different Spring versions as the culprit. Sure enough, WEB-INF/lib in > the deployable built with maven-war-overlay has a mix of spring jars: > > marvin:~/apps/tomcat/webapps$ ls cas/WEB-INF/lib/spring* > cas/WEB-INF/lib/spring-aop-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-asm-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-beans-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-binding-2.0.8.RELEASE.jar > cas/WEB-INF/lib/spring-context-2.5.6.SEC01.jar > cas/WEB-INF/lib/spring-context-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-context-support-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-core-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-expression-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-jdbc-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-js-2.0.8.RELEASE.jar > cas/WEB-INF/lib/spring-ldap-core-1.3.0.RELEASE.jar > cas/WEB-INF/lib/spring-ldap-core-tiger-1.3.0.RELEASE.jar > cas/WEB-INF/lib/spring-orm-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-security-cas-client-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-security-config-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-security-core-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-security-web-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-tx-2.5.6.jar > cas/WEB-INF/lib/spring-tx-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-web-2.5.6.SEC01.jar > cas/WEB-INF/lib/spring-web-3.0.1.RELEASE.jar > cas/WEB-INF/lib/spring-webflow-2.0.8.RELEASE.jar > cas/WEB-INF/lib/spring-webmvc-3.0.1.RELEASE.jar > > I'm at a loss to explain the inclusion of mixed spring jars. The > cas.war built in cas3/cas-server-webapp contains exclusively > 3.0.1.RELEASE in WEB-INF/lib. Additionally, mvn dependency:list on > the cas-server-support-ldap module shows exclusively 3.0.1.RELEASE > dependencies. Suggestions for why we're getting a mix when using > maven-war-overlay plugin are welcome. > > In summary it looks like we've got two problems here: > > 1. Problem with SafeDispatcherServlet error handling > 2. Mixed Spring jars when using maven-war-overlay in some cases > > M > > -- > You are currently subscribed to [email protected] as: > [email protected] > To unsubscribe, change settings or access archives, see > http://www.ja-sig.org/wiki/display/JSG/cas-dev > -- You are currently subscribed to [email protected] as: [email protected] To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/cas-dev
