I bet I'm just missing something completely obvious. I just did an out of
the box build of RC1 and it runs just fine. Attaching pom.xml and
web.xml...
On Fri, Feb 26, 2010 at 2:48 PM, Patrick Berry <[email protected]> wrote:
> I wanted to make sure this wasn't some problem with Tomcat 5.5.x, so I
> fired up Tomcat 6 and got the same error.
>
> java version "1.6.0_17"
> Java(TM) SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
> Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01-101, mixed mode)
>
> Good times.
>
>
> On Fri, Feb 26, 2010 at 2:12 PM, Patrick Berry <[email protected]> wrote:
>
>> I did a diff between my 3.3.5 config and the 3.4 RC1 web.xml and I'm just
>> not seeing what's wrong here:
>>
>> 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
>> at
>> org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:1143)
>> at
>> org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:857)
>> at
>> org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:76)
>> at
>> org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:62)
>> at
>> org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:119)
>> at javax.servlet.GenericServlet.init(GenericServlet.java:212)
>> at
>> org.jasig.cas.web.init.SafeDispatcherServlet.init_aroundBody0(SafeDispatcherServlet.java:64)
>> at
>> org.jasig.cas.web.init.SafeDispatcherServlet.init_aroundBody1$advice(SafeDispatcherServlet.java:44)
>> at
>> org.jasig.cas.web.init.SafeDispatcherServlet.init(SafeDispatcherServlet.java:1)
>> at
>> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
>> at
>> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
>> at
>> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3996)
>> at
>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4266)
>> at
>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
>> at
>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
>> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
>> at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:831)
>> at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:720)
>> at
>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>> at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1218)
>> at
>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
>> at
>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
>> at
>> org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1306)
>> at
>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1570)
>> at
>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1579)
>> at
>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1559)
>> at java.lang.Thread.run(Thread.java:637)
>> Caused by: java.lang.reflect.MalformedParameterizedTypeException
>> at
>> sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.validateConstructorArguments(ParameterizedTypeImpl.java:42)
>> at
>> sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.<init>(ParameterizedTypeImpl.java:35)
>> at
>> sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.make(ParameterizedTypeImpl.java:77)
>> at
>> sun.reflect.generics.factory.CoreReflectionFactory.makeParameterizedType(CoreReflectionFactory.java:86)
>> at
>> sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:122)
>> at
>> sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:31)
>> at
>> sun.reflect.generics.repository.ClassRepository.getSuperInterfaces(ClassRepository.java:82)
>> at java.lang.Class.getGenericInterfaces(Class.java:794)
>> at
>> org.springframework.core.GenericTypeResolver.getTypeVariableMap(GenericTypeResolver.java:231)
>> at
>> org.springframework.core.GenericTypeResolver.resolveParameterType(GenericTypeResolver.java:81)
>> at
>> org.springframework.beans.GenericTypeAwarePropertyDescriptor.getWriteMethodParameter(GenericTypeAwarePropertyDescriptor.java:147)
>> at
>> org.springframework.beans.GenericTypeAwarePropertyDescriptor.getPropertyType(GenericTypeAwarePropertyDescriptor.java:129)
>> at
>> org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:154)
>> at
>> org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:1066)
>> ... 26 more
>>
>>
>
--
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
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>edu.csuchico.cas</groupId>
<artifactId>local-cas</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warName>cas</warName>
<overlays>
<overlay>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-webapp</artifactId>
<excludes>
<!-- prevent the default properties file and use the one from propertyFileConfigurer.xml instead -->
<exclude>WEB-INF/cas.properties</exclude>
<exclude>WEB-INF/classes/log4j.properties</exclude>
</excludes>
</overlay>
</overlays>
<!-- This section enables the cas.home property defined to be used in the propetyFileConfigurer.xml file -->
<webResources>
<resource>
<filtering>true</filtering>
<directory>src/main/webapp</directory>
<includes>
<include>WEB-INF/spring-configuration/propertyFileConfigurer.xml</include>
<include>WEB-INF/cas-servlet.xml</include>
<include>WEB-INF/deployerConfigContext.xml</include>
<include>WEB-INF/web.xml</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-webapp</artifactId>
<version>${cas.version}</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-support-ldap</artifactId>
<version>${cas.version}</version>
<type>jar</type>
<scope>runtime</scope>
</dependency>
</dependencies>
<properties>
<cas.version>3.4-RC1</cas.version>
<cas.config>/h/cas</cas.config>
</properties>
<repositories>
<repository>
<id>ja-sig</id>
<url>http://developer.ja-sig.org/maven2/</url>
</repository>
</repositories>
</project>
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Central Authentication System (CAS) 3.0</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-configuration/*.xml
/WEB-INF/deployerConfigContext.xml
</param-value>
</context-param>
<!--
place this into the contextConfigLocation to enable remote services
/WEB-INF/remoteServices.xml,
classpath:org/codehaus/xfire/spring/xfire.xml
place this into the contextConfigLocation to enable the event publishing
-->
<!--
- Location of the Log4J config file, for initialization and refresh checks.
- Applied by Log4jConfigListener.
-->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>file://${cas.config}/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jExposeWebAppRoot</param-name>
<param-value>false</param-value>
</context-param>
<filter>
<filter-name>CAS Client Info Logging Filter</filter-name>
<filter-class>com.github.inspektr.common.web.ClientInfoThreadLocalFilter</filter-class>
</filter>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/services/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Client Info Logging Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--
- Configures Log4J for this web app.
- As this context specifies a context-param "log4jConfigLocation", its file path
- is used to load the Log4J configuration, including periodic refresh checks.
-
- Would fall back to default Log4J initialization (non-refreshing) if no special
- context-params are given.
-
- Exports a "web app root key", i.e. a system property that specifies the root
- directory of this web app, for usage in log file paths.
- This web app specifies "cas.root" (see log4j.properties file).
-->
<!-- Leave the listener commented-out if using JBoss -->
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<!--
- Loads the CAS ApplicationContext.
- The deployer choice here is how to handle Throwables thrown by Spring's
- ContextLoaderListener. The Spring ContextLoaderListener will throw an exception when the
- application context cannot be loaded, say because the bean XML files are not valid XML or do not
- refer to real classes and properties or because a bean configured via Spring throws an exception
- at construction, property setting, or on an afterPropertiesSet() lifecycle method.
-
- If you'd like these errors to be fatal and prevent the CAS servlet context from loading at all,
- use org.springframework.web.context.ContextLoaderListener.
-
- If you'd like these errors to result in all requests for CAS getting a "CAS is Unavailable" response,
- use org.jasig.cas.web.init.SafeContextLoaderListener
-->
<listener>
<listener-class>
org.jasig.cas.web.init.SafeContextLoaderListener
</listener-class>
</listener>
<!--
- This is the Spring dispatcher servlet which delegates all requests to the
- Spring WebMVC controllers as configured in cas-servlet.xml.
-
- The choice made above about how to handle a broken ApplicationContext at
- context initialization applies here as well, since this servlet is load-on-startup.
-
- If you'd like these errors to be fatal and prevent the CAS servlet from loading at all,
- use org.springframework.web.servlet.DispatcherServlet.
-
- If you'd like these errors to result in all requests for CAS getting a "CAS is Unavailable" response,
- use org.jasig.cas.web.init.SafeDispatcherServlet
-->
<servlet>
<servlet-name>cas</servlet-name>
<servlet-class>
org.jasig.cas.web.init.SafeDispatcherServlet
</servlet-class>
<init-param>
<param-name>publishContext</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/logout</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/validate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/serviceValidate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/samlValidate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/proxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/proxyValidate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/CentralAuthenticationService</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/add.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/viewStatistics.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/logout.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/loggedOut.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/manage.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/edit.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/openid/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cas</servlet-name>
<url-pattern>/services/deleteRegisteredService.html</url-pattern>
</servlet-mapping>
<session-config>
<!-- Default to 5 minute session timeouts -->
<session-timeout>5</session-timeout>
</session-config>
<error-page>
<exception-type>org.springframework.context.ApplicationContextException</exception-type>
<location>/WEB-INF/view/jsp/brokenContext.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/WEB-INF/view/jsp/errors.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/WEB-INF/view/jsp/default/ui/casBlockedView.jsp</location>
</error-page>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>