BEGINNING JAVASERVER PAGES

By H. KILIT

CONTENTS PART I: JSP FUNDAMENTALS CHAPTER 1: GETTING STARTED WITH JAVASERVER PAGES CREATING APPLICATIONS FOR THE INTERNET LIMITATIONS OF THE BASIC WEB SERVER MODEL DYNAMIC HTML GENERATION VIA CGI SHORTCOMINGS OF CGI IMPROVING JAVA-BASED CGI: SERVLETS SUMMARY EXERCISES CHAPTER 2: JSP BASICS 1: DYNAMIC PAGE CREATION FOR DATA PRESENTATION THE ANATOMY OF A JSP PAGE DIRECTIVES XML-COMPATIBLE SYNTAX TEMPLATE DATA ACTION SCRIPTING ELEMENTS HANDLING HTML FORM SUBMISSION WITH JSP WEB SITE PERSONALIZATION CHAPTER 3: JSP BASICS 2: GENERALIZED TEMPLATING AND SERVER SCRIPTING SCRIPTING ELEMENTS FOR JAVA CODE EMBEDDING CREATING A SIMPLE WEB STOREFRONT ATTACHING ATTRIBUTES TO IMPLICIT OBJECTS RENDERING THE LIST OF CATEGORIES RENDERING THE LIST OF PRODUCTS IN A GIVEN CATEGORY ADDING A SHOPPING CART TO A CATALOG CREATING THE SHOPPING CART DECODING INCOMING REQUEST PARAMETERS RENDERING ORDER INFORMATION RENDERING THE RETURN TO SHOPPING HYPERLINK SHOPPING CART LIMITATIONS OVERCOMING THE SHOPPING CART LIMITATIONS SESSIONS AND JSPS RENDERING THE SHOPPING CART USING A SESSION ATTRIBUTE CHAPTER 4: CSS, JAVASCRIPT, VBSCRIPT, AND JSP CODE ELEMENTS THAT EXECUTE ON THE CLIENT SIDE CASCADING STYLESHEETS JAVASCRIPT VBSCRIPT USER PREFERENCE IMPLEMENTATION CREATING A USER-CUSTOMIZABLE DHTML MENU CHAPTER 5: JSP AND EL EL AND ITS VITAL ROLE IN JSP EL NAMED VARIABLES APPLYING EL USING EL EXPRESSIONS INLINE WITH TEMPLATE DATA USING EL EXPRESSIONS IN ATTRIBUTE VALUES COERCION: AUTOMATIC TYPE CONVERSION BOXING AND UNBOXING COERCION TO A STRING COERCION TO A NUMBER COERCION TO A CHARACTER BEST ATTEMPT TO “DO THE RIGHT THING” WITHOUT ERROR ACCESSING OBJECT PROPERTIES AND COLLECTIONS USER-SUPPLIED FUNCTIONS WITHIN EL NAMESPACE AND EL FUNCTIONS STATIC METHODS OF A JAVA CLASS CHAPTER 6: JSP TAG LIBRARIES AND JSTL THE VITAL ROLE OF JSP TAG LIBRARIES THE JSP STANDARD TAG LIBRARY ANATOMY OF A TAG LIBRARY THE TAG LIBRARY DESCRIPTOR THE TAGLIB MAP IN THE WEB XML DEPLOYMENT DESCRIPTOR LOCATING JSTL AND UNDERSTANDING TAG LIBRARY PACKAGING JSTL TAGS CHAPTER 7: JSP DIRECTIVES DIRECTIVE BASICS DIRECTIVES AS INSTRUCTIONS FOR THE CONTAINER ALTERNATIVE XML SYNTAX FOR DIRECTIVES AVAILABLE JSP DIRECTIVES THE PAGE DIRECTIVE THE LANGUAGE ATTRIBUTE THE EXTENDS ATTRIBUTE THE IMPORT ATTRIBUTE THE SESSION ATTRIBUTE THE INFO ATTRIBUTE THE ISELIGNORED ATTRIBUTE THE ISERRORPAGE ATTRIBUTE THE ERRORPAGE ATTRIBUTE THE CONTENTTYPE ATTRIBUTE THE TAGLIB DIRECTIVE TWO GENERAL USAGE FORMS FOR THE TAGLIB DIRECTIVE ATTRIBUTES OF THE TAGLIB DIRECTIVE HOW IT WORKS THE INCLUDE DIRECTIVE THE INCLUDE PERFORMED AT TRANSLATION TIME CHAPTER 8: JSP STANDARD ACTIONS JSP STANDARD ACTIONS ARE BUILT-IN TAGS ACTIONS FOR WORKING WITH JAVABEANS THE <JSP:USEBEAN> STANDARD ACTION HOW <JSP:USEBEAN> AND JSTL <C:SET> DIFFER INCLUDING JSP OUTPUT VIA <JSP:INCLUDE> TRANSFERRING CONTROL BETWEEN JSPS THE <JSP:FORWARD> STANDARD ACTION SPECIFYING PARAMETERS FOR OTHER ACTIONS THE <JSP:PARAM> STANDARD ACTION WORKING WITH PLUG-INS THE <JSP:PLUGIN> STANDARD ACTION THE <JSP:PARAMS> STANDARD ACTION THE <JSP:FALLBACK> STANDARD ACTION STANDARD ACTIONS SPECIFIC TO TAG FILES CHAPTER 9: JSP AND JAVABEANS ANATOMY OF A JAVABEAN JAVABEAN PROPERTIES JAVABEAN METHODS COMMON JAVABEAN PACKAGING HOW JAVABEANS AND EJBS DIFFER CHAPTER 10: ERROR HANDLING UNDERSTANDING THE ORIGIN OF ERRORS ERRORS IN JAVA LANGUAGE CODING ERRORS IN JSP DIRECTIVES AND ACTIONS JSTL ERRORS AND EL ERRORS USER DATA-INPUT ERRORS ERRORS FOUND IN JSP TEMPLATE DATA CHAPTER 11: BUILDING YOUR OWN CUSTOM JSP TAG LIBRARY WHAT IS A TAG FILE? A SIMPLE TAG FILE: DISPLAYING TODAY’S DATE ADVANTAGES OF TAG FILES CODE REUSE HIDING COMPLEXITY SEPARATION OF CONCERNS SIMPLICITY FLEXIBLE PACKAGING DEVELOPING TAG FILES SCOPE AND IMPLICIT OBJECTS USING DIRECTIVES IN TAG FILES BODY PROCESSING ATTRIBUTES PACKAGING TAG FILES JAVA CUSTOM ACTIONS VERSUS TAG FILE CUSTOM ACTIONS CHAPTER 12: ADVANCED DYNAMIC WEB CONTENT GENERATION DATA VALIDATION IN WEB APPLICATIONS SERVER-SIDE VALIDATION AND EFFICIENT USAGE OF RESOURCES CLIENT-SIDE DATA VALIDATION THE NEED FOR SERVER-SIDE VALIDATION COMMON CLIENT-SIDE VALIDATION SCENARIOS OPERATION OF CLIENT-SIDE VALIDATION DYNAMIC GENERATION OF CLIENT-SIDE JAVASCRIPT CODE DYNAMIC GENERATION OF XML USING JSP CHAPTER 13: INTERNATIONALIZATION AND LOCALIZED CONTENT ABOUT INTERNATIONALIZATION-READY APPLICATIONS INTERNATIONALIZATION AND LOCALIZATION THE UNIQUE I18N REQUIREMENTS OF A WEB-BASED JSP APPLICATION BUILDING ON THE JAVA PLATFORM’S I18N CAPABILITIES THE CONCEPT OF A LOCALE MAINTAINING LOCALE INFORMATION CHAPTER 14: JSP DEBUGGING TECHNIQUES THE SCIENCE OF DEBUGGING CATCHING BUGS AT COMPILE TIME USING A DEBUGGING SYSTEM VERSUS A PRODUCTION SYSTEM USING SYSTEM OUT PRINTLN() TO INSTRUMENT CODE USING A LOGGING SYSTEM LOGGING THROUGH THE SERVLET CONTAINER LOGGING WITH THE JDK LOGGER LOGGING WITH LOG4J LOGGING WITH TAG LIBRARIES DEBUGGING WITH TOOLS SETTING BREAKPOINTS EXAMINING VARIABLES AND SETTING WATCHPOINTS STEPPING THROUGH CODE REMOTE DEBUGGING DEBUGGING CODE IN PRODUCTION ENVIRONMENTS DEBUGGING WHEN THE JSP IS PRECOMPILED DEBUGGING UNDER LOAD ADDING CONTEXTUAL INFORMATION TO LOG FILES ADDING LOG FILTERS FINDING THE INTERMITTENT PROBLEM ADDING INFORMATION AS RESPONSE COMMENTS SNOOP APPLICATION AVOIDING CONCURRENCY ISSUES PART II: JSP AND MODERN WEB SERVER SOFTWARE DEVELOPMENT CHAPTER 15: JSPS AND SERVLETS A JSP IS A SERVLET ANATOMY OF A SERVLET THE LIFECYCLE OF A SERVLET DESCRIBING SERVLETS TO CONTAINERS IN THE DEPLOYMENT DESCRIPTOR THE SERVLET DECLARATION USING SERVLETS WHEN JSP IS AVAILABLE SPECIFYING INITIALIZATION PARAMETERS ACCESSING INITIALIZATION PARAMETERS WITHIN THE CONTROLLERSERVLET CUSTOM FORWARDING OF INCOMING REQUESTS VIA THE CONTROLLER SERVLET THE FORWARDING TARGETS CHAPTER 16: THE ROLE OF JSP IN THE WIDER CONTEXT: WEB APPLICATIONS WHAT IS A WEB APPLICATION? DIRECTORY STRUCTURE FOR A WEB APPLICATION THE DEPLOYMENT DESCRIPTOR DEPLOYMENT DESCRIPTOR ELEMENTS FOR A JSP DEVELOPER USING A WEB ARCHIVE DEVELOPMENT AND DEPLOYMENT STRATEGIES PACKAGING AND DEPLOYING FOR TOMCAT INTRODUCTION TO WEB APPLICATION SECURITY CHAPTER 17: MODEL VIEW CONTROLLER WHAT IS MVC? MVC AND WEB APPLICATIONS EXERCISE CHAPTER 18: WEB FRAMEWORKS WHAT IS A FRAMEWORK? WHY FRAMEWORKS ARE GOOD TYPES OF FRAMEWORKS APPLICATION FRAMEWORKS PERSISTENCE FRAMEWORKS UTILITY FRAMEWORKS WEBWORK COMPONENTS OF WEBWORK THE SPRING FRAMEWORK MAIN COMPONENTS OF THE SPRING MVC AN EXAMPLE USING SPRING CHAPTER 19: STRUTS FRAMEWORK INTRODUCING STRUTS A STRUTS WALKTHROUGH CONTROLLER: ACTIONS AND FORMS MODEL VIEW EXAMPLE APPLICATION CHAPTER 20: LAYOUT MANAGEMENT WITH TILES INTRODUCTION TO TILES WHAT IS THE TILES FRAMEWORK? TILES TERMINOLOGY INSTALLING TILES TILE SCOPE DEFINITIONS TILES TAGS INSERT DEFINITION PUT PUTLIST ADD GET GETASSTRING USEATTRIBUTE IMPORTATTRIBUTE INITCOMPONENTDEFINITIONS PASSING PARAMETERS TO TILES ADVANCED TILES DEFINITIONS AND INHERITANCE NESTING TILES TILES AND STRUTS CONFIGURING TILES WITH STRUTS TILES DEFINITIONS AS ACTION FORWARDS PASSING VALUES FROM STRUTS TO TILES CHAPTER 21: JAVASERVER FACES CONFIGURING A JSF PROJECT GETTING STARTED WITH JSF USING BACKING BEANS MANAGED BEANS CONTROLLING NAVIGATION PREVENTING DIRECT ACCESS TO FACES JSP FILES JSF LIFECYCLE RESTORE VIEW APPLY REQUEST VALUES PROCESS VALIDATIONS UPDATE MODEL VALUES INVOKE APPLICATION RENDER RESPONSE VALIDATING DATA USING STANDARD VALIDATORS CREATING YOUR OWN VALIDATION CONVERTING DATA STANDARD CONVERTERS IMPLEMENTING THE CONVERTER INTERFACE HANDLING EVENTS WITH LISTENERS JSF VERSUS STRUTS CHAPTER 22: JSP IN J2EE OVERVIEW OF J2EE WHAT IS J2EE? WHAT DOES A CONTAINER DO? J2EE TECHNOLOGIES J2EE APIS J2EE PLATFORM ARCHITECTURE JSP DEVELOPMENT SCENARIOS USING JSP WITH J2EE COMPONENTS SERVLETS JNDI JDBC EJB BENEFITS OF EJB RESTRICTIONS ON EJB TYPES OF EJB SESSION BEANS ENTITY BEANS MESSAGE-DRIVEN BEANS TIMER SERVICE CHAPTER 23: ACCESS TO DATABASES INTRODUCTION TO DATABASES CONNECTING TO A DATABASE DOWNLOADING AND INSTALLING MYSQL JDBC APIS BUILDING APPLICATIONS DATA CHARACTERISTICS TRANSACTIONS OBJECT-RELATIONAL MAPPING DIFFERENT TYPES OF APPLICATIONS SIMPLE APPLICATIONS USING JSP AND JDBC MORE COMPLEX APPLICATIONS USING HIBERNATE INSTALLING HIBERNATE CHAPTER 24: SECURITY AREAS OF SECURITY AUTHENTICATION AUTHORIZATION DATA INTEGRITY CONFIDENTIALITY DATA INTEGRITY AND CONFIDENTIALITY IMPLEMENTING SSL HTTP BASIC AUTHENTICATION FORM-BASED AUTHENTICATION CLIENT-CERTIFICATE AUTHENTICATION CONTAINER PROGRAMMATIC CHAPTER 25: PERFORMANCE PERFORMANCE CONCEPTS WHAT TO MEASURE THE USER’S PERSPECTIVE HOW TO MEASURE PERFORMANCE WHAT TO DO AFTER PERFORMANCE TESTING MEASURING PERFORMANCE USING JMETER INSTALLING JMETER JMETER CONCEPTS PERFORMANCE TUNING TIPS DEVELOPMENT-TIME MEASURES DEPLOYMENT-TIME MEASURES CHAPTER 26: BEST PRACTICES AND TOOLS DEVELOPMENT METHODOLOGIES WATERFALL AND ITERATIVE METHODOLOGIES RATIONAL UNIFIED PROCESS EXTREME PROGRAMMING TEST-DRIVEN DEVELOPMENT FEATURE-DRIVEN DEVELOPMENT DEVELOPMENT TOOLS VERSION-CONTROL TOOLS BUILD TOOLS TESTING TOOLS LOGGING TOOLS TOOLS FOR ENFORCING CODING STANDARDS APACHE ANT INSTALLING ANT ANT CONCEPTS ADDITIONAL RESOURCES CVS INSTALLING CVS CVS CONCEPTS CONNECTING TO A CVS SERVER CHECKING IN CODE CHECKING OUT CODE COMPARING CHANGES ACROSS REVISIONS JUNIT INSTALLING JUNIT JUNIT CONCEPTS HTTPUNIT INSTALLING HTTPUNIT HTTPUNIT CONCEPTS BEST PRACTICES FOR WEB DEVELOPMENT FOLLOW GOOD JSP CODING PRACTICES SEPARATE APPLICATION LOGIC AND PRESENTATION USE DESIGN PATTERNS WHERE APPROPRIATE USE FRAMEWORKS FOR DEVELOPING APPLICATIONS EARLY TESTING AND INTEGRATION PART III: SPREADING YOUR NEW WINGS: APPLYING JSP IN THE REAL WORLD CHAPTER 27: JSP PROJECT I: PERSONALIZED PORTAL THE PORTAL PROJECT INTRODUCTION TO RSS INTRODUCTION TO WEB SERVICES PROJECT FEATURES USE CASES INITIAL ANALYSIS THE APPLICATION DESIGN DESIGNING THE PERSISTENT STORE DEFINING THE KEY ENTITY OBJECTS DESIGNING THE WEB SITE CONTROL FLOW THE DEVELOPMENT ENVIRONMENT DIRECTORY STRUCTURE BUILD SCRIPTS STRUTS TILES LOG4J ROME APACHE AXIS THE APPLICATION CONTROLLER RUNNING THE PORTAL APPLICATION CHAPTER 28: JSP PROJECT II: SHOPPING CART APPLICATION THE BOOKSTORE PROJECT PROJECT FEATURES APPLICATION DESIGN DATABASE DESIGN THE DEVELOPMENT ENVIRONMENT AND ITS CONFIGURATION TOMCAT ANT DATABASE HIBERNATE STRUTS, VALIDATOR, AND TILES WEB XML APPLICATION LAYOUT: TILES CART STATUS PRESENTING A LIST OF CATEGORIES PRESENTING A LIST OF BOOKS ADDING A BOOK TO THE SHOPPING CART MANAGING THE SHOPPING CART CHECKOUT

ISBN978-93-7738-717-4
Copyright Year2027
Pages1074
Price$275.99
LanguageEnglish
FormatPDF