Professional Java for Web Applications
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title Professional Java for Web Applications


The comprehensive Wrox guide for creating Java web applications for the enterprise

This guide shows Java software developers and software engineers how to build complex web applications in an enterprise environment. You'll begin with an introduction to the Java Enterprise Edition and the basic web application, then set up a development application server environment, learn about the tools used in the development process, and explore numerous Java technologies and practices. The book covers industry-standard tools and technologies, specific technologies, and underlying programming concepts.

  • Java is an essential programming language used worldwide for both Android app development and enterprise-level corporate solutions
  • As a step-by-step guide or a general reference, this book provides an all-in-one Java development solution
  • Explains Java Enterprise Edition 7 and the basic web application, how to set up a development application server environment, which tools are needed during the development process, and how to apply various Java technologies
  • Covers new language features in Java 8, such as Lambda Expressions, and the new Java 8 Date & Time API introduced as part of JSR 310, replacing the legacy Date and Calendar APIs
  • Demonstrates the new, fully-duplex WebSocket web connection technology and its support in Java EE 7, allowing the reader to create rich, truly interactive web applications that can push updated data to the client automatically
  • Instructs the reader in the configuration and use of Log4j 2.0, Spring Framework 4 (including Spring Web MVC), Hibernate Validator, RabbitMQ, Hibernate ORM, Spring Data, Hibernate Search, and Spring Security
  • Covers application logging, JSR 340 Servlet API 3.1, JSR 245 JavaServer Pages (JSP) 2.3 (including custom tag libraries), JSR 341 Expression Language 3.0, JSR 356 WebSocket API 1.0, JSR 303/349 Bean Validation 1.1, JSR 317/338 Java Persistence API (JPA) 2.1, full-text searching with JPA, RESTful and SOAP web services, Advanced Message Queuing Protocol (AMQP), and OAuth

Professional Java for Web Applications is the complete Wrox guide for software developers who are familiar with Java and who are ready to build high-level enterprise Java web applications.


Nicholas S. Williams is a recognized expert in Java and related technologies. In 2010, he was named Software Engineer of the Year for Middle Tennessee. Nick participates extensively in the Open Source community, contributing bug fixes, new features, and documentation to projects like Apache Log4J, Apache Tomcat, Jackson Mapper, Spring Framework, and Spring Security.


Introduction xxiii

Part I: Creating Enterprise Applications

Chapter 1: Introducing Java Platform, Enterprise Edition 3

Chapter 2: Using Web Containers 19

Chapter 3: Writing Your First Servlet 41

Chapter 4: Using JSPs to Display Content 73

Chapter 5: Maintaining State Using Sessions 105

Chapter 6: Using the Expression Language in JSPs 143

Chapter 7: Using the Java Standard Tag Library 177

Chapter 8: Writing Custom Tag and Function Libraries 209

Chapter 9: Improving Your Application Using Filters 233

Chapter 10: Making Your Application Interactive wi th WebSockets 257

Chapter 11: Using Logging to Monitor Your Application 297

Part II: Adding Spring Framework Into the Mix

Chapter 12: Introducing Spring Framework 323

Chapter 13: Replacing Your Servlets with Controllers 355

Chapter 14: Using Services and Repositories to Support Your Controllers 389

Chapter 15: Internationalizing Your Application with Spring Framework i18n 417

Chapter 16: Using JSR 349, Spring Framework, and Hibernate Validator for Bean Validation 441

Chapter 17: Creating RESTful and SOA P Web Services 473

Chapter 18: Using Messaging and Clustering for Flexibility and Reliability 509

Part III: Persisting Data with JPA and Hibernate ORM

Chapter 19: Introducing Java Persistence API and Hibernate ORM 543

Chapter 20: Mapping Entities to Tables with JPA Annotations 565

Chapter 21: Using JPA in Spring Framework Repositories 597

Chapter 22: Eliminating Boilerplate Repositories with Spring Data JPA 633

Chapter 23: Searching for Data with JPA and Hibernate Search 663

Chapter 24: Creating Advanced Mappi ngs and Custom Data Types 693

Part IV: Securing Your Application wi th Spring Security

Chapter 25: Introducing Spring Security 729

Chapter 26: Authenticating Users with Spring Security 747

Chapter 27: Using Authorization Tags and Annotations 779

Chapter 28: Securing RESTful Web Services with OAuth 815

Summary 862

Index 865