portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Sean Taylor <da...@bluesunrise.com>
Subject Re: 3 tier separation and Jetspeed services
Date Tue, 04 Sep 2007 21:50:38 GMT

On Aug 27, 2007, at 6:40 AM, sebastien.doyon@bnpparibas.com wrote:

> Hi,
> I am working in a web project in a company where security is really  
> strict.
> Web applications must have a clean 3 tier separation and the  
> presentation
> layer accessed by internet users have no direct access to the  
> database.
> Accesses to the database must be done by calling remotely the  
> application
> layer behind a firewall.
> I was investigating how this could be implemented into Jetspeed and my
> first idea was to use Spring Remoting. The simple HttpRemoteInvoker  
> would
> be my first choice since it demands no special ports else than HTTP.
> My problem is that if I consider proxyfying all Jestpeed services that
> access the database, I think I will get problems with transactional
> propagation. From the Spring configuration files, some of the services
> methods use transactional attribute "PROPAGATION_REQUIRED" witch  
> means that
> I can run into an already created transaction (created by an other
> service?).
> So, to help me on this task, I am asking you, the Jestpeed gurus,  
> if there
> is a right place where transactions starts and ends, something that  
> I could
> proxyfy with a remoting proxy. Are there few guidelines that you could
> provide me to achieve this?
> With your help, I am willing to implements some or all  
> modifications that
> could be necessary and will return the code to the project if you  
> consider
> it relevant.
> I hope what I want to achieve is clear enough. Thanks for your help.

Were you planning on running the OJB-based Jetspeed services on a 3rd  
tier, or writing your own services?
I don't think that HttpRemoteInvoker supports distributed  
transactions. You may want to check and let us know
So you would have to somehow implement your own transactions

Take a look at transaction.xml:

	<!-- Transaction manager for a single OJB PersistenceBroker  
(alternative to JTA) -->
	<bean id="transactionManager"  

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message