I just wanted to let everyone know that I just signed a contract to write a book on Struts for O'Reilly. The book just got underway, so it will not be out until the late summer or early fall.
I've included a rough working outline here, but realize that it's a work in progress and I will continue to flush out the details over the coming days. If you have any suggestions for things to add, please feel free to send them to [EMAIL PROTECTED] so as to not flood the newsgroups. I've used Struts since the beginning and watched it evolve into a the great framework that it is today and for sure will be when all of the 1.1 functionality gets rolled in. I intend to cover both 1.0 and 1.1 functionality, although I haven't figured out the cleanest way to handle the envoling functionltiy. I've started a dialog with Ted and he's given me some good ideas. I just finished co-authoring "Special Edition EJB 2.0" and "Special Edition Using Java 2" and I'm planning on the book having a heavy focus on EJB and J2EE, since that is my current use of the framework. The working outline follows... Chuck O'Reilly Struts Working Outline Chapter 1. Introduction to Struts Brief History of the Web What are Servlets? JavaServer Pages Technology JSP Model 1 and Model 2 Architectures Why is Model - View - Controller So Important? Creation of the Struts Framework Alternatives to Struts Chapter 2. The Web Server/Servlet Container Relationship An Understanding of the Physical Architecture The Request/Response Phase Explained The HttpRequest, HttpResponse, and HttpSession Objects Using a Get Versus a Post (Where does this belong?) Redirecting Versus Forwarding Using URL Parameters Available Web Servers and Servlet Containers Chapter 3. Overview of the Struts Framework Looking at the Big Picture A Banking Account Example Struts Controller Components Struts Model Components The Struts View Components Life Cycle of a Struts Request Summary Chapter 4. Configuring web.xml and struts-config.xml Chapter 5. Struts Controller Components Chapter 6. Struts Model Components Chapter 7. Struts View Components Chapter 8. Custom Tag Libraries Chapter 9. Building a Web Tier Framework Chapter 10. Exception Handling Chapter 11. Externalizing the Struts Validation Chapter 12. Internationalization and Localization What is Internationalization and Localization? Internationalizing your Struts Applications Determining the User Locale Configuring the Struts Resource Bundle Performing Localization with Struts Supporting Multiple Currencies Internationalizing a Database Chapter 13. Struts and Enterprise JavaBeans (EJB) Struts and Enterprise JavaBeans EJB Home and Remote References What is a Proxy? The RemoteProxy Pattern Building a RemoteProxy Object for Your Web Application Using JNDI in a Struts Application Developing a RemoteProxy Framework Using Dynamic Proxies Using Debug Proxies Chapter 14. Security in your Struts Web Applications Web Application Security Features Authentication Authorization Audit Trails Repudiation Dealing with Session Timeouts and Invalid Login Attempts Performing Page-Level Security Modifying the struts-cfg.xml for security Using HTTPS/SSL with Struts Chapter 15. Building Dynamic Menus Chapter 16. Paging and Sorting Chapter 17. Navigation Trails Chapter 18. Logging in a Struts Application Logging in a Web Application System versus Application Logging Using the Servlet Container for Logging Using Filters Using Event Listeners Struts Internal Log Messages Traditional Buy versus Build Analysis Using the log4j Logging Framework Brief look at Java Class Loaders What do Class Loaders have to do with log4j? Integrating log4j with Struts What are Loggers? Configuring log4j Appenders Initializing log4j Log file Rollover Setting the Log file location Logging within the Struts Framework Protecting your application from change Using the Log4j Tag Library Creating an Email Appender The Performance impact of Logging Third-Party log4j Extensions Java 1.4 Logging API Chapter 19. Addressing Performance Chapter 20. Struts Design Strategies Chapter 21. Packaging your Struts Application Chapter 22. Co-Branding and Personalization Appendix A. Struts API Appendix B. Downloading and Installing Struts Appendix C. Struts Resources Appednix D. Changes in Struts 1.1 -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>