I was trying to send a file as an attachment and force the browser to display the Save As dialog in a project I did last year. I browsed through all servlets/JSP books in the bookstore but I couldn't find the recipe. After I found out how, I thought it would be handy if there is a Web programming book that tells you real-life tricks, as well as covers features in the latest versions of the servlet/JSP technologies. So, I decided to write "Java for the Web with Servlets, JSP, and EJB." This book discusses techniques you've been wondering how to do, such as the one described above. In fact, the strength of this book is that it presents solutions to challenges professional Web developers face in their day-to-day work. Take also as an example the chapter that presents file upload, which is the bug free version of my article at www.onjava.com. This article offers the code that does that as well as explains what happens behind the scene by presenting the details of HTTP requests! This book also includes a copy of my File Upload bean that is licensed by a Fortune 500 company and used in projects in small and multinational companies. This software has not made me a millionaire (yet:)), but I was flattered when IBM asked my permission to include the modified source code of the bean in its WebSphere documentation. This book is also full of real-life projects you're gonna love, especially Docman, the web-based document management project that provides you with the database-based permission systems to allow who can access a file on the server and who cannot. And, you will like the browser-independent script that makes Docman's user interface look and feel like Windows Explorer, only inside the browser. Also, if you are a fan of applets, you'll be delighted to find a chapter that discusses how applets can communicate with JavaScript scripts. At 976 pages, this book is one of the largest. There is room for almost everything you need to know about Java Web programming, including the recommended Model 2 architecture. This book not only explains the concept, but there is an e-commerce project that implements the design model, putting the theory into practice. In explaining all the new and sometimes difficult technologies, I believe that to make one understand a concept, the most effective way is to make sure the person is involved. That's why I start my chapters by making sure the reader can run the code from the very beginning. Chapter 1, for example, starts by making sure that the reader can write and deploy a servlet in 6 easy steps. Afterwards, I move to explain the concept behind what the reader has experienced. In other words, I persuade the reader to understand a technology only after the reader is familiar with it. Chapter 28 is on EJB and I try to make you ask this question after you read it: Who said EJB is difficult?
An IT manager loves the introduction that includes the "Java versus Microsoft fight" for server market dominance, how J2EE compares with Microsoft .NET, and who I think will win. A software architect thinks that this book is easy to read because it introduces business scenarios first and then discusses what technologies need to be applied. Other people who know that I write books often ask me this question, "So, you write books. Are you the brightest in the field?" Well, to me writing books is more of perseverance than of brilliance. There are many developers who are much better than me and whom I really respect for their works. I know how to teach though, and I am good at it. So, I hope you enjoy this. You can see the cover by clicking here http://www.amazon.com/exec/obidos/ASIN/073571195X/brainysoftwar-20, and you can contact me at [EMAIL PROTECTED] Cheers, Budi Kurniawan ___________________________________________________________________________ To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff SERVLET-INTEREST". Archives: http://archives.java.sun.com/archives/servlet-interest.html Resources: http://java.sun.com/products/servlet/external-resources.html LISTSERV Help: http://www.lsoft.com/manuals/user/user.html
