Tim Holloway wrote:One is the so-called "hard" link. I'm not sure Windows supports this.
Tim Holloway wrote:
Rob Spoor wrote:I was waiting for Tim H's post ever since I read the initial post.
What? Just because I'm obsessed with it? I'd feel guilty except that it's admitted by almost anyone who's worked for any length of time with webapps that when users (or the shop's resident, um, genius) designs a "security system", the results almost invariably have all the durability of wet tissue paper.
Rob Spoor wrote:The only drawback is that part of the mechanism is container specific - Tomcat, JBoss, GlassFish and other containers could all do the actual user authentication + role mapping differently. You'd need to check the container documentation on how to do this exactly.
The only part of the mechanism that's container specific is the configuration of the Realm for the container. The webapp requires absolutely no changes for security regardless of what webapp server you deploy it to. Furthermore, changing the Realm itself doesn't require webapp modification. The same app that runs with JDBC authentication and authorization will work equally well under LDAP or XML file Realms or even a site-wide single-signon.
Ron McLeod wrote:The only issue I have now is the warning with my class which extends AnnotationLiterial: The annotation type BasestationTypeQualifier should not be used as a superinterface for BasestationTypeLiteral - basically saying that one should not implement an annotation. The followed the example in the javadoc, but it would also have this same warning. I've seen a number of people with this same problem, but haven't seen any resolution.
The pathname must begin with a / and is interpreted as relative to the current context root.
The pathname specified may be relative, although it cannot extend outside the current servlet context. If the path begins with a "/" it is interpreted as relative to the current context root. This method returns null if the servlet container cannot return a RequestDispatcher.
The difference between this method and ServletContext.getRequestDispatcher(java.lang.String) is that this method can take a relative path.