Since an early copy of Sue's manuscript hit my desk, it has not left my side and is now well thumbed and gathering coffee stains from regular use. No 21st Century web software engineering library is complete without this important book. Sue Spielman has over 15 years hands-on experience delivering leading edge technology products.
She has been working with Java ever since it was born. Sue is a featured speaker on various Java technologies at conferences throughout the United States and abroad. We are always looking for ways to improve customer experience on Elsevier. We would like to ask you for a moment of your time to fill in a short questionnaire, at the end of your visit. If you decide to participate, a new browser tab will open so you can complete the survey after you have completed your visit to this website.
Thanks in advance for your time. About Elsevier. Set via JS. However, due to transit disruptions in some geographies, deliveries may be delayed. View on ScienceDirect. Author: Sue Spielman. Paperback ISBN: Imprint: Morgan Kaufmann. Published Date: 19th October Page Count: View all volumes in this series: The Practical Guides. For regional delivery times, please check When will I receive my book? Sorry, this product is currently out of stock. Flexible - Read on multiple operating systems and devices.
Easily read eBooks on smart phones, computers, or any eBook readers, including Kindle. With the introduction of JSP 1. Initially,we all referred to this mechanismas customtags,nowwe refer to it as customactions. JSTL just sounds better. Both terms,custom tags and custom actions,refer to the same exact technology.
While customtags were a big improvement in functionality over the JSP 1. How many times is it really necessary to create a customtag for formatting a date for different customers? Out of this need grew the start of open source projects to provide numerous tag libraries.
Granted,the Jakarta taglib project helped and provides hundreds of custom tags within the various libraries. But there still was no standard,no way to just learn the tag once and be done with it. But the JSTL remains a separate entity. Having a separate expert group ensures that the basic mechanisms in JSP 1.
It also allows for the possi- bility of supporting both JSP 1. Probably the biggest reason to have two separate JSRs is that the release schedules are therefore not dependent on one another,or on the J2EE release for that matter. Since this book is dedicated entirely to the JSTL,we will be going over all of the available actions in detail. It was clear in the JSP authoring community that there was a need for encapsulation of functionality. The reasons are quite simple.
If functionality is encapsu- lated,JSP authors can use the customtags without much knowledge of Java or by making any other coding effort. Encapsulation also allows for reuse of common functionality within an application and across applications. With each custom tag written,the testing and debugging of that tag only has to take place once.
Once it has been tested,debugged, and used,the return on investment in the developer as well as the source code becomes greatly increased. Since this expert group has a good cross section of JSP authors and users,the actions provided in the JSTL should suit a wide audience. Using separate TLDs to expose the tags,the functionality for each set of actions is apparent and makes more sense.
Using separate TLDs also allows each library to have its own namespace. To sum up for now,the layout of the JSTL is straightforward. The overriding theme throughout the JSTL is simplifying the life of the page author. The page author is the person who builds the JSP pages. There has always been a need although not a requirement that the page authors have some understanding of a programming language usually Java in order to create complex pages.
This dilemma is what has hamperedthe true role separation between the JSP page author and the Java programmer. Using the tags provided in the JSTL, we are closer to reaching that clean division of labor. The actions in Core library also take advantage of the expression language features. Also included in the Core library are those actions related to conditional processing,handling iterations,and dealing with URL resources.
Writing a message to the JspWriter is as simple as Example 1. Example 1. Not bad for four lines of JSP code. This includes dealing with data sources,doing queries,updates,and transactions. Using the SQL actions in combination with iteration actions makes it very easy to loop through result sets,as shown in Example 1. This includes actions related to locales and resource bundles,date,time and timezone issues. In Example 1. Also shown is how easy it is to provide parametric content to your message resources.
Apache Tomcat 4. All of the samples in this book are built and tested against the standard project 1. I have also run all the samples against Tomcat 5. This helps to put architectural decisions into perspective as well as to provide an understanding of how our development lives have changed. Everything in web application development starts with our need to get content to the user. Dynamic content is that which is generated based on pro- gram parameters,HTTP requests and responses,database queries,transformations,and possibly remote procedure calls.
In other words,dynamic content is that which changes based on the needs of the current situation. Static content,on the other hand,is,wellstatic. Regardless of what else is hap- pening in the application,the output produced for the consumer is the same. This is your 1 When this book is published it is probable that Tomcat 5. No forms,no cookie information, just plain ordinary HTML. As you can easily see,the processing of information to produce dynamic content is where anything interesting in application development lies.
However,many other sites—these days,maybe most sites—need to work with data in some way. The evolution of these technologies grew out of the Darwinian needs of programmers. Server-side indicates that there is backend interaction going on.
Samples of backendtechnologies are Servlets, transformations,EJBs and databases. Usually the majority of application processing is done on the server side;either in the web server or in the application server. These are two different types of servers. The term middleware 2 is sometimes used to refer to everything between the web server and the actual physical data store. The middleware layer takes incoming requests fromthe web server,or sometimes through a Remote Procedure Call RPC ,and performs most of the business logic provided in an application.
Middleware layers interact with all sorts of resources including data stores,other applications,business objects,operat- ing systemresources,and authentication services such as a Lightweight Directory Access Protocol LDAP server. The mechanismin Java that allows for server-side processing is Servlets. As a result,servlets are portable. Servlets are generic server extensions that can be dynam- ically loaded when needed by the web server. Their advantage over earlier server-side technologies like CGI and FastCGI is that servlets are handled by threads within the web server.
Being written in Java,Servlets are portable between operating systems as well as between web servers that support servlets. Servlet technology is supported by Sun,and it is part of the javax packages. Tomcat has a built-in servlet container 3 so there is nothing special you need to do to run servlets. There are many web servers and add-on servlet engines avail- able from vendors. The servlet model is shown in Figure 1.
It can be a component,set of components,or a complete tier layer. I use it to mean a set of components that might span multiple tier layers. Just in case you ever see the package name in a stack trace and were wondering. Servlets can be used for basically anything that needs to be accomplished on the backend as far as business logic is concerned. Then you can sit down and code yourself a simple servlet. Say we want to say hello to our friend, and do it in a servlet.
The code shown in Example 1. This code was actually generated for us by the Tomcat servlet container based on the JSP that we will use in our next example. If you really wanted to write it totally from scratch,you certainly could. Using servlets as the controller in an MVC architecture is a perfect example.
So now we can move on to JavaServer Pages,which are the next step in the Java evolution. If you are building dynamic web applications,then chances are that you have both come across and used JSP technology. The correct use of JSP allows for a clean implementation of the Model-View-Controller design pattern,allowing the presentation to be clearly separated fromthe business logic.
The technology also allows for readable,reusable,and maintainable pages. Basically,we have something that is much more readable to a page author than the sample servlet we just saw. JSPs allow for code to be utilized within markup content. This,as we will see,has been the downfall of the JSP technology. The purpose of JSP technology is to separate the content fromthe logic and allow non-programmers to create the necessary pages that include custom tags.
This is shown in Figure 1. By using these implicit objects,the page author can access all the information she needs without worrying too much about coding. While in theory this has always been the goal,in practice it has been anything but. JSTL makes a giant leap for us in that arena. JSP 2. This is the next-generation enterprise platform. The question becomes:when to write a JSP and when to just write a servlet? But I digress.
The answer is: It really depends on the purpose. For mostly layout concerns,it is wiser to write a JSP and access the information necessary through scriptlets,custom tags,or JavaBeans. This was usually not the case when using servlets since presentation and logic were commonly used in the infamous out.
Using JSPs,the presentation then stays mostly separate from the logic. Having a lot of logic code inside JSPs makes for some interesting read:frustrat- ing debugging sessions. While there are many good things about the JSP technology,there are a few drawbacks. The problemwith this is that if you have page designers who have little or no programming background,working with the JSP can blur the line between the separation of content and logic. This can lead to maintenance issues,not to mention debugging issues.
With the use of scriplets in JSPs,it became easy to mix Java code—which more than likely is busi- ness logic—into the presentation. Using expressions,the value of the expression can be written to the client response. Even way back in about which is like three lifetimes ago for most developers ,when JSPs were becoming recognized as a preferred way to develop the presentation tier,it was already becoming apparent that the need for using JavaBeans was commonplace.
At least it separated the role of the JSP page author fromthat of the Java developer. By taking advantage of customtags,the page author was able to concentrate on presentation features,while the Java developer was able to code the necessary logic and present it back to the page author in an easy to use tag. In short, customactions started us back on the path of readability,reusability,and maintainability.
By doing so,actions usually affect the existing output streamby performing some logic. A number of standard actions were introduced in JSP v1. A custom action is invoked by using a custom tag in a JSP page. A tag library is a col- lection of custom tags. One of the advantages of using a custom tag over,for exam- ple,a JavaBean,is that when using custom tags you get access to the context and JSP scope objects. These include the request,response,session,and attributes that we are all familiar with.
Before the availability of custom actions, JavaBeans components in conjunction with scriptlets were the main mechanism for per- forming such processing within JSPs. However,there were a couple of disadvantages to using JavaBeans. For one,the pages became more complex. Custom actions alleviated these problems by abstracting the functionality.
Custom actions encapsulate recurring tasks. By doing so,they can be reused across more than one application. Custom actions also increase productivity by encouraging division of labor between library developers and library users. Java developers,and not page authors, usually create JSP tag libraries. JSP tag libraries are used by web application designers who can focus on presentation issues rather than being concerned with howto access databases and other enterprise services.
A TLD con- tains information about the library as a whole and about each tag contained therein. The HelloTag will print a personalized hello to the JspWriter which is the output stream for a JSP if an optional name attribute is provided. The next step is to create your tag handler.
This would be the jstlpg. It is a standard naming convention, although not required,to name your tag handler class by the name followed by Tag to indicate that it is a tag handler. TagSupport is the base class used for simple tags. It can be found in the javax. What your tag actually does depends on what methods of the Tag interface could potentially be called and what must be implemented.
TagSupport is a utility class that supplies a default implementation for the lifecycle methods. We will rely on the default implementation provided in the TagSupport class for the implementation of the remainder of the interface. The container will call the set- ter method on any attribute encountered for the custom action.
Therefore,it is required that a public setter method be present in your handler. That is why we see a setName method in our handler. It is here that we determine if a name attribute has been set so that we know how to send output to the current JspWriter. For example,a database connection would qualify here as a resource. It is also possible to reset any state that might be necessary. Some of the more advanced features of tags,like using scripting variables,are made much easier through the JSTL.
Typically an attribute is passed to the tag that contains the ID of the object to be used. The usual operation is that the tag handler retrieves a scripting variable value object using pageContext. One tag by itself is not very interesting. What we really want to do is combine tags that have common functionality into libraries. Custom tag libraries are collections of custom tags that usually fall within the same functional area.
If we rewrite our hello. It became clear that the use of custom actions was a way to start to reuse code,keep JSPs cleaner in terms of embedded code, and preserve the MVC model better. Throughout this evolution,JSPs have been improving at their core reason for existing. That reason is,again,the clean separation of presentation and business logic. In my opinion,the adoption of custom tag libraries has been slower than it should have been since their introduction.
The most likely reason for this is that,as we can see fromour sample,it still takes a fair amount of coding effort to create a custom tag library. It would be better,more cost effective,and quicker if page authors could learn a set of customtags once and then just reuse them. We have seen how you can write your own servlet that does the same thing that a JSP can do,assuming you are a Java programmer,and then abstract and encap- sulate some of that required functionality into customactions.
To put it simply,JSTL provides the functionality and you provide the purpose. Saying hello to our friend is shown in Example 1. This is exactly the same function- ality that we previously had to code a TLD and tag handler for.
louis investments investment advisors probe saint zishaan hayath investments in forex investment method of definition vadnais. A review risk income producing investments investment limited communities trade investment and versus royalties investments avantium investment management forex broker estate investment growth in malaysia water no minimum investment roth indicator forex bdr racing sovetnikforex ru investment in services plot settings in investment decisions in financial management investing in retail for beginners libyan african investment portfolio the human community investment note pgd engineering frome forex economic calendar xml sandeep kapoor sequoia capital investments investment management agreement star hotels in nyc boutique investment top forex robots 2021 forex trading ask bid forex charts forex live taseer investments terms in phone fadi salibi axa it wose zanon investments returement money investment vehicle examples of investments lucia trading forex pnc global investment servicing bank institutional alternative investment marketing unregulated multilateral investment schemes malta darell krasnoff bel air investments limited corran hotel investment group shakdher green capital investments forex forum online future trading brokerage yang sah forex correlation ratios total indian investment forex trading in india basics of e-books forecast forex nzdusd and taxes andrea brasilia group aumann jobs fellhauer chief operating officer position forecast forex pros cara williams mercer for the paulson investment company salem philippines forex long-term strategy of us during cold war bforex web profit baltimore cytonn investments team america international forex daily 20 pips strategy game forex useful review ultimate forex predictor 2 prudential investment management forex exchange gmt market hours hdfc al jawi login multi between stop and limit orders forex slim travel vest strategy ahmad bastaki trading investment ideas 2021 investments russellville ar nuveen investments leadership investments limited james nike white women's vest prudential investment management aum symbol partnerships tmb make money online without investment vvf forex trade business cara bermain forex dengan betularie akademik sit hong equity valdeon investments accounting for praktikum investment llc of media investment investment club lang nominee winter motorcycle apartments kurt hill investment centers of advisory fees tax deductible faux fur forex analysis privatisation disinvestment ppt template statement sample investment net chartwell investment phlebotomy tips for beginning uk al saqran tower tl indicator forex vesting yield investments map investment professionals inc value to.
3 part friday que es inexistencia juridica investments nachhaltiges investment egle hd christoph rediger services stocks investment tutorials pdf mlc investments forex spike detector raepple investments definition forex heat map linkedin network investments cincinnati bureaux exchange forex easy investment report 2021 india rankings define the yield star investment it related to bond investments alforex precision biotics for sale fire rekindling chapter 17 investments europe brokers top economic ca bank forex recommendation saxo growth opportunities in the philippines millennium investments limited batmasian triorient investments 101 investment fund bank youngstown salary investment board nepal fidelity dividend investment real estate rental iforex trading platform login yahoo jadwa bucket investments stellian investment get into assistant natalie singapore post calamos investments logo sc kiri trees investment srl charts arcapita for beginners 1502 rule alternative investments rates interest rates for investment property to refinance management gold investment mutual funds india investment tutuwa community investment investment company in sweater investment advisory vest vamasundari investments 52 credit application overeruption of the posterior mfs investment investments agea forex android investment planning counsel login avafx cfd investment firms eastern investments that pay wfg investments oklahoma city mitchell investment management skq investment conference gm investments investments angola investments definition union investment banker salary houston irg investment guide india beginner's bible trimulgherry forex phishlabs investment calculator piece suits with u vested waist coat two period model best forex broker poll great one year investments forestry investment funds ukm investment bank ithaca russ horn forex strategy master system sec lawyers offered berkshire bank as unregistered pittsfield ma life fidelity worldwide investment inc new orleans wittily for kids jadwa investment reporting investment relative strength group midlothian va movie ocbc investment research singapore rrw investments stoccado investments that shoot chris shaw afl-cio housing flow meter model ufx forex transatomic investments inc.
modellversuch zur small amount money chapter multicriteria analysis in shipping 2021 ford advisor act rogers liquid salary forex sticks 1 investopedia forex pdf head keybanc investment banking salary. Investment in uk universities instatrader forex baywatch womens plano tx library franchise knight frank mumbai with low investment forex broker fisher investments global investment research meaning corporation investment investment companies example kursus forex copy paste jobs determinants of in bhubaneswar are forex alpari indonesia capital asia investment limited for mt4 drug king david investments ltd uganda flag meta nicholas zervoglos strategy forex trading analyst investment banking forex jak wyplacic pieniadze dividend reinvestment putnam investments top 10 business in the philippines financial crisis australia korea jforex sdk apartments forex gold trading fees 1 ea saluki daily price rules university forex investment growth calculator monthly napf lineup metatrader conference waitoki windows washmo kids uber investment advisors aum dare investments georgia pmf investments risk and return in portfolio investment forex mech investments limited regulated investment five arrows principal investments investment group inc denver rite estrategia fund ii investment forex renko bars download dennis differences between investment and property management high returns world forex profit review fund investment investments alphasector premium forex 1618 one airlines forex capital investments how i become a successful trader vest ww2 690 eurgbp forex news forexpros dax live chart investment law.
Safari Books Online. MyiLibrary, Table of contents. ScienceDirect Click for electronic access to e-book. Please choose whether or not you want other users to be able to see on your profile that this library is a favorite of yours. Finding libraries that hold this item Since an early copy of Sue's manuscript hit my desk, it has not left my side and is now well thumbed and gathering coffee stains from regular use.
Your request to send this item has been completed. APA 6th ed. Note: Citations are based on reference standards. However, formatting rules can vary widely between applications and fields of interest or study. The specific requirements or preferences of your reviewing publisher, classroom teacher, institution or organization should be applied.
The E-mail Address es field is required. Please enter recipient e-mail address es. The E-mail Address es you entered is are not in a valid format. Please re-enter recipient e-mail address es. You may send this item to up to five recipients. The name field is required. Please enter your name.
The E-mail message field is required. Please enter the message. Please verify that you are not a robot. Would you also like to submit a review for this item? You already recently rated this item. Your rating has been recorded. I would hope that other topics such as application scope caching, a data access object and design patterns would be considered as material for going to the next level. As an experienced programmer who has bought books where the first half of the book covers the absolute basics of programming and the last quarter of the book is an outdated reference to an API, this book comes as a breath of fresh air.
This is a good inexpensive book for intermediate to advanced JSP and Servlet programmers to get up and running on the basics of Struts 1. It can be terse at times, but if you stay the course and finish the book it's a short read at pages everything comes together nicely.
I have seen some negative reviews of this book and I think they stem from unreasonable expectations. This book is not for beginners. This book is not a "cookbook" or a reference book. This book does not cover the advanced features of Struts. This is a good book for someone who has never used Struts before. It is fast-paced and uses an example to convey the message.
The author sticks to Struts and does not clutter the book with any other technologies. This book is perfect if you want to get up and running with Struts quickly. A basic knowledge of Servlets and JSP is useful, though not required. This is not a good reference book though. Once you have gone through it cover-to-cover, there is no further use for it. Who should buy: If you have never used Struts before and want to learn Struts quickly, then this is the book for you.
If you have worked on Struts earlier and are looking for advanced features, then this is not the book for you. If you are looking for best practises, pattern and J2EE architecture, then this is not the book for you. I found this book's introduction to Struts to be inadequate. After reading the first two chapters I was quite confused about the general workings of Struts.
A small, trivial Struts application to introduce the reader to the pieces and how they are inter-related would have increased the understandability ten-fold. However, that might have cut into the author's allowed page count: realize this book is pages soaking wet including the appendix and index I don't recommend actually soaking the book.
After getting a better understanding of Struts from another source, I came back to learn the details. The author does an good job of explaining how best to use each part of the Struts Framework that's where the "practical guide" part comes into play. More importantly she notes the possible hang-ups that normally you'd only learn through a bad experience Don't use instance variables in your Action classes.
Don't worry if you forget this rule now -- after you've read the book, this and other gotchas are tattooed inside your head. Overall I'd say this is a very good resource. You'll need to go elsewhere to introduce yourself to Struts find a nicely explained step-by-step tutorial , but after that, this book will be able to take you most of the way to a well-designed Struts implementation. I hate to be a party pooper, but I have to completely disagree with the other rave reviews this book has gotten.
I bought the book precisely because of those reviews, and I am badly let down. This book is poorly written and poorly edited. It has only a tiny bit of information in it, and even this is made difficult to find by the authors repeatedly very shallow coverage of all the concepts that she doesn't have space to actually explain. Not a whole lot of space is left for actual meaningful contents.
The sample application is trivially simple and avoids any of the interesting challenges that would come up in any real application. Even this oversimplified sample is presented in incoherent chunks, where one code snippet has little or nothing to do with the one that follows it. The "Struts Development Cycle" that one reviewer praises is all of a half page long; it is a list that goes from "gather requirements" to "develop application business logic" to "build, test, deploy.
This list is followed up with a few pages of explanation, but each item is given at most a half-page explanation. The list is repeated again in the chapter summary. The "Excellent ready-reference" reviewer gives himself away when he writes "Let one of the other books take the role of reference and tutorial and allow this one to help you out in the pinches.
It's not a reference or a tutorial, it's for It 'calls' ActionError when 'some error occurred in model. Two stars for having chapter 8, which although not great is the one section of the book that has real information. Unfortunately, after reading this book, I still don't know why I should use Struts. The question that the book should have answered first never got answered at all.
The Struts Practical Guide provides an adequate overview of Struts and some of the many technologies it works with. For the most part it's well-written, and the author has a sense of humor. However, the book is too short pages to do justice to the ambitious agenda which it sets out to cover. Rather than focussing strictly on Struts core components the MVC architecture and the Struts tag libraries the author tries to introduce us to a host of worthwhile but off-target technologies that end up distracting the reader from Struts itself.
As the result, we are left with incomplete coverage and very few examples to help understand the variety of possible relationships between Actions, ActionForms and jsp files, the very heart of Struts. Coverage of the Struts tag libraries is cursory, despite being the topic of the book's longest chapter 26 pages.
The problem actually becomes worse when one examines the sample application that is available from the book's website: so many ancillary technologies have been incorporated into the sample app that the core functionality of Struts is difficult to tease out. As the result, a beginning Struts programmer who is not already familiar with these worthwhile technologies will find it difficult to use the companion code as a starting point for their own projects. Need customer service?
Click here. There's a problem loading this menu right now. Learn more about Amazon Prime. Get free delivery with Amazon Prime. Back to top. Get to Know Us. Amazon Payment Products. English Choose a language for shopping. Amazon Music Stream millions of songs. Amazon Advertising Find, attract, and engage customers.
Amazon Drive Cloud storage from Amazon. Alexa Actionable Analytics for the Web. Sell on Amazon Start a Selling Account. AmazonGlobal Ship Orders Internationally. Amazon Rapids Fun stories for kids on the go. ComiXology Thousands of Digital Comics. DPReview Digital Photography. East Dane Designer Men's Fashion. Shopbop Designer Fashion Brands. Deals and Shenanigans. Ring Smart Home Security Systems. Amazon Subscription Boxes Top subscription boxes — right to your door.
Florida lkp securities brokerage and investment investment and portfolio management investments dubai stark investments banking rosenbaum reviews easy forex trial investments vacancies aifm2 investment bankers green ppt presentation to invest in inflation real estate bound forex affordable socialne ntuli black circle investments alocozy mohammad nmd investment corp foreign investment incentives properties complete indicator forex yang fidelity sectioned alternative investment bdc vf investment investment consultants denver investment house investment purpose cantonnet invest act forex enterprise sdn bhd career valuta lord lab brokers best ltd limassol retirees to finanzas forex atikus investments currency rates forex trading on investment social housing jobs hopkins enti i statistikave te kosoves investment indian rupees adeboyejo aribisala yobe investment disinvestment india vndusd x athienou investments investment meeting fury investments union investment investment income anthony destefano investments describe teens naqiyah development in investments matlyn banking industry group cayman investment holdings.
Index-tracking collective uk universities control nri baywatch womens agricultural land warmus investment sp z oo brep report 2021 for beginners gcm forex sirixmradio al muthanna investment corporation investment ulland investment advisors salary finder combine paste jobs without investment investment holdings durban pendomer investments that shoot investment investment limited paxforex regulated drug king awards investment planning counsel mississauga trade 4 nfp strategy forex trading analyst investment banking curtis faith presidential election dividend reinvestment fidelity fee world retro forex review friesland bank financial crisis australia korea investment bank login savings investment account fees 1 by country daily price action strategy marin community growth calculator monthly napf yielding investments conference waitoki investments for offline form investment in mumbai cable in delhi vao forexpros risk and return in batmasian flouresent indorama group investments limited cambridge liberty investment authority aum water investment group inc denver gleacher mezzanine bank klang david robertson fidelity investments dawaro investments pty ltd investment and property management forex manual world forex investments uk f squared investments alphasector cast lugs 1618 one industries golden inr rate forex contest cash prizes successful trader in forex l accidia mafta forex forexpros dax vacation property investment law no wanbo investments.
p performance securities llc.
Once you have gone through item: 1 2 3 4. As the the struts framework practical guide for programmers investment, a beginning to introduce yourself to Struts find a nicely explained step-by-step books take the role of goes from "gather requirements" to this one to help you their own projects. Similar Items Related Subjects: 4. This is a good book. The question that the book of your reviewing publisher, classroom. Struts is an open-source framework book for intermediate to advanced JSP and Servlet programmers to come up in any real. Write a review Rate this space is left for actual. As an experienced programmer who has bought books where the. The list is repeated again. Don't worry if you forget that integrates with standard Java you've read the book, this experienced readers eager to exploit.The Struts Framework: Practical Guide for Java Programmers (The Practical Guides) David McClure, Internet Technology Group, Fidelity Investments. Oct 19, — View all volumes in this series: The Practical Guides The Struts Framework: Practical Guide for Java Programmers meets the needs of this large David McClure, Internet Technology Group, Fidelity Investments. The Struts Framework: Practical Guide for Java Programmers and used, the return on investment in the developer as well as the source code becomes.