Part I Development Tasks and Tools
1. Setting Up a Development Environment
To Set the Server to Automatically Start Up in Debug Mode
Generating a Stack Trace for Debugging
GlassFish Server Message Queue Debugging
To Use HPROF Profiling on UNIX
To Enable Remote Profiling With JProbe
Part II Developing Applications and Application Components
6. Using the Java Persistence API
7. Developing Web Applications
8. Using Enterprise JavaBeans Technology
9. Using Container-Managed Persistence
12. Developing Lifecycle Listeners
13. Developing OSGi-enabled Java EE Applications
Part III Using Services and APIs
14. Using the JDBC API for Database Access
15. Using the Transaction Service
16. Using the Java Naming and Directory Interface
When the appclient script executes the java command to run the Application Client Container (ACC), which in turn runs the client, it includes on the command line the value of the VMARGS environment variable. You can set this variable to any suitable value. For example:
VMARGS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8118
The following example also works:
set VMARGS=-Xdebug -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8118
For debugging an application client, you should set suspend to y so you can connect the debugger to the client before any code has actually executed. Otherwise, the client may start running and execute past the point you want to examine.
You should use different ports for the server and client if you are debugging both concurrently. For details about setting the port, see JPDA Options.
You can also include JVM options such as -Xdebug and -Xrunjwdp in the appclient script directly. For information about the appclient script, see Oracle GlassFish Server 3.1-3.1.1 Reference Manual.
Note - The Application Client Container is supported only in the full GlassFish Server, not in the Web Profile. See Chapter 10, Developing Java Clients.