Hello,

I've been spending the last couple months familiarizing myself with a few
java based web technologies, mainly Struts 2, Spring, and Hibernate.  I have
a decent understanding of Struts, enough to make a few simple example
webapps that have helped me learn the concepts (along with a lot of help
from this message board!).

I'm now trying to design a "real" webapp that does more than one simple
task.  The basic idea is that I want a single User database that contains
login and registration information (user name, password, name, address,
etc).  When a user logs in, they are presented with a home page that shows
them all of the resources they are able to access (things like product
updates, product information, trial keys, etc).

Were I writing this webapp with what I know now, I would make a single
webapp that uses a database for user information, and a different database
that contains all of the information of the resources that the user is able
to access.  Authentication and authorization would be handled using Acegi
(of which I have a very limited understanding of).

However, we also have other webapps that we would like to be able to access
the same user login information.  One way (the only way I know of) would be
to have these other applications access the same user database and have all
of the same Acegi configuration.  Each webapp would have all of the
configuration needed to allow users to login, manage their accounts, etc. 
The vast majority of this configuration would be duplicated for each webapp.

It seems like a better way to handle this situation would be to have a
single "web service" that deals just with user login and registration.  Then
any webapp that needs to have a user login would just redirect to this web
service and get back some sort of User object.  Each individual webapp would
only need to configure Acegi for the specific resources that they provide. 
So my above example would look up the user in a database and present user
specific resources.  A webapp that allows a user to activate a product using
a product key would just have a database to map a user to the products they
have activated.

So finally my questions (sorry for the long winded explanation):

1. Is this login "web service" something that is actually commonly used?
2. Is this what a web service actually is, or am I applying that term where
it doesn't belong?
3. Is Acegi flexible enough to use in a setup like this?
4. Is there enough additional complexity in setting up a system like this
that it would also make sense to look into just duplicating the
configuration for each webapp?
5. Are there any good books, web tutorials, etc that talk about this?

I guess what I'm basically looking for is a little design direction,
possibly other technologies that provide these services so I'm not trying to
build an entire system from scratch.

Thanks in advance for your suggestions!

Kelly
-- 
View this message in context: 
http://www.nabble.com/-S2--Struts-with-Web-Services-tp16475805p16475805.html
Sent from the Struts - User mailing list archive at Nabble.com.


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

Reply via email to