Sorry for the long delay. I haven't been monitoring this list for a while. Hope this is still relevant.

It looks like the Domain is bootstrapped during initialization of the JAAS LoginModule instead of by the SlideServlet which is the way it should be. In this case the Domain is not given a specific location to load the domain configuration from so it attempts to locate it by itself.

Now I haven't run into this problem. It is probably something specific to the way the application server you are using is starting its services or it may be a classloader issue. The former used to be the case with the Tomcat SlideRealm and I remember working around this by initializing the realm lazily to give the servlet time to bootstrap the Domain first.

Hope this gives you some pointers as to where to start debugging this thing.

Cheers,
Unico
--

Alan Wood wrote:

Hi I'm pretty new to Slide (and webdav for that matter) and am still getting my head mangled by it (a few days a newbie).

I think it is an awesome thing that creates major opportunities when integrating to our open source application server, congrats to the developers on the code base so far.

The documentation however does not help in many situations which is why i subscribed to this list, i already have a a number of questions:

1) I have just managed to get the JAAS LoginModule working in our application server which uses Jetty (we r moving away from tomcat). Using the JAAS loginmodule looked like the only way to do it with Jetty, and we had quite a few probs getting it working. But something strange is happening, when I log in as 'root' just using a browser at '/slide/files' for example The Domain.xml file gets loaded up again? is this meant to happen. It caused a lot of problems at first because when it happend it could not find 'Domain.xml' . When i start the app up it loads the Domain.xml perfectly. But when it looks to load it a second time after a root login (for example) it just looks for 'Domain.xml' without a path. the solution is to copy the Domain.xml file to somewhere in the class path but this is obviously slightly different for our application server particularly since the JAAS slide realm is cretead programaticatlly outside of jetty.

#my login.config for JAAS is :
slide {
org.apache.slide.jaas.spi.SlideLoginModule required
namespace=slide;
};


here is the log output including trace when it fails to find domain.xml on a login :


09 Mar 2004 12:07:57 - org.apache.slide.common.Domain - INFO - Auto-Initializing Domain
09 Mar 2004 12:07:57 - org.apache.slide.common.Domain - INFO - Domain configuration : {org.apache.slide.lock=true, org.apache.slide.versioncontrol=true, org.apache.slide.debug=false, org.apache.slide.search=true, org.apache.slide.security=true, org.apache.slide.urlEncoding=UTF-8}
09 Mar 2004 12:07:57 - org.apache.slide.common.Domain - ERROR - Domain initialization error : Domain.xml (No such file or directory)
12:07:57.169 WARN!! javax.security.auth.login.LoginException: org.apache.slide.common.DomainInitializationFailedError: Domain initialization error : Domain.xml (No such file or directory)
at org.apache.slide.common.Domain.selfInit(Domain.java:766)
at org.apache.slide.common.Domain.accessNamespace(Domain.java:237)
at org.apache.slide.jaas.spi.SlideLoginModule.initialize(SlideLoginModule.java:126)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:662)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:129)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:610)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokeModule(LoginContext.java:607)
at javax.security.auth.login.LoginContext.login(LoginContext.java:534)
at org.mortbay.jaas.JAASUserRealm.authenticate(JAASUserRealm.java:212)
at org.mortbay.http.BasicAuthenticator.authenticated(BasicAuthenticator.java:50)
at org.mortbay.http.SecurityConstraint.check(SecurityConstraint.java:415)
at org.mortbay.http.HttpContext.checkSecurityConstraints(HttpContext.java:1552)
at org.mortbay.jetty.servlet.ServletHttpContext.checkSecurityConstraints(ServletHttpContext.java:134)
at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:235)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)


12:07:57.173 WARN!! AUTH FAILURE: user root
09 Mar 2004 12:08:04 - org.apache.slide.common.Domain - INFO - Auto-Initializing Domain
09 Mar 2004 12:08:04 - org.apache.slide.common.Domain - INFO - Domain configuration : {org.apache.slide.lock=true, org.apache.slide.versioncontrol=true, org.apache.slide.debug=false, org.apache.slide.search=true, org.apache.slide.security=true, org.apache.slide.urlEncoding=UTF-8}
09 Mar 2004 12:08:04 - org.apache.slide.common.Domain - ERROR - Domain initialization error : Domain.xml (No such file or directory)
12:08:04.433 WARN!! javax.security.auth.login.LoginException: org.apache.slide.common.DomainInitializationFailedError: Domain initialization error : Domain.xml (No such file or directory)
at org.apache.slide.common.Domain.selfInit(Domain.java:766)
at org.apache.slide.common.Domain.accessNamespace(Domain.java:237)
at org.apache.slide.jaas.spi.SlideLoginModule.initialize(SlideLoginModule.java:126)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:662)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:129)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:610)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokeModule(LoginContext.java:607)
at javax.security.auth.login.LoginContext.login(LoginContext.java:534)
at org.mortbay.jaas.JAASUserRealm.authenticate(JAASUserRealm.java:212)
at org.mortbay.http.BasicAuthenticator.authenticated(BasicAuthenticator.java:50)
at org.mortbay.http.SecurityConstraint.check(SecurityConstraint.java:415)
at org.mortbay.http.HttpContext.checkSecurityConstraints(HttpContext.java:1552)
at org.mortbay.jetty.servlet.ServletHttpContext.checkSecurityConstraints(ServletHttpContext.java:134)
at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:235)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)


12:08:04.438 WARN!! AUTH FAILURE: user root


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to