View Review Details


Book:   Programming Jakarta Struts
Subject:   Programming Jakarta Struts Review
Date:   2003-05-23 07:03:26
From:   Chuck Cavaness
Rating:  StarStarStarStarStar

Bryan,


I've put my responses after each question.


Thanks a lot, chuck.


I have to bug you again. I have 2 questions:


Q1:


Can you talk about how does the Struts working with distributed enterprise application, for example, how/can struts handle the distributed application, how struts handle the request send between the distributed servers?


[Chuck's Response]


Let me answer the question using a concrete example. Let’s take a J2EE for example. Struts works with J2EE by invoking business services on the J2EE server using RMI/IIOP. Generally speaking, there’s a mapping of one Struts Action to one business service, although this doesn’t always have to be the case. For example, the DispatchAction can be used to map a single Struts Action to multiple backend services.


What typical developers/applications do is to use a business delegate to keep the EJB interfaces out of the Action classes. In other words, the Struts Action isn’t aware that it’s using EJB. As far as it knows it’s using some local interface, but under the covers it’s an EJB remote reference. This allows the ugliness of JNDI, Home interfaces and remote interfaces to be encapsulated and hidden from the Struts framework.


In a J2EE cluster, there’s usually an admin server (or in some cases a web server is used) to receive the request and direct it to one of the managed nodes in the cluster. In Chapter 13 of my book, I cover in much more detail the intricacies of Struts working with J2EE and specifically EJB.


Q2:


Since the Struts is open source which means there are no strong technical support (not community support), for the enterprise want to use Struts, how can they make sure one something goes wrong, they have confidence to deal with it?


Besides people suggested, if Struts is used, there has to be some people really go through the sorce code of Struts and understand all the details, is there any other ways?


Thanks again.


Bryan.


[Chuck's Response]


It’s not much different than other technologies like EJB. You have to make sure that you have some solid lead developers working and mentoring others. Many organizations also use consultants/contractors to help supplement the team until the team is up to speed.


Another way is to have someone come in and do training for you on Struts. For example, I’m designing a 2 or 3-day course on Struts. Presentations/Discussions with labs that walk someone through installation all the way through the framework, Validator, Tiles, Performance testing etc. I think there’s real value to be gained in something like this.


Other than these ideas, you’re really left with having have experienced Struts developers on the team.



See larger cover