You are previewing The Definitive Guide to NetBeans™ Platform 7.
O'Reilly logo
The Definitive Guide to NetBeans™ Platform 7

Book Description

The NetBeans Platform is the world's only modular Swing application framework, used by very large organizations in mission-critical scenarios, such as at Boeing and Northrop Grumman, as well as in the financial sector and in the oil/gas industry. For these large customers in enterprises who are increasingly interested in Maven and OSGi, the book will have particular relevance.

The Definitive Guide to NetBeans™ Platform 7 is a thorough and authoritative introduction to the open-source NetBeans Platform, covering all its major APIs in detail, with relevant code examples used throughout.

  • Provides a completely updated definitive guide to the NetBeans Platform, using the latest APIs, coding patterns, and methodologies.

  • Focuses strongly on business features in an application, since Oracle's customers are particularly interested in business-related aspects. For example, how to use OSGi, how to add authentication/security, how to monetize from a modular application.

The original German book on which this title is based was well received. The NetBeans Platform Community has put together this English translation, which covers the latest NetBeans Platform 7 APIs. With an introduction by known NetBeans Platform experts Jaroslav Tulach and Tim Boudreau, this is the most up-to-date book on this topic at the moment.

All NetBeans Platform developers will gain something from this book, because several topics in the book have not been documented anywhere else.

What you'll learn

  • How to get started using the NetBeans Platform with or without using NetBeans IDE.

  • How to set up a modular application, using either Ant or Maven as a build system.

  • How to get acquainted with all the NetBeans Platform's APIs.

  • How to work with the Visual Library as a very popular and powerful widget library, covering all its features in detail.

  • How to model an application in OSGi/EMF and using the model in an application on the NetBeans Platform.

  • How to distribute a modular application, focusing on different strategies for monetizing from its modular architecture.

Who this book is for

The Definitive Guide to NetBeans™ Platform 7 is for large enterprises who are not interested in reinventing the wheel whenever they create a new applications, and open source communities who typically benefit from a modular architecture, because a plugin system (as provided by the NetBeans Platform) simplifies how contributions can be made to a project.

Table of Contents

  1. Title
  2. Contents at a Glance
  3. Contents
  4. About the Author
  5. About the Translator
  6. About the Technical Reviewers
  7. Acknowledgments
  8. Introduction
    1. News of the NetBeans Platform
    2. How This Book Is Structured
    3. Downloading the Code
  9. PART 1: Basics & Concepts: Basics of the NetBeans Platform
    1. CHAPTER 1: Introduction
      1. What Is a Rich Client?
      2. What Is a Rich Client Platform?
      3. Advantages of a Rich Client Platform
      4. Characteristics of the NetBeans Platform
      5. Summary
    2. CHAPTER 2: Structure of the NetBeans Platform
      1. NetBeans Platform Architecture
      2. NetBeans Platform Distribution
      3. NetBeans Runtime Container
      4. NetBeans Classloader System
      5. Summary
    3. CHAPTER 3: The NetBeans Module System
      1. Structure of a Module
      2. Configuration File
      3. Manifest File
      4. Layer File
      5. Creating Modules
      6. Versioning and Dependencies
      7. Lifecycle
      8. Module Registry
      9. Using Libraries
      10. Reusing Modules
      11. Summary
    4. CHAPTER 4: The OSGi Framework
      1. OSGi and the NetBeans Platform
      2. OSGi Bundle Format
      3. Creating New OSGi Bundles
      4. Bundle Lifecycle
      5. Integrating Existing OSGi Bundles
      6. NetBeans Platform in OSGi Runtime Container
      7. Summary
    5. CHAPTER 5: Lookup Concept
      1. Functionality
      2. Services and Extension Points
      3. Global Services
      4. Registering Service Providers
      5. Dynamic Lookup
      6. Java Service Loader
      7. Summary
    6. CHAPTER 6: Actions
      1. Always Enabled Actions
      2. Callback Actions
      3. Context Aware Actions
      4. Summary
    7. CHAPTER 7: Data and Files
      1. File Systems API
      2. The File Object
      3. Data Systems API
      4. The Data Object
      5. Summary
    8. CHAPTER 8: Tips and Tricks
      1. Lifecycle of the NetBeans Platform
      2. Logging
      3. Summary
  10. PART 2: Look & Feel: Developing User Interfaces
    1. CHAPTER 9: Menu Bar and Toolbar
      1. Menu Bar
      2. Toolbar
      3. Summary
    2. CHAPTER 10: Window System
      1. Configuration
      2. Window: Top Component
      3. Docking Container: Mode
      4. Groups of Windows: Top Component Group
      5. Administration: Window Manager
      6. MultiViews
      7. Summary
    3. CHAPTER 11: Status Bar and Progress Bar
      1. Status Bar
      2. Progress Bar
      3. Summary
    4. CHAPTER 12: Nodes and Explorer
      1. Nodes API
      2. Explorer API
      3. Summary
    5. CHAPTER 13: Dialogs and Wizards
      1. Standard Dialogs
      2. Custom Dialogs
      3. Wizards
      4. Summary
    6. CHAPTER 14: Visual Library
      1. Structure of the Visual Library API
      2. The Widget Classes
      3. The Scene: The Root Element
      4. ObjectScene – Model-View Relation
      5. Graphs
      6. VMD: Visual Mobile Designer
      7. Summary
    7. CHAPTER 15: Tips and Tricks
      1. Desktop Features
      2. System Tray Integration
      3. Asynchronous Initialization of Graphical Components
      4. Undo/Redo
      5. Summary
  11. PART 3: Ready & Go: Using the NetBeans Platform Standard Modules
    1. CHAPTER 16: Help System
      1. Creating and Integrating a Help Set
      2. Inserting Links into Help Pages
      3. Context-Sensitive Help
      4. Opening the Help System
      5. Summary
    2. CHAPTER 17: Output Window
      1. Producing Output
      2. Adding Actions
      3. Inserting/Displaying Hyperlinks
      4. Summary
    3. CHAPTER 18: Navigator
      1. Creating Panels
      2. Registering Panels
      3. Summary
    4. CHAPTER 19: Properties
      1. Providing Properties
      2. User-Defined Properties Editor
      3. Summary
    5. CHAPTER 20: Options and Settings
      1. Creating Options Panels
      2. Managing Settings
      3. Summary
    6. CHAPTER 21: Palette
      1. Palette Entries via the Layer File
      2. Creating a Palette via Your Own Nodes
      3. Summary
  12. PART 4: Use & Extend: Advanced APIs of the NetBeans Platform & ID
    1. CHAPTER 22: Palette API
      1. Defining and Registering Palette Items
      2. Creating and Registering the Palette Controller
      3. Extending an Existing Palette
      4. Summary
    2. CHAPTER 23: Task List API
      1. Implementing Scanner
      2. Registering Scanner and Group
      3. Summary
    3. CHAPTER 24: Quick Search API
      1. Implementing Quick Search Provider
      2. Registering Quick Search Provider
      3. Integrating Quick Search UI
      4. Hiding Existing Search Provider Categories
      5. Summary
    4. CHAPTER 25: Auto Update Services API
      1. Automatic Update in the Background
      2. Deactivating Modules Automatically
      3. Summary
  13. PART 5: Server & Database: Enterprise Applications and the NetBeans Platform
    1. CHAPTER 26: Java DB
      1. Integrating the Java DB
      2. Registering Drivers
      3. Creating and Using a Database
      4. Shutting Down a Database
      5. Developing a Database by Means of the NetBeans IDE
      6. Example Application
      7. Summary
    2. CHAPTER 27: Hibernate
      1. Integrating the Hibernate Libraries
      2. Structure of the Exemplified Application
      3. Configuring Hibernate
      4. Summary
    3. CHAPTER 28: Java Persistence API
      1. Hibernate and the Java Persistence API
      2. Java Persistence Configuration
      3. EntityManagerFactory and EntityManager
      4. Saving and Loading Objects
      5. Summary
    4. CHAPTER 29: MySQL and EclipseLink
      1. Installing MySQL Database
      2. Creating Entities out of Database Schema
      3. Build Up and Test Application
      4. Summary
    5. CHAPTER 30: Web Services
      1. Creating a Web Service Client
      2. Using the Web Service
      3. Summary
    6. CHAPTER 31: Java Enterprise Edition and the NetBeans Platform
      1. Persistent Entities
      2. Enterprise Java Beans
      3. Web Service
      4. Web Service Client
      5. NetBeans Platform Application
      6. Summary
    7. CHAPTER 32: RESTful Web Services
      1. Creating a Web Application
      2. Creating Persistent Entity
      3. Creating a RESTful Web Service
      4. Install NetBeans Platform Application
      5. RESTful Web Service Client
      6. Summary
    8. CHAPTER 33: Authentication and Multi-User Login
      1. Login Dialog
      2. Directory Server
      3. Authentication
      4. Adapting the Application
      5. Summary
  14. PART 6: Pack & Ship: Adapting, Delivering, and Actualizing Applications
    1. CHAPTER 34: Internationalization and Localization
      1. String Literals in Source Code
      2. String Literals in the Manifest File
      3. Internationalization of Help Pages
      4. Internationalizing Other Resources
      5. Administration and Preparation of Localized Resources
      6. Summary
    2. CHAPTER 35: Branding and Packaging Application
      1. Branding
      2. Command-Line Parameters
      3. Creating Distribution
      4. Summary
    3. CHAPTER 36: Updating a NetBeans Platform Application
      1. The Auto Update Service
      2. The NBM File
      3. Update Centers
      4. Providing a Language Pack
      5. Configuring and Installing on the Client-Side
      6. Summary
  15. PART 7: Test & Tooling: Developing and Testing NetBeans Platform Applications
    1. CHAPTER 37: Maven and the NetBeans Platform
      1. Basics and Structure of a Maven Project
      2. Maven Projects in the NetBeans IDE
      3. Maven Projects Without NetBeans IDE
      4. Summary
    2. CHAPTER 38: Eclipse IDE and the NetBeans Platform
      1. Installing Eclipse IDE
      2. Creating a NetBeans Platform Application
      3. Creating NetBeans Platform Modules
      4. Add Dependencies
      5. Starting and Executing an Application
      6. Summary
    3. CHAPTER 39: From Eclipse to NetBeans
      1. The NetBeans IDE
      2. From Eclipse Plugin to NetBeans Module
      3. Summary
    4. CHAPTER 40: IntelliJ IDEA and the NetBeans Platform
      1. Presettings
      2. Creating a NetBeans Platform Application
      3. Defining Dependencies
      4. Building and Executing an Application
      5. Summary
    5. CHAPTER 41: NetBeans Swing GUI Builder
      1. Structure of the GUI Builder
      2. Components and Layout
      3. Adapting Components
      4. Actions
      5. Beans Binding
      6. Summary
    6. CHAPTER 42: Testing NetBeans Platform Applications
      1. Unit Tests
      2. Functional GUI Tests
      3. Configuration in Case of Maven Projects
      4. Summary
    7. CHAPTER 43: Debugging with the NetBeans IDE
      1. Debugging Window
      2. Breakpoints
      3. Variables
      4. Remote Debugging
      5. Controlling Debugging
      6. Call Stack
      7. Heap Walking
      8. Summary
  16. PART 8: Play & More: Developing an MP3-Manager—An Example of a NetBeans Platform Application
    1. CHAPTER 44: Sample Project: MP3 Manager
      1. Design
      2. Creating a NetBeans Platform Application
      3. Support for MP3
      4. ID3 Support
      5. Media Library
      6. Services
      7. MP3 Player
      8. Playlist
      9. Summary
  17. Appendix
    1. Important NetBeans Platform Extension Points
    2. Important Configuration DTDs
  18. Index