You are previewing PowerBuilder® 9: Internet and Distributed Application Development.
O'Reilly logo
PowerBuilder® 9: Internet and Distributed Application Development

Book Description

Version 9 of PowerBuilder introduces many features designed specifically to blend the traditional strength of PowerBuilder as a rapid Client/Server application development tool with the new and emerging models for distributed application development. PowerBuilder developers need PowerBuilder-specific information on interacting with Java application servers, such as WebSphere, WebLogic, and Sybase's Enterprise Application Server (EAServer) and Web Service development. This book presents the new capabilities of PowerBuilder 9 along with the architecture and patterns required to create distributed systems in PowerBuilder.

Table of Contents

  1. Copyright
  2. Foreword
  3. About the Authors
  4. Acknowledgments
  5. We Want to Hear from You!
  6. Introduction
  7. Distributed Computing Basics
    1. Introduction to Distributed Application Development
      1. Objectives
      2. What Is Distributed Computing?
      3. What Are Business Objects?
      4. Why Use Business Objects?
      5. PowerBuilder Architecture Evolution
      6. Client/Server Architecture Evolution
      7. Distributed Architecture Concepts
      8. Protocols, Sockets, and Ports
      9. Distributed Concepts
      10. Distributed Object Models
      11. Conclusion
    2. Introduction to Distributed Application Development with PowerBuilder
      1. Objectives
      2. A Distributed Application Explained
      3. The Evolution of Distributed Application Development with PowerBuilder
      4. Common Distributed Computing Techniques from a PB Perspective
      5. PowerBuilder's Role in Distributed Computing
      6. What You Can Do with PB Today
      7. Conclusion
    3. Introduction to EAServer
      1. Objectives
      2. Introducing EAServer
      3. Catch the Jaguar
      4. Surveying EAServer's Features, Services, and Architecture
      5. EAServer's Role in the Enterprise
      6. Is EAServer Right for Your Project?
      7. Conclusion
    4. Migrating Existing Applications
      1. Objectives
      2. Why Migrate?
      3. Migrate or Rewrite
      4. Migration Targets
      5. Well-Formed Code
      6. Migration
      7. Complexities
      8. Sample Project Plans
      9. Web.PB and DPB Applications
      10. Conclusion
    5. Developing Components
      1. Objectives
      2. What Is a Component?
      3. Different Types of Components
      4. Developing Components
      5. Sample Component Development
      6. Conclusion
  8. Developing Distributed Applications
    1. Distributed Application Analysis and Design
      1. Objectives
      2. Defining the Business Problem
      3. How Do You Follow a System Development Life Cycle (SDLC)?
      4. The Difficulties of Distributed Application Development
      5. The Distributed Application SDLC
      6. Logical Analysis and Design
      7. Physical Design
      8. Physical Data Model
      9. Testing—Designing to Succeed
      10. Using the Design to Set the Scope
      11. Conclusion
    2. Exploring the Web DataWindow
      1. Objectives
      2. The Power of the DataWindow
      3. Understanding the Web DataWindow
      4. When to Use Web DataWindows
      5. Architecture
      6. DataWindow Settings
      7. PowerDynamo
      8. JavaServer Pages
      9. Active Server Pages (ASP)
      10. Application Server
      11. Custom Components
      12. Microsoft Transaction Server (MTS)
      13. Client Events and Scripting
      14. Advanced Features
      15. Conclusion
    3. XML DataWindows
      1. Introduction
      2. What Is XML?
      3. XML Parsers
      4. DataWindow Export Engine
      5. Export Templates: Graphical User Interface
      6. Exporting XML
      7. Example I
      8. Example II
      9. Example III
      10. Example IV
      11. Importing XML
      12. New DLLs
      13. Conclusion
    4. Developing for and with JSPs
      1. Objectives
      2. What Is a JavaServer Page Anyway?
      3. The Mechanics of JavaServer Pages
      4. What's Available to JSPs
      5. Developing EAServer Components for JSPs
      6. Writing Your JSP
      7. Putting It All Together
      8. Conclusion
    5. Inter-Component Development
      1. Objectives
      2. Making Intercomponent Calls
      3. CREATE Versus CreateInstance: Know the Difference
      4. Component Life Cycle
      5. Component Types: Standard, Shared, and Service
      6. Application Architecture
      7. Pros and Cons of Intercomponent Calls
      8. Conclusion
    6. Using the EAServer API
      1. Objectives
      2. Jaguar Module
      3. CtsComponents Module
      4. CtsSecurity Module
      5. C/C++ API
      6. Conclusion
    7. Multithreading with EAServer
      1. Objectives
      2. What Is Multithreading?
      3. EAServer Thread Types
      4. Multithreading in EAServer
      5. Using Message Service
      6. Thread Prioritization
      7. Conclusion
    8. Accessing J2EE Constructs
      1. Objectives
      2. An API Overview
      3. J2EE Connector Architecture
      4. Java Authentication and Authorization Service (JAAS)
      5. Using PowerBuilder with J2EE
      6. Conclusion
    9. Distributed Application Development with Basic Component Frameworks
      1. Objectives
      2. What Is an Application Framework?
      3. History of PowerBuilder Frameworks
      4. Framework Techniques
      5. Basic Requirements
      6. Frameworks Available for PowerBuilder
    10. Deploying to EAServer
      1. Objectives
      2. Deployment Overview
      3. Client/Server Versus Distributed
      4. Component Deployment Steps
      5. Deploying to an EAServer Development Server
      6. Setting Up Deployment PBLs
      7. Promoting Components
      8. Promoting Using WinZip
      9. Promoting Using EAServer Synchronize
      10. Summary of Deployment Methods
      11. Conclusion
  9. Advanced Features and Techniques
    1. EAServer Administration Using Jaguar Manager
      1. Objectives
      2. Goals for the Administrator
      3. Jaguar Manager
      4. Using Jaguar Manager
      5. Configuring Servers
      6. Server Properties (HTTP Config Tab)
      7. Configuring Database Access
      8. Deployment
      9. Naming Service
      10. Clustering and Synchronization
      11. Message Service
      12. Web Server Redirector
      13. jagtool and jagant
      14. Conclusion
    2. EAServer Problem Analysis and Troubleshooting
      1. Objectives
      2. Client and Server Environment
      3. Connecting to EAServer
      4. Instantiating Components
      5. Tracing Component Execution
      6. Threading in EAServer
      7. Database Access
      8. Conclusion
    3. EAServer Monitoring
      1. Objectives
      2. Monitoring EAServer Entities
      3. Operating System Monitoring
      4. Conclusion
    4. Connection Caches
      1. Objectives
      2. The Case for Connection Caches
      3. Creating an EAServer Connection Cache
      4. Testing Connection Caches
      5. Using Connection Caches with PowerBuilder
      6. Using the Other PowerBuilder Database Interfaces
      7. XA Resources
      8. Conclusion
    5. Developing for and with XML
      1. Objectives
      2. What Is XML?
      3. XML Technologies
      4. How XML Can Be Used By PowerBuilder in a Distributed Application
      5. Example of XML Use with PowerBuilder
      6. Conclusion
    6. Developing for and with Web Services
      1. Introduction
      2. Why Go the Web Services Way?
      3. Web Services Architecture
      4. The Description: WSDL
      5. The Protocol: SOAP
      6. The Repository: UDDI
      7. Implementing a Web Service
      8. Another Web Services Implementation: Axis
      9. Creating a Web Service JSP Client with PowerBuilder 9
      10. Conclusion
    7. Developing for Mobile Systems
      1. Introduction
      2. Developing for Limited Devices
      3. Creating Usable Mobile Applications
      4. What Should You Build with It?
      5. The WAP Forum
      6. Introduction to WAP
      7. The WAP Model
      8. Your First WAP Page
      9. Running the Sample in a WAP Client Environment
      10. Sybase iAnywhere m-Business Studio
      11. What Is Included
      12. The iAnywhere Application Framework
      13. Using Sybase Adaptive Server UltraLite
      14. Using Data Replication
      15. SQL Features
      16. Conclusion
    8. Accessing EJB Servers with PowerBuilder
      1. Objectives
      2. Enterprise JavaBeans Overview
      3. PowerBuilder Implementation Overview
      4. Coding a PowerBuilder EJB Client Application
      5. Deploying Your EJB Client Application
      6. Beyond the Basic Client Application
      7. Client-Side Transactions
      8. Conclusion
    9. Working with Enterprise Portal
      1. Objectives
      2. Why Do You Need a Portal?
      3. What Is an Enterprise Portal?
      4. Why Sybase Enterprise Portal?
      5. Sybase Enterprise Portal (EP) Fields of Application
      6. EP's Features
      7. Sybase EP Evaluation Version
      8. Installing the Evaluation Version
      9. Installing Sybase EP Full Version
      10. Using PowerBuilder with Sybase Enterprise Portal
      11. Sybase Enterprise Portal Security Architecture
      12. Conclusion
    10. Looking Ahead—The Future of PB and Distributed Application Development
      1. Objective
      2. Groundbreaking for the Future
      3. PowerBuilder and .NET
      4. PowerBuilder and Java
      5. PowerBuilder and Mobile Technologies
      6. Technologies That Use or Affect PowerBuilder
      7. Other Technologies
      8. Other Platforms
      9. Looking to the Future
  10. Appendix
    1. Error and Troubleshooting Reference
      1. Errors, Causes, and Resolutions
  11. Index