Oracle JDeveloper 11gR2 Cookbook(English, Electronic book text, Haralabidis Nick)
Quick Overview
Product Price Comparison
What you will learn from this book Get quickly up and running by downloading, installing and optimizing JDeveloper on Linux Absorb the foundational techniques presented for laying out the Fusion Web ADF Application during the application architectural phases Get to grips with using custom properties and property sets for generic programming and overriding doDML() to populate sequence attributes Work with View objects, List-of-Values, Bind Variables and View Criteria Handle security, exceptions, logging and session timeouts Create and use generic extension interfaces, service-enabling Application Modules and shared Applications Modules Go further with ADF Faces techniques like using custom listeners for query panel operations and programmatically executing operation bindings Master Task Flow techniques such as using a Method Call activity to initialize a page and using Task Flow Initializers In Detail Oracle’s Application Development Framework (ADF) for Fusion Web Applications leverages Java EE best practices and proven design patterns to simplify constructing complex web solutions with JDeveloper, and this hands-on, task-based cookbook enables you to realize those complex, enterprise-scale applications. With the help of real-world implementations, practical recipes cover everything from design and construction, to deployment, testing, debugging and optimization. This practical, task-based cookbook takes you, the ADF developer, on a practical journey for building Fusion Web Applications. By implementing a range of real world use cases, you will gain invaluable and applicable knowledge for utilizing the ADF framework with JDeveloper 11gR2. “Oracle JDeveloper 11gR2 Cookbook” is a task-based guide to the complete lifecycle of Fusion Web Application development using Oracle JDeveloper 11gR2 and ADF. You will get quickly up and running with concepts like setting up Application Workspaces and Projects, before delving into specific Business Components such as Entity Objects, View Objects, Application Modules and more. Along the way you will encounter even more practical recipes about ADF Faces UI components and Backing Beans, and the book rounds off by covering security, session timeouts and exceptions. With “Oracle JDeveloper 11gR2 Cookbook” in hand you will be equipped with the practical knowledge of a range of ready to use implementation cases which can be applied to your own Fusion Web ADF Applications. Approach “Oracle JDeveloper 11gR2 Cookbook” is a practical cookbook which goes beyond the basics with immediately applicable recipes for building ADF applications at an intermediate-to-advanced level. Who this book is for If you are a JavaEE developer who wants to go beyond the basics of building ADF applications with Oracle JDeveloper 11gR2 and get hands on with practical recipes, this book is for you. You should be comfortable with general Java development principles, the JDeveloper IDE, and ADF basics. About the Author Nick Haralabidis has over 20 years experience in the Information Technology industry, and a multifaceted career in such positions as Senior IT Consultant, Senior Software Engineer and Project Manager for a number of U.S. and Greek corporations (Compuware, Chemical Abstracts Service, NewsBank, CheckFree, Intrasoft International, Unisystems, MedNet International and others). His many years of experience have exposed him to a wide range of technologies ranging from Java, J2EE, C++, C, and Tuxedo, to a number of database technologies. For the last four years Nick has been actively involved in large implementations of next generation enterprise applications utilizing Oracle’s JDeveloper, Application Development Framework (ADF) and SOA technologies. He holds a B.S. in Computer Engineering and an M.S. in Computer Science from the University of Bridgeport. When he is not pursuing ADF professionally, he writes on his blogs JDeveloper Frequently Asked Questions (http://jdeveloperfaq.blogspot.com) and ADF Code Bits (http://adfcodebits.blogspot.com). He is active in the Oracle Technology Network (OTN) JDeveloper and ADF forum where he both learns from and helps other forum users. Table of Contents Preface Chapter 1: Prerequisites to Success: ADF Project Setup and Foundations Introduction Installation of JDeveloper on Linux Breaking up the application in multiple workspaces Setting up BC base classes Setting up logging Using a custom exception class Using ADFUtils/JSFUtils Using page templates Using a generic backing bean actions framework Chapter 2: Dealing with Basics: Entity Objects Introduction Using a custom property to populate a sequence attribute Overriding doDML() to populate an attribute with a gapless sequence Creating and applying property sets Using getPostedAttribute() to determine the posted attribute's value Overriding remove() to delete associated children entities Overriding remove() to delete a parent entity in an association Using a method validator based on a view object accessor Using Groovy expressions to resolve validation error message tokens Using doDML() to enforce a detail record for a new master record Chapter 3: A Different Point of View: View Object Techniques Introduction Iterating a view object using a secondary rowset iterator Setting default values for view row attributes Controlling the updatability of view object attributes programmatically Setting the Queryable property of a view object attribute programmatically Using a transient attribute to indicate a new view object row Conditionally inserting new rows at the end of the rowset Using findAndSetCurrentRowByKey() to set the view object currency Restoring the current row after a transaction rollback Dynamically changing the WHERE clause of the view object query Removing a row from a rowset without deleting it from the database Chapter 4: Important Contributors: List of Values, Bind Variables, View Criteria Introduction Setting up multiple LOVs using a switcher attribute Setting up cascading LOVs Creating static LOVs Overriding bindParametersForCollection() to set a view object bind variable Creating view criteria programmatically Clearing the values of bind variables associated with the view criteria Searching case insensitively using view criteria Chapter 5: Putting them all together: Application Modules Introduction Creating and using generic extension interfaces Exposing a custom method as a web service Accessing a service interface method from another application module A passivation/activation framework for custom session-specific data Displaying application module pool statistics Using a shared application module for static lookup data Using a custom database transaction Chapter 6: Go with the Flow: Task Flows Introduction Using an application module function to initialize a page Using a task flow initializer to initialize a task flow Calling a task flow as a URL programmatically Retrieving the task flow definition programmatically using MetadataService Creating a train Chapter 7: Face Value: ADF Faces, JSF Pages, and User Interface Components Introduction Using an af:query component to construct a search page Using an af:pop-up component to edit a table row Using an af:tree component Using an af:selectManyShuttle component Using an af:carousel component Using an af:poll component to periodically refresh a table Using page templates for pop-up reuse Exporting data to a client file Chapter 8: Backing not Baking: Bean Recipes Introduction Determining whether the current transaction has pending changes Using a custom af:table selection listener Using a custom af:query listener to allow execution of a custom application module operation Using a custom af:query operation listener to clear both the query criteria and results Using a session scope bean to preserve session-wide information Using an af:popup during long running tasks Using an af:popup to handle pending changes Using an af:iterator to add pagination support to a collection Chapter 9: Handling Security, Session Timeouts, Exceptions, and Errors Introduction Enabling ADF security Using a custom login page Accessing the application's security information Using OPSS to retrieve the authenticated user's profile from the identity store Detecting and handling session timeouts Using a custom error handler to customize how exceptions are reported to the ViewController Customizing the error message details Overriding attribute validation exceptions Chapter 10: Deploying ADF Applications Introduction Configuring and using the Standalone WebLogic Server Deploying on the Standalone WebLogic Server Using ojdeploy to automate the build process Using Hudson as a continuous integration framework Chapter 11: Refactoring, Debugging, Profiling, and Testing Introduction Synchronizing business components with database changes Refactoring ADF components Configuring and using remote debugging Logging Groovy expressions Dynamically configuring logging in WebLogic Server Performing log analysis Using CPU profiler for an application running on a standalone WebLogic server Configuring and using JUnit for unit testing Chapter 12: Optimizing, Fine-tuning, and Monitoring Introduction Using Update Batching for entity objects Limiting the rows fetched by a view object Limiting large view object query result sets Limiting large view object query result sets by using required view criteria Using a work manager for processing of long running tasks Monitoring the application using JRockit Mission Control Chapter 13: Miscellaneous Recipes This chapter is not present in the book but is available as a free download from:http://www.packtpub.com/sites/default/files/downloads/4767EN_Chapter 13_Miscellaneous Recipes.pdf Index