Home > Computing and Information Technology > Computer programming / software engineering > Web programming > Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language
16%
Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language

Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language

          
5
4
3
2
1

Out of Stock


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Notify me when this book is in stock
Add to Wishlist

About the Book

IBM's Best-Selling Guide to XPages Development–Now Updated and Expanded for Lotus Notes/Domino 9.0.1 XPages instantly revolutionized Notes/Domino application development, and the newest versions deliver unprecedented performance and flexibility. Now, the popular insider's guide to XPages development has been updated and expanded to reflect all these improvements, through IBM Notes/Domino 9.0.1 and beyond. Three key members of the IBM XPages team have brought together comprehensive knowledge for delivering outstanding solutions. They have added several hundred pages of new content, including four new chapters. Drawing on their unsurpassed experience, they present new tips, samples, and best practices reflecting the platform's growing maturity. Writing for both XPages newcomers and experts, they cover the entire project lifecycle, including problem debugging, performance optimization, and application scalability. This second edition of Mastering XPages fully addresses enhancements to the XPages data sources for Domino views and documents; the latest XPages mobile library; the new Domino Designer Server-Side JavaScript debugger; and improvements to integrated technologies such as Dojo and CKEditor. Nearly every chapter contains at least one downloadable sample application, offering extensive hands-on practice. This guide concludes with complete references to XSP tags, relevant Java/JavaScript classes, and XSP style classes. Coverage includes * Understanding XPages' development paradigm, tooling, runtime framework, and application architecture * Configuring Domino Designer and integrating XPages Extension Library * Constructing application logic and using data binding controls * Reading/writing Notes documents: from use cases to design properties * Using Views, including examples of accessing calendars via REST * Making the most of Notes/Domino 9.0's new DataView control * Coding: from the basics to fully customized behavior * Advanced scripting: AJAX, Dojo, @Functions, managed beans, and more * Extending the Rich Text Editor's functionality * Building and consuming new controls with Extensibility APIs * Taking web applications offline in the Notes client * Building mobile apps: controls, design patterns, and best practices * Debugging Server-Side JavaScript with Domino Designer 9.0 * Creating apps that look and work great–for local and global audiences * Systematically optimizing performance and scalability * Protecting data and users: leveraging Domino and Notes security models

Table of Contents:
Foreword   xxiii Preface   xxvii PART I:  GETTING STARTED WITH XPAGES Chapter 1  An Introduction to XPages   3 XPages Fundamentals   3 Onward and Upward: A Path of Continuous Improvement   4 The XPages Development Paradigm   8    The More Things Change, the More Things Stay the Same   10 New Horizons   11 Conclusion   12 Chapter 2  Getting Everything You Need   13 Downloads, Versions, and Locations   13 Installing Domino Designer    14 Installing Client Fix Packs   14 Client Configuration   15 Quick Tour of Domino Designer   16    Domino Designer Home Page   17    Domino Designer Perspective   17    Creating a New Application   19    Creating an XPage   20    Previewing in the Notes Client   21    Previewing in a Web Browser   22     Adding a Control to an XPage   24 Working with the XPages Extension Library   26    Some Quick Notes on Extension Library Structure    30 Conclusion   32 Chapter 3  Building Your First XPages Application   33 Laying the Foundations   34 Forms and Views   36 Building an XPages View   41 Completing the CRUD   47 Conclusion   53 PART II:  XPAGES DEVELOPMENT: FIRST PRINCIPLES Chapter 4  Anatomy of an XPage   57 What Exactly Is an XPage?   58 Understanding XSP Tag Markup   59    Getting Started with XML   59    XPages XML Syntax   62    Simple Properties   63    Complex Properties   64    Complex Values   66    Computed Properties   67    Data Binding   72    XPages Tags   72 Data Sources   73    Domino Document   73    Domino View   74    Data Context   75 Controls   76    Editing Controls   77    Command Controls   82    Selection Controls   85    Display Controls   94    File-Handling Controls   95 Containers   98    Panel   98    Table   101    View   102    Data Table   105    Repeat   106    Include Page   109    Tabbed Panel   110    Section   111 XPage Resources   111    JavaScript Library   112    Style Sheet   114    Resource Bundle   115    Dojo Module and Dojo Module Path   116    Generic Head Resource   116    Metadata Resource   117 Converters   118 Validators   121 Simple Actions   128 Client-Side Scripting   134 HTML Tags   136 Extension Library   137    Dynamic Content   138    Change Dynamic Content Action   142    In Place Form   143    Dialog, Dialog Context, and Dialog Button Bar   147    Tooltip Dialog   150    JSON RPC Service (Remote Service)   154 Conclusion   156 Chapter 5  XPages and JavaServer Faces   157 What Is JavaServer Faces?   158 JSF Primer   159 How Does XPages Extend JSF?   166    XML-Based Presentation Tier   169    Request Processing Lifecycle   169    User Interface Component Model   170    Standard User-Interface Components   176    Value Binding and Method Binding Expression Evaluation   179    XPages Default Variables   182 Conclusion   186 Chapter 6  Building XPages Application Logic   187 Adding Application Logic   187    Using the xp:eventHandler Tag   190 Simple Actions   198    Change Document Mode   198    Confirm Action   199    Create Response Document   200    Delete Document   201    Delete Selected Documents   202    Execute Client Script   203    Execute Script   204    Modify Field   205    Open Page   205    Publish Component Property   207    Publish View Column   208    Save Data Sources    209    Save Document    211    Set Component Mode   213    Set Value   214    Action Group   215    Send Mail   217 Change Dynamic Content   219 Move to Application Page   220 Using JavaScript with XPages   220    Server-Side JavaScript   221    Client JavaScript   240 Conclusion   250 PART III:  DATA BINDING Chapter 7  Working with Domino Documents   253 Domino Document Data Source   254    Creating and Editing Documents   257    Controlling URL Parameter Usage   258    Creating Response Documents   258    Executing Form Logic   263    Managing Concurrent Document Updates   266    Multiple Document Data Sources   272    Document Data Source Events   274    webQuerySaveAgent   278    Common Data Source Properties   282    Miscellaneous Data Source Properties   282 Working with Domino Documents—Programmatically!   283    Simple Actions   283    JavaScript   284 Rich Documents   286 Conclusion   291 Chapter 8  Working with Domino Views   293 databaseName Property   295 View Data Source Filters   296    categoryFilter Property   297    Full Text Search Properties   299    parentId Property   304    ignoreRequestParams Property   305    keys, keysExactMatch Properties   306 Other View Content Modifiers   309    startKeys Property   310    expandLevel Property   310 A Page with Two Views   312    requestParamPrefix Property   313 When Is a View Not a View?   314 Go Fetch! Or Maybe Not   315    loaded, scope Properties   316    postOpenView, queryOpenView Properties   316 Caching View Data   318 Sorting Columns   323    Combining Searching and Sorting   323 Accessing Calendar Data   326    The XPages Calendar REST Service   327    The iNotes Calendar Control   330 Conclusion   336 Chapter 9  Beyond the View Basics   337 Pick a View Control, Any View Control   337 The View Control: Up Close and Personal   340    Column Data Like You’ve Never Seen Before   341    Simple View Panel Make Over   343    Working with Categories   357    View Properties and View Panel Properties   366 Data Table   370    Building a Mini Embedded Profile View Using a Data Table   376 Repeat Control   381    A Repeat Control Design Pattern   383    Nested Repeats   384    The Rich Get Richer   386 Data View   387    Configuring a Basic Data View Control   389    Using More Advanced Data View Control Features   392 Some Fun with the Pager   395 Conclusion   398 PART IV:  PROGRAMMABILITY Chapter 10  Custom Controls   401 Divide and Conquer   402 Getting Started with Custom Controls   403 Using Property Definitions   411    Property Tab   415    Validation Tab   417    Visible Tab   419    Property Definitions Summary   420 Using the compositeData Object   421 Send and You Shall Receive   427    Multiple Instances and Property Groups   430 Custom Control Design Patterns   432    Aggregate Container Pattern   432    Layout Container Pattern   433 Conclusion   441 Chapter 11  Advanced Scripting   443 Application Frameworks   443 AJAX and Partial Refresh   444    Partial Refresh: Out-of-the-Box Style!   445    Partial Refresh: Doing-It-My-Way Style!   453 Event Parameters   460 Dojo Integration   463    dojoTheme and dojoParseOnLoad Properties   463    dojoModule Resource   464    dojoType and dojoAttributes Properties   466 Integrating Dojo Widgets and Extending the Dojo Class Path   466 Working with Traditional Notes/Domino Building Blocks   478    Working with @Functions, @Commands, and Formula Language   479    Working with Agents, In-Memory Documents, and Profile Documents   482 Managed Beans   490 Fulfilling a Customer Requirement: A Practical Field Study   496    Comparing Apples with Apples!   497    Who, What, Where, and (More Important) How?   503 Conclusion   536 Chapter 12  XPages Extensibility   537 How to Create a New User Interface Control   538 Example Component   539 Let’s Get Started   540    Create the Initial Application   540    Add Package Explorer to the Domino Designer Perspective   541    Add a Java Source Code Folder   543 Building a Component   544    Create a UI Component Extension Class   545    Create Tag Specification (.xsp-config) for the UI Component Extension   547 Create a Renderer and Register It in the Application Configuration    (faces-config.xml)   551 Quick Test Application to Verify Everything Is OK So Far   554 Working with Component Properties   555    Component Properties and Attributes   555    Adding a Property to a Component   556    State Holder: Saving State Between Requests   556    Specifying Simple Properties   557    Inheriting xsp-config Properties   558 Create the Initial xsp-config Definitions   562    Create base.xsp-config   562    Create an Interface to Match the Group Property Definition in base.xsp-config   565    Revisit the Component Properties in Domino Designer   568 Specifying Complex Properties   568 Complete the xsp-config for the UISpinner Component   579 Complete the UI Component Extension, UISpinner   588 Complete the Renderer UISpinnerRenderer   591 Create a Sample Application Using the UISpinner Component   597    Take Your New UI Component Extension for a Test Drive   597    Create a Backing Bean   597    Register the Backing Bean   600    Create the Final Test Application   600    Nice Look and Feel   604    Test to Ensure That It All Works!   604 Where to Go from Here   605    XPages Extensibility API Developers Guide   605    XPages Extension Library   606    IBM developerWorks   606 Conclusion   606 Chapter 13  XPages in the Notes Client   607 Think Inside the Box   608 Getting Started with XPages in the Notes Client   610 3, 2, 1...Lift Off   612 Bookmarks   614 Working Offline   616 One of These Things Is Not Like the Other   619 Other Subtle Differences   621 Extended Client-Side JavaScript Commands   624 XPages: A Good Notes Citizen   632 Introducing enableModifiedFlag and disableModifiedFlag   634 Keeping Tabs on Your Client Apps   637 Notes Links Versus Domino Links   641 Some XPiNC Debugging Tips   645 Optimizing XPages for Notes   649    Single Copy XPages Design Meets Preload   652    XPages RunOnServer   657 XPages and Composite Applications   664    Making a Component of an XPages Application   664    Is Anyone Out There? Creating a Component that Listens to Your XPages Component   666    Assembling a Composite Application: Aggregating the XPages Discussion Component and Notes Google Widget   668    Hey, This Is a Two-Way Street. A Component May Receive and Publish Events   672 Further Adventures with Composite Applications   675 Chapter 14  XPages Mobile Application Development   677 Getting Started with Mobile Application Development   678    Safari Browser   680    Chrome Browser   681    Firefox Browser   682    User Agent Device Detection   682    Device Bean   683 Single Page Application Design Pattern   685    Mobile XPage Properties   686    Single Page Application Control (xe:singlePageApp)   687 Mobile Application Navigation   688    Navigator   690    Hierarchical Navigation   692    Context-Sensitive Navigation   694 Interacting with a Mobile Application   697    Orientation-Based Interaction   697    Touch-Based Interaction   701    Multitouch-Based Interaction   702 Mobile Themes   703    Data View   704    Outline   706    Form Table   706    Styling XPages Controls for Mobile Applications   707 Debugging Mobile XPages   710    Debugging XPages on iOS   711    Debugging XPages with Web Inspector Remote (aka weinre)   713 XPages Mobile Extensions   716    Infinite Scrolling   717    Single Page Application Wizard   718 Summary   724 Chapter 15  XPages Unplugged and Debugged   725 Debugging XPages Apps on the Server Side   726    Printing, Dumping, and Logging   726    try / catch / finally   729    Introducing the SSJS Debugger   735    Using the Java Debugger   748    Enabling XPages Java Logging   755 Debugging XPages Apps on the Client Side   759    CSJS Debuggers   760    Debugging Dojo   762 Conclusion   765 PART V:  APPLICATION USER EXPERIENCE Chapter 16  XPages Theming   769 It Used to Be Like That...But Not Anymore   769 Styling with Style   771    Setting the Style Property Manually   776    Understanding How the Style Property Is Used   777    Computing the Style Property   778 Styling with Class   779    Getting Something for Nothing   779    Understanding How the styleClass Property Is Used   785    Computing the styleClass Property   788    Working with Extended styleClass and style Properties   790 Theming on Steroids!   794    What Is a Theme?   794    What Can You Do with a Theme?   795    Understanding Theme Architecture and Inheritance   796    Working with a Theme   804    Theme Resources   814    Resource Paths   824    Theme Properties, themeId, Control Definitions, and Control Properties   832 Conclusion   848 Chapter 17  Application Layout   849 Divide and Conquer   849 Application Layout: One Easy Way   850 Application Layout: Customizing the Content Area   865 Conclusion   870 Chapter 18  Internationalization   871 Using Localization Options   872    Localization with Resource Bundle Files   873    Setting Localization Options   874    Testing a Localized Application   877    Working with Translators   878    Merging XPage Changes   881    Gotchas! 883 Localizing Computed Expressions and JavaScript   885    Adding a Resource Bundle   887    Localizing Computed Expressions   889    Localizing Client-Side JavaScript   889 Localizing Script Libraries   890    Server-Side Script Libraries   890    Client-Side Script Libraries   891 International Enablement   893 Locales in XPages   894 Deprecated Locale Codes   898 Localizing Computed Fields   900 Conclusion   901 PART VI:  PERFORMANCE, SCALABILITY, AND SECURITY Chapter 19  A First Look at Performance and Scalability   905 Golden Rules   906 Understanding the XPages Request Processing Lifecycle   908    GET-Based Requests and the XPages Request Processing Lifecycle   909    POST-Based Requests and the XPages Request Processing Lifecycle   910 Reducing CPU Utilization   912    GET-Based Versus POST-Based Requests   912    Partial Refresh   917    Partial Execution Mode   919 Reducing Memory Utilization   923    HTTPJVMMaxHeapSize and HTTPJVMMaxHeapSizeSet Parameters   924    xsp.persistence.* Properties   925    dataCache Property   926 Conclusion   928 Chapter 20 Advanced Performance Topics   931 Making Efficient XPages Requests   931    Profiling XPages Applications   932 Introspecting XPages Requests Using a PhaseListener   949    The Myths and Realities of the Rendered and Loaded Properties   964    Using Partial Refresh, Partial Execution, and Dynamic Content   981 Making Scalable XPages Requests   1004    Understanding the XPages Memory Model   1005    Analyzing XPages Memory Usage   1008    Establishing the Optimal Scalability Configuration   1020 Conclusion   1034 Chapter 21  Security   1035 Notes/Domino Security and XPages   1035    Server Layer of Security   1036    Application Layer of Security   1037    Design Element Layer of Security   1039    Document Layer of Security   1046    Workstation ECL Layer of Security   1048    Useful Resources   1049 Now Get Started   1049    Creating the Initial Application   1049    Implementing ACLs   1051    Sign the XPages with Your Signature   1052 Programmability Restrictions   1053    Sign or Run Unrestricted Methods and Operations   1054    Sign Agents to Run on Behalf of Someone Else   1055    Sign Agents or XPages to Run on Behalf of the Invoker   1055    Sign Script Libraries to Run on Behalf of Someone Else   1055 Restricted Operation   1056 XPages Security Checking   1057    NSF ClassLoader Bridge   1058 XPages Security in the Notes Client   1058    Execution Control List (ECL)   1059 Active Content Filtering   1062 Public Access   1065    Setting Public Access for XPages   1065    Checking for Public Access in XPages   1066 SessionAsSigner   1067 Enabling Extended Java Code with the java.policy File   1069 Conclusion   1071 PART VII:  APPENDIXES Appendix A  XSP Programming Reference   1075 XSP Tag Reference   1075 XSP Java Classes   1076 Notes/Domino Java API Classes   1078 XSP JavaScript Pseudo Classes   1078 Appendix B  XSP Style Class Reference   1081 XSP CSS Files   1081 XSP Style Classes   1082 IBM OneUI Themes and Documentation   1086 Appendix C  Useful XPages Sites on the Net   1087 Index   1089  


Best Sellers


Product Details
  • ISBN-13: 9780133373370
  • Publisher: Pearson Education (US)
  • Publisher Imprint: IBM Press
  • Depth: 64
  • Height: 231 mm
  • No of Pages: 1168
  • Spine Width: 63 mm
  • Weight: 1908 gr
  • ISBN-10: 0133373371
  • Publisher Date: 01 May 2014
  • Binding: Hardback
  • Edition: 2
  • Language: English
  • Series Title: IBM Press
  • Sub Title: A Step-by-Step Guide to XPages Application Development and the XSP Language
  • Width: 183 mm


Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Click Here To Be The First to Review this Product
Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language
Pearson Education (US) -
Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!
    ASK VIDYA