NetBeans IDE Field Guide: Developing Desktop, Web, Enterprise, and Mobile Applications
Read an excerpt:
Chapter 5: Debugging Java Applications
Excerpt provided courtesy of Prentice-Hall PTR. Copyright © Prentice-Hall PTR. Written permission from the publisher is required for any use of this material.
|
Be the First to Write a Review and tell the world about this title!People who purchase this book frequently purchase: - Java Puzzlers: Traps, Pitfalls, and Corner Cases; Joshua Bloch, et al, $31.50, 21% Off!
- NetBeans: The Definitive Guide; Tim Boudreau, et al, $27.95, 38% Off!
- The Java Programming Language, 4th Edition; Ken Arnold, et al, $42.95, 22% Off!
- Professional Java Development with the Spring Framework; Rod Johnson, et al, $24.95, 38% Off!
Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:
Preface
This book is designed both as an introduction to NetBeans IDE and as a task
reference, something that you can pick up from time to time to get an answer
to a question or to find new ways to take advantage of the IDE's possibilities.
Whether NetBeans is your first IDE or your fifth, this book can help you make
the most of the IDE.
What Is NetBeans IDE?
NetBeans IDE is a free-of-charge integrated development environment (IDE) primarily
focused on making it easier to develop Java applications. It provides support
for all types of Java applications, from rich desktop clients to multitier enterprise
applications to applications for Java-enabled handheld devices.
NetBeans IDE has a modular architecture that allows for plug-ins. However,
the range of features in the basic installation is so rich that you can probably
can start using the IDE for your work without worrying about plug-ins at all.
The IDE itself is written in Java, so you can run it on any operating system
for which there is a Java 2 Standard Edition JDK (Version 1.4.2, Version 5.0,
or later) available. Click-through installers are generally available for Microsoft
Windows, Solaris, Linux, Mac OS, and OpenVMS systems. You can also download
the IDE as a .zip or .tar file if you want to install it on an operating system
other than the ones listed above.
The IDE's basic job is to make the edit-compile-debug cycle much smoother by
integrating the tools for these activities. For example, the IDE:
- Identifies coding errors almost immediately and marks them in the Source
Editor.
- Helps you code faster with code completion, word matching, abbreviation
expansion, and fix import features.
- Provides visual navigation aids, such as the Navigator window and "'code
folding,"' as well as numerous keyboard navigation shortcuts designed
especially for Java programmers.
- Can display documentation for a class as you are typing in the Source Editor.
- Hot-links compilation errors in the Output window, so you can jump straight
to the source by double-clicking the line or pressing F12.
- Manages package names and references to other classes. When you rename
or move classes around, the IDE identifies places in the code that are affected
by these changes and enables you to have the IDE generate the appropriate
changes to those files.
- Has many debugging features that provide a comprehensive view of the way
your code is working as it runs. You can set breakpoints, which persist from
session to session and keep your code free of clutter, such as println statements.
- Helps you integrate other parts of your workflow, such as checking sources
into and out from a version control system.
You can also download the NetBeans Profiler to augment the traditional edit-compile-debug
cycle with performance testing.What Makes NetBeans IDE SpecialWhen you use NetBeans
IDE, you get the benefits of a top-shelf IDE without the negatives that you
might associate with moving your development to a single environment.
Like other integrated development environments, NetBeans IDE provides a graphical
user interface for command line tools that handle the compiling, debugging,
and packaging of applications.
Unlike other IDEs, NetBeans IDE does not force a build structure on you with
project metadata that you need to reverse engineer if you are to use build the
project outside of the IDE. NetBeans IDE builds on existing open standards to
help you automate your development process without locking you in.
NetBeans IDE bases its whole project system on Ant, which is the de facto standard
build tool for Java applications. The project metadata that NetBeans IDE produces
is in the form of XML and properties files that can be used by Ant outside of
the IDE. Thus developing a project in NetBeans IDE does not lock you or co-developers
into NetBeans IDE.
You can use NetBeans IDE to create large projects with sophisticated build
parameters. Where you already have such projects in place, you can adapt NetBeans
IDE to work with them without necessarily changing the project's structure.
If you are generally more comfortable with command line tools because of their
transparency and the level of control they allow you over your projects, NetBeans
IDE could become the first IDE that you love.
NetBeans IDE is also consistently ahead of the curve in providing support for
new and evolving standards, such as the new language features that were introduced
in the J2SE 5 JDK and new specifications in all areas of Java technology.
NetBeans IDE provides an astonishing array of features right out of the box.
NetBeans has a fully featured J2EE development environment built in. All the
editor, debugger and project support that is available for Java application
development is also available for J2EE development. In addition, NetBeans IDE
provides access to the Java BluePrints Solutions Catalog and the ability to
install them as NetBeans projects.
The Mobility Pack, available as a free download, enables J2ME developer's to
design, develop and debug J2ME MIDlets from within NetBeans IDE. Providing one
of the most powerful sets of mobile development tools, the Mobility Pack includes
a flow designer to visually layout the application logic, a screen designer
to create the user interface, an integrated device fragmentation solution, and
tools for building client server applications.
What Comes with NetBeans IDE
Besides providing support for coding, NetBeans IDE comes bundled with other
tools and libraries that you might already use in your production environment.
The IDE integrates these tools into the IDE workflow, but you can also use them
at the command line.
Out of the box with NetBeans IDE 4.1, you get:
Apache Ant 1.6.2
Tomcat 5.5.7
JUnit 3.8.1
Java BluePrints Solutions Catalog
If you download the Mobility Modules pack, you also get the Wireless Toolkit.You
can also get NetBeans IDE in a bundle with the J2SE JDK or the Sun Java System
Application Server Platform Edition.
If you download the NetBeans Profiler, you also get a full-featured, nonintrusive
Java profiler that is based on the JFluid profiling technology.
What This Book Will Do for You
This book was written with both new and existing NetBeans IDE users in mind.If
you are new to NetBeans IDE (or IDEs in general), this book will quickly guide
you through the basics and advantages of using NetBeans IDE. Learn how to take
advantage of the IDE's layout and feature integration to tighten up the basic
edit-compile-debug cycle. Learn how to take advantage of the IDE's support for
increasingly popular advanced technologies such as Web services and J2EE technology
to add new capabilities to your applications.
If you are already familiar with NetBeans IDE, this book will provide a new
perspective on what you already know and possibly point you to useful features
that you have not yet discovered. Learn how you can customize the IDE to work
with complex build structures. If you are looking to move from client-server
Web applications to multitier transactional enterprise applications, this book
will help you make that jump.
This book does not teach the Java programming language. Much of the material
in this book is meaningful only if you have some experience with programming
Java applications. However, this book could be a useful companion if you are
expanding your Java technology palette into J2EE technology and other advanced
areas.
How to Use This Book
There is a lot to write about NetBeans IDE, which is overflowing with features.
NetBeans IDE Field Guide sorts out the essentials so that you can get productive
quickly and then adds a generous selection of tips and advanced information.This
book is primarily designed as a task-reference with short topics on accomplishing
specific tasks. If you wish, you can read the book from cover to cover, but
most likely you will want to keep it near your computer to ask pressing questions
or simply to read up on ways to get more out of your work with the IDE. The
topics are written in a way that allows you to skip all over the book to get
answers to the specific questions you have without having to follow long end-to-end
examples.
Chapter 1 provides the information you need to get NetBeans IDE and to open
your first project.
Chapter 2 provides an overview of the IDE environment and the basic tasks for
developing general Java projects. If you have never used NetBeans IDE, you will
probably want to read this chapter from end to end.
Chapter 3 provides in-depth information on setting up and configuring projects.
Though this chapter is mostly geared toward general Java applications, a working
knowledge of the information in this chapter will be useful for developing J2EE
and J2ME applications as well.
Chapter 4 (editing) and Chapter 5 (debugging) provide useful tips and tricks
for making your day-to-day coding and troubleshooting more productive.
Chapter 6 covers development of Web applications, with a focus on developing
with the Tomcat Web server.
Several chapters are devoted to J2EE topics. You should begin with Chapter
7, Introduction to J2EE Development in NetBeans IDE, to get information on setting
up your environment and learning how to leverage the Java BluePrints Solutions
catalog in J2EE development.
If you are familiar with Web application development and would like to learn
how to extend it into using J2EE Enterprise JavaBeans components, you should
read Chapter 8, Extending Web Applications with Business Logic: Introducing
Enterprise Beans.
If you are interested in learning how to extend your J2EE applications to include
Web services, you should read Chapter 9, Extending J2EE Applications with Web
Services.
Chapter 10, Developing Full Scale J2EE Applications, contains in-depth information
on developing entity beans, assembling applications, verifying J2EE compliance,
and other topics.
Chapter 11 covers special IDE features for using the NetBeans Mobility Pack
to develop J2ME applications for handheld devices.
Chapter 12 provides information for taking advantage of NetBeans IDE's unique
Ant integration to use the IDE with existing intricate build environments.
NetBeans As Platform and Open-Source Project
Besides being an IDE, NetBeans is also a 100% pure Java open-source platform.
You can develop plug-in modules for NetBeans IDE or create an entirely different
application built on top of a small core of the modules that make up the IDE.
Because NetBeans is 100% pure Java, any platform that supports a Java Virtual
Machine will run NetBeans. Hence, any plug-in module or application that extends
NetBeans and that is 100% pure Java will also execute on any platform for which
there is a Java Virtual Machine. However, you should note that this book covers
use of the IDE only to develop Java applications.
Table of Contents
Foreword.
Preface.
1. Download, Installation, and First Project.
Downloading the IDE
Installing the IDE
Setting a Proxy
First NetBeans IDE Project
2. NetBeans IDE Fundamentals.
Creating a Project
Configuring the Classpath
Creating a Sub-project
Creating and Editing Files
Setting Up and Modifying Java Packages
Compiling and Building
Viewing Project Metadata and Build Results
Navigating to the Source of Compilation Errors
Running
Creating and Running Tests
Debugging the Application
Integrating Version Control Commands
Managing IDE Windows
3. IDE Project Fundamentals.
Introduction to IDE Projects
Choosing the Right Project Template
Creating a Project From Scratch
Importing a Project Developed in a Different Environment
Navigating Your Projects
Working With Files Not In the Project
Creating Packages and Files in the Project
Configuring the Project's Classpath
Changing the Version of the JDK That Your Project Is Based On
Changing the Target JDK for a Standard Project
Referencing JDK Documentation (Javadoc) From the Project
Adding Folders and JAR Files to the Classpath
Making External Sources and Javadoc Available in the IDE
Structuring Your Projects
DIsplaying and Hiding Projects
Setting Up a Project to Work with Version Control
Compiling a Project
Running a Project
Writing Your Own Manifest for Your JAR File
Filtering Contents Packaged into Outputs
Running a Project From Outside of the IDE
Customizing the IDE-Generated Build Script
Running a Specific Ant Target from the IDE
Completing Ant Expressions
Making a Menu Item or Shortcut for a Specific Ant Target
4. Editing and Refactoring Code.
Opening the Source Editor
Managing Automatic Insertion of Closing Characters
DIsplaying Line Numbers
Generating Code Snippets
Handling Imports
DIsplaying Javadoc Documentation While Editing
Formatting Code
Navigating Within the Current Java File
Navigating From the Source Editor
Searching and Replacing
Moving a Class to a Different Package
Changing a Method's Signature
Tracking Notes to Yourself in Your Code
Comparing Differences Between Two Files
Splitting the Source Editor
Maximizing Space For the Source Editor
Changing Source Editor Keyboard Shortcuts
Building Rich Clients with NetBeans
5. Debugging Java Applications.
Starting a Debugging Session
Attaching the Debugger to a Running Application
Starting the Debugger Outside of the Project's Main Class
Stepping Through Code
Setting Breakpoints
Managing Breakpoints
Customizing Breakpoint Behavior
Monitoring Variables and Expressions
Backing up From a Method to its Call
Monitoring and Controlling Execution of Threads
Fixing Code During a Debugging Session
Viewing Multiple Debugger Windows Simultaneously
6. Developing Web Applications.
Representation of Web Applications in the IDE
Adding Files and Libraries to Your Web Application
Editing and Refactoring Web Application Files
Deploying a Web Application
Testing and Debugging Your Web Application
Creating and Deploying Applets
Changing the IDE's Default Web Browser
Monitoring HTTP Transactions
7. Introduction to J2EE Development in NetBeans IDE.
Configuring the IDE for J2EE Development
Getting the Most from the Java BluePrints Solutions Catalog
8. Extending Web Applications with Business Logic--Introducing EnterprIse
Beans.
EJB Project type Wizards
Adding EJB Components, Files and Libraries to Your EJB Module
Adding Business Logic to an EnterprIse JavaBeans Component
Adding a Simple Business Method
EJB Bean Deployment Descriptors
9. Extending J2EE Applications with Web Services.
Consuming ExIsting Web Services
Implementing a Web Service in a Web Application
Implementing Web Services within an EJB Module
Testing Web Services
Adding Message Handlers to a Web Service
10. Developing Full Scale J2EE Applications.
Creating Entity Beans With Top Down Approach
Creating Entity Beans With the Bottom Up Approach
Assembling J2EE Applications
Importing exIsting J2EE Applications
Consuming J2EE Resources
J2EE and Security Management
Understanding the J2EE Application Server Runtime Environment
Ensuring J2EE Compliance
Refactoring EnterprIse JavaBeans Components
11. Developing J2ME Mobility Applications.
Downloading and Installing the Mobility Pack
Introduction To Mobility Projects
Creating A Project From Scratch
Importing a Project
Physical Structure of Mobile Projects
Using Mobility File Templates
Configuring the Project's Classpath
Debugging Your Project
Configure your Project for Different Devices
Setting the Active Configuration for Your Project
Physical Structure of Mobile Projects with Configurations
Reusing Project Settings and Configurations
Structuring Projects Dependencies
Manage the DIstribution JAR File Content
Handle Project Resources for Different Configurations
Writing Code Specific to a LIst of Configurations
Using Configuration Abilities
Localizing Applications
Using the Mobility VIsual Designer
Automatically Deploying your Application
Automatically Increment the Application's MIDlet-Version
Installing Non Standard Emulator Platforms
Ant and Mobility
Using Headless Builds
Finding More Information
12. Integrating ExIsting Ant Scripts with the IDE.
Creating a Free-Form Project
Mapping a Target to an IDE Command
Setting Up the Debug Project Command For a General Java Application
Setting Up the Debug Project Command For A Web Application
Setting Up Commands for Selected Files
Setting Up the Compile File Command
Setting Up the Run File Command
Setting Up the Debug File Command
Setting Up the Debugger's Fix Command
Changing the Target JDK for a Free-form Project
Making a Custom Menu Item for a Target
Debugging Ant Scripts
Appendix: Importing an Eclipse Project into NetBeans IDE.
Getting the Eclipse Project Importer
Choosing between Importing with or without Project Dependencies
Importing an Eclipse Project and Preserving Project Dependencies
Importing an Eclipse Project Ignoring Project Dependencies
Handling Eclipse Project DIscrepancies
Handling Eclipse Project Reference Problems
Index.
|