ここでは、Oracle9iASリリース1(1.0.2.x)またはApache JServインスタンスに対してリモート・デバッグを実行するようにリモートのデバッグ対象プロセスを設定する方法について説明します。これらのステップを完了すると、JSP、サーブレットおよびEJBをリモート・デバッグできます。
Oracle9iASリリース1(1.0.2.x)またはApache JServをリモート・デバッグ用に設定するには、次のようにします。
jserv.conf
ファイルを開きます。$ORACLE_HOME/Apache/Jserv/etc/
ApJServAction .jsp /servlets/oracle.jsp.runtimev2.JspServlet
jserv.properties
ファイルを開きます。$ORACLE_HOME/Apache/Jserv/etc/
wrapper.bin=<JDEV_HOME>\jdk\bin\java
$JDK_HOME/bin/java
OJVMは、Windowsプラットフォームでのみ使用できます。wrapper.bin.parameters
を使用して、JVMにデバッグのために渡されるパラメータを設定します。
wrapper.bin.parameters=-ojvm wrapper.bin.parameters=-XXdebug,detached,port5000,quiet
例
XXdebug,detached,quiet,port4000
-XXdebug
のパラメータ・オプションは次のとおりです。
-XXdebug
detached
port<#>
quiet
(Windows NT、J2SE 1.3以上、またはSolaris上のJDK 1.22またはJDK 1.2.2_007 Referenceで使用する場合のみ。)次のようにwrapper.bin.parameters
を使用して、JVMにデバッグのために渡されるパラメータを設定します。
wrapper.bin.parameters=-classic wrapper.bin.parameters=-Xdebug wrapper.bin.parameters=-Xnoagent wrapper.bin.parameters=-Djava.compiler=NONE wrapper.bin.parameters=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
-Xdebug
のパラメータ・オプションは次のとおりです。
ClassicでのJPDAデバッグにJDK 1.2.2を使用している場合、wrapper.path
に次のようにパスを含める必要があります。
wrapper.path=<ORACLE_HOME>/jpda-1.0/bin/
これは、OJVMでのデバッグまたはJ2SE 1.3以上では必要ありません。SolarisでJDK 1.2.2を使用している場合、1.2.2_007 Referenceバージョンを使用する必要があります。正式版では、リモート・デバッグは実行されません。
wrapper.bin.parameters
を使用して、JVMにデバッグのために渡されるパラメータを設定します。
wrapper.bin.parameters=-hotspot wrapper.bin.parameters=-Xdebug wrapper.bin.parameters=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
wrapper.bin.parameters=-server wrapper.bin.parameters=-Xdebug wrapper.bin.parameters=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
ここで
jserv.properties
ファイルで、次の行を追加するか、これらの行が存在することを確認します。wrapper.classpath=d:\apache\JServ\ApacheJServ.jar wrapper.classpath=<JDEV_HOME>\lib\servlet.jar # Needed for JSP wrapper.classpath=<JDEV_HOME>\j2ee\home\lib\ojsp.jar wrapper.classpath=<ORACLE_HOME>\lib\ojc.jar wrapper.classpath=<JDEV_HOME>\lib\xmlparserv2.jar # optional, for JML tags, SQL tags, and database-access JavaBeans wrapper.classpath=<JDEV_HOME>\j2ee\home\lib\ojsputil.jar # Needed if JDBC connection being used in JSP or Servlet wrapper.classpath=<JDEV_HOME>\jdbc\lib817\classes12.zip # Needed if SQLJ being used JSP or Servlet wrapper.classpath=<JDEV_HOME>\sqlj\lib\translator.jar wrapper.classpath=<JDEV_HOME>\sqlj\lib817\runtime.zip
http://www.javasoft.com/products/servlet/download.html#specs
# Needed for servlets. # Note: jsdk.jar must preceed servlet.jar # jsdk provides servlet 2.0 APIs required by Apache/JServ # servlet. jar provides servlet 2.2 APIs wrapper.classpath=<jsdk home>\jsdk2.0\lib\jsdk.jar
zone.properties
を編集します。このファイルは次の場所にあります。$ORACLE_HOME/Apache/Jserv/servlets/
repositories=<Apache_Home>\JServ\servlets repositories=<Apache_Home>\JServ\servlets\shopcart.jar
<APACHE_Home>\JServ\servlets
Servlet Init
パラメータ・セクションを検索し(ファイルの下部にあります)、次の行を追加します。servlet.oracle.jsp.JspServlet.initArgs=debug_mode=true servlet.oracle.jsp.JspServlet.initArgs=developer_mode=true servlet.oracle.jsp.JspServlet.initArgs=encode_to_java=true servlet.oracle.jsp.JspServlet.initArgs=emit_debuginfo=true servlet.oracle.jsp.JspServlet.initArgs=jspjavacompiler=oracle.jdevimpl.jsp.JspOjcCompiler
次に、ウィザードを使用してリモート・デバッグ・プロジェクトを作成できます。