Problems with authentication using Sun One Application Server 8.1

View: New views
3 Messages — Rating Filter:   Alert me  

Problems with authentication using Sun One Application Server 8.1

by Peter Mah :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

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


Re: Problems with authentication using Sun One Application Server 8.1

by Harry Metske :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Peter,

it doesn't look like a well known JSPWiki issue, I did find some similar
issues, all with other applications/frameworks running in Sun ONE AS :
- http://forums.sun.com/thread.jspa?threadID=5046275&tstart=1335
- http://lists.samba.org/archive/jcifs/2002-December/001573.html
- http://ozgwei.blogspot.com/2008/01/how-to-make-acegi-work-on-sun.html

the last one is the most descriptive , pointing to the Sun One AS causing
the problem because it tries to cast the Principal to it's own
com.sun.web.security.WebPrincipal.
Several other google results also point to the Sun AS being the culprit.
Maybe you can file a bug report to Sun ?


Harry


2009/6/8 Peter Mah <peter.mah@...>

> 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
>
>

Re: Problems with authentication using Sun One Application Server 8.1

by Peter Mah :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Harry,

Thanks for the response. I haven't been keeping up with what Sun has been doing with
their App Servers. It looks like the issue is fixed (or doesn't exist) in GlassFish.
Possibly due to less integration with the Java Enterprise System?

In any case, I'll go down that venue a little and see if a resolution can be found.
Otherwise I will look at a different App Server for this deployment.

Peter


Harry Metske wrote:

> Peter,
>
> it doesn't look like a well known JSPWiki issue, I did find some similar
> issues, all with other applications/frameworks running in Sun ONE AS :
> - http://forums.sun.com/thread.jspa?threadID=5046275&tstart=1335
> - http://lists.samba.org/archive/jcifs/2002-December/001573.html
> - http://ozgwei.blogspot.com/2008/01/how-to-make-acegi-work-on-sun.html
>
> the last one is the most descriptive , pointing to the Sun One AS causing
> the problem because it tries to cast the Principal to it's own
> com.sun.web.security.WebPrincipal.
> Several other google results also point to the Sun AS being the culprit.
> Maybe you can file a bug report to Sun ?
>
>
> Harry
>
>
> 2009/6/8 Peter Mah <peter.mah@...>
>
>> 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
>>
>>
>