DZone Forums
Go Back   DZone Forums > Community > Enterprise Development > Patterns & Architecture
Reload this Page Where i find an Application Architecture Diagram of the JBoss Seam Techlogy ?
Notices
Reply
 
LinkBack Thread Tools Display Modes
  (#1 (permalink)) Old
Member
 
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
Join Date: Apr 2009
Default Where i find an Application Architecture Diagram of the JBoss Seam Techlogy ? - 04-16-2009, 03:25 PM

Hello there...
I am an MS.NET Developer that is now in the JEDI SIDE of the force...

I need a litle explanation in a Diagram of the Application Architecture of JBoss Seam similar to the documentation that is easy for understanding found about MS.NET Application Architecture. Application Architecture for .NET: Designing Applications and Services



I have read somenthing about the J2EE and EJB3 but all the world is facinated with the anotations and dependency injection. But i need a Diagrama to understand more about the benefits of the JBoss Seam Web Container.

Last edited by eduardo.sandino@gmail.com; 04-16-2009 at 03:59 PM.
Reply With Quote
  (#2 (permalink)) Old
Member
 
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
Join Date: May 2009
Default Where i find an Application Architecture Diagram of the JBoss Seam Techlogy - 05-08-2009, 02:02 AM

Since Alfresco was first released in 2005, I have led a number of projects that required some sort of custom user interface on top of the Alfresco repository. In a few cases, we customized Alfresco’s standard web client. For others, we built custom interfaces that were stand-alone web applications or were exposed via portlets within a portal framework like Liferay or JBoss Portal.

In most cases, we needed a user interface that was not embedded within the repository, but rather was hosted remotely as a standalone web application. To do this, the main choices for the web application to communicate remotely with Alfresco are the following mechanisms:

* Alfresco Surf and Web Scripts
* Alfresco web services
* Rivet Logic’s Remote Alfresco API rivet (aka RAAr)

Each one of these approaches has its pros and cons and the choice is highly influenced by the client’s needs.

Alfresco’s Surf platform provides a powerful framework that enables developers to leverage most if not all of the repository’s features using a RESTful approach using their Web Script runtime engine. It also allows for the web tier to be remote to the Alfresco repository. Surf is a very good option for projects that have a Javascript-centric web tier, using frameworks such as ExtJS. We have successfully built and deployed several Web Script-based UIs for customers, including one of the very first public sites to leverage Web Scripts found at http://highschool.ccsso.org. In its most recent v3.0 release, Alfresco provides a UI platform for aggregating Surf dashlets to create fully functional web clients. This platform is known as Alfresco Share.

However, we also have customers who want a Java-based UI solution too. Alfresco’s original web client UI is a JSF/Spring based application that is customizable in many ways and is the only available alternative in this case (short of building your own web client). It is built using a large number of custom JSF components that are very nice as long as your target UI is expected to behave similarly to Alfresco’s web client. If you were asked to change the way one or more of these components work things start to get a little hairy especially when you realize how much work is required to make it do exactly what was needed. There was an apparent need for developing a Java-based UI platform that shared some of the Share features.

So we set out to fill this void: To create an open source, Java-based UI platform for Alfresco.

We turned to JSF for the view framework, as it is the predominant standard in the Java community. One of the challenges of JSF component development has always been ease of customization, or the lack of it. Even though the JSF spec allows for extending UI components, it is still not trivial to make your components very flexible. And what typically happens in those situations is that smart people decide to put in a lot of work into getting rid of the problem. That’s where the JSF component suites come in. There are a lot of them out there. Some open source, some not. Naturally I’m only interested in the open source ones.

When working with JSF components suites like JBoss RichFaces you gain a lot of leverage when you incorporate a framework that makes dealing with the JSF lifecycle both intuitive and easy. If you guessed that I was talking about JBoss Seam, you’re right.

Projects that are more Java-centric and make use of web frameworks such as JSF would find that a remote Java API that provides access to the Alfresco Foundation Services (AFS) is necessary. In this case, our own Remote Alfresco API rivet is ideal. It is both scalable and fits within the JEE tiered approach quite nicely.

For these reasons, the technology stack we used for building our Java-based Alfresco web client is comprised of JBoss Seam, RichFaces/Facelets, and RAAr.

So here was the perfect opportunity to bring all this technology together and provide the Alfresco community with an example of a new way for developing Web 2.0 rich web clients for the Alfresco repository. We decided that the web client had to be rich (AJAX is key here and RichFaces among other JSF component suites makes it possible), remote from the Alfresco repository, and modular so that it could be reused in other projects in the future. And while we were at it, it needed to be easy for new developers to contribute to.

We gave the web client a name that explains what it really is; Seam Client for Alfresco rivet — SCAr. (As an aside, because we incorporate RichFaces we also considered calling it ScarFaces :^)

From a high level, SCAr makes use of RAAr to utilize a complete suite of services that fully expose Alfresco ECM’s core services at the back-end, and a number of out of the box JBoss RichFaces AJAX enabled UI components at the front-end tied together using JBoss Seam to provide a single page multi-user interface to Alfresco ECM’s document management system. The following diagram shows a high-level overview of SCAr. The power of this architecture is in its inherent simplicity without sacrificing flexibility.
Reply With Quote
Reply

Tags
jbossseam

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
software architecture basics suma_eclipse Java 2 04-08-2009 09:06 AM
JBoss 5.0.1 + Spring 2.5.6 + JSF 1.2 JeanChastain Java 0 03-18-2009 10:51 AM
SOALIB - Service Oriented Architecture Libraries soalib Web Services, SOA & ESB 0 01-04-2009 11:18 PM
how to include Jboss inc 4.0 server in Eclipse Europa ganeshduke Java 0 06-27-2008 12:17 AM
VE and JBoss dkennedy Eclipse 1 02-12-2008 08:11 AM


Copyright 1997-2009, DZone, Inc.
vBulletin Skin developed by: vBStyles.com