Problems with authentication using Sun One Application Server 8.1
Hi,
I've attempted to deploy jspwiki 2.8.2 onto an existing Sun One Application Server
8.1 instance. The .war file deploys successfully and I can run the Install.jsp fine.
However, when I choose the default (jaas) authentication method and attempt to login
with the admin user, I get the following error:
[#|2009-06-08T11:20:21.667-0600|SEVERE|sun-appserver-ee8.1_02|javax.enterprise.system.container.web|_ThreadID=15;|WEB5003:
Exception in handleAfterEvent.
com.sun.enterprise.InvocationException
at
com.sun.enterprise.util.InvocationManagerImpl.postInvoke(InvocationManagerImpl.java:159)
at
com.sun.web.server.J2EEInstanceListener.handleAfterEvent(J2EEInstanceListener.java:194)
at
com.sun.web.server.J2EEInstanceListener.instanceEvent(J2EEInstanceListener.java:74)
at
org.apache.catalina.util.InstanceSupport.fireInstanceEvent(InstanceSupport.java:220)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at
com.sun.enterprise.web.connector.httpservice.HttpServiceProcessor.process(HttpServiceProcessor.java:226)
at
com.sun.enterprise.web.HttpServiceWebContainer.service(HttpServiceWebContainer.java:2071)
|#]
[#|2009-06-08T11:20:21.669-0600|SEVERE|sun-appserver-ee8.1_02|javax.enterprise.system.container.web|_ThreadID=15;|StandardWrapperValve[jsp]:
Servlet.service() for servlet jsp threw exception
java.lang.ClassCastException: com.ecyrd.jspwiki.auth.WikiPrincipal
at
com.sun.web.server.J2EEInstanceListener.handleBeforeEvent(J2EEInstanceListener.java:130)
at
com.sun.web.server.J2EEInstanceListener.instanceEvent(J2EEInstanceListener.java:68)
at
org.apache.catalina.util.InstanceSupport.fireInstanceEvent(InstanceSupport.java:300)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:242)
at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at com.ecyrd.jspwiki.ui.WikiServletFilter.doFilter(WikiServletFilter.java:174)
at com.ecyrd.jspwiki.ui.WikiJSPFilter.doFilter(WikiJSPFilter.java:111)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at
com.sun.enterprise.web.connector.httpservice.HttpServiceProcessor.process(HttpServiceProcessor.java:226)
at
com.sun.enterprise.web.HttpServiceWebContainer.service(HttpServiceWebContainer.java:2071)
|#]
Poking through various blogs and notes on the web I've made a few config changes to
my App Server instance but none seem to have helped. What I've tried so far is:
- appending the jspwiki.policy statements to the instance's server.policy
- appending:
JSPWiki-container {
com.ecyrd.jspwiki.auth.login.WebContainerLoginModule SUFFICIENT;
com.ecyrd.jspwiki.auth.login.CookieAssertionLoginModule SUFFICIENT;
com.ecyrd.jspwiki.auth.login.AnonymousLoginModule SUFFICIENT;
};
JSPWiki-custom {
com.ecyrd.jspwiki.auth.login.UserDatabaseLoginModule REQUIRED;
};
to the instance's login.conf
- restarting the instance.
The results are still the same.
Any recommendations?
Thanks
Peter