File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Web Component Certification (SCWCD/OCPJWCD) and the fly likes Programmatic vs Declarative Security Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Certification » Web Component Certification (SCWCD/OCPJWCD)
Bookmark "Programmatic vs Declarative Security" Watch "Programmatic vs Declarative Security" New topic

Programmatic vs Declarative Security

al nik
Ranch Hand

Joined: Oct 18, 2007
Posts: 60
I don't understand if declarative is better than programmatic security.
The HFJS says that! I used the declarative approach with struts that if I remember use container security.. but I used also some programmatic s. with Acegi&Spring and I think that's better.
The book is quite old.. so today, if you have to choose, is programmatic security a better way then declarative?

Ulf Dittmer

Joined: Mar 22, 2005
Posts: 42965
It's not possible to make blanket statements that say one is better than the other, not in the past, and not now. Both approaches have advantages and drawbacks.

Declarative (or container) security lets you keep just about all handling of users and roles out of the code, using just Servlet API methods. Thus the code remains completely portable, and everything can be configured outside of the code.

Programmatic security has the advantage of being more flexible. In some cases it is not possible to map user roles to URLs, at least not without looking at URL parameters (which declarative security can't do).

In general, the larger a system is, the more likely it is that you'll run into something that declarative security can't handle, or where you'll need to use a more advanced API like JAAS.
I agree. Here's the link:
subject: Programmatic vs Declarative Security
It's not a secret anymore!