|Authors||J. W. Dzidek|
|Title||Visual Struts: Modeling Struts-Based Applications Using UML and Advanced Tool Support|
|Publication Type||Talks, contributed|
|Year of Publication||2005|
|Location of Talk||JavaZone website|
The Jakarta Struts framework is the de facto standard for web applications development in Java. Unfortunately, one of the primary difficulties with Struts-based development is that a lot of relationships are defined in a declarative manner, which leads to errors not being found at compilation-time. Furthermore, the system is developed in three different types of files: Java class files, Java ServerPages (JSPs), and XML configuration files. It is difficult to comprehend how these relationships interact, both, statically and dynamically (especially for a person not involved with the original development of a system). Modeling can greatly help in the understand of these relationships: (1) From a static point of view, page flow diagrams show how JSPs, user-defined classes, and Struts constructs (e.g. action mappings) relate (e.g. shows which JSP uses which action mapping); and (2) From a dynamic point of view, sequence diagrams show when/how specific action objects are invoked and when/how objects are placed in a scope. The technique discussed in this session has been discussed with over twenty professional Struts developers and actively used by ten on a real-word project. The talk will also cover the advantages and disadvantages of proprietary (non-UML based) Struts tools, mainly M7's NitroX for Eclipse.