![]() ![]() ![]() ![]() |
以下の節では、開発ビルド スクリプトに含めることができる WebLogic Ant タスクを使用して、WebLogic Server インスタンスの起動と停止、および WebLogic Server ドメインのコンフィグレーションを行う方法について説明します。
WebLogic Server には、開発環境で一般的なコンフィグレーション タスクを実行するのに役立つ Ant タスクが 2 つあります。コンフィグレーション タスクでは、WebLogic Server インスタンスの起動と停止、WebLogic Server ドメインの作成とコンフィグレーションを行うことができます。
他の WebLogic Ant タスクと組み合わせると、カスタム ドメインでアプリケーションの実証やテストを行うための強力なビルド スクリプトを作成できます。たとえば、単一の Ant ビルド スクリプトでは、以下のことを実行できます。
以下の節では、コンフィグレーション用 Ant タスクの wlserver
および wlconfig
の使い方について説明します。
wlserver
Ant タスクを使用すると、WebLogic Server インスタンスを起動、再起動、および停止したり、WebLogic Server インスタンスへ接続したりできます。サーバ インスタンスは、コンフィグレーション済みの WebLogic Server ドメインにすでに存在している場合もあります。または、generateconfig=true
属性を使用して、開発用の新しい単一サーバ ドメインを作成することができます。
Ant スクリプトで wlserver
タスクを使用する場合、指定したサーバが使用可能になり接続をリスンするまで、タスクは制御を返しません。wlserver を使用してサーバ インスタンスを起動すると、サーバ プロセスは Ant VM の終了後に自動的に終了します。wlserver
タスクを使用して、現在動作中のサーバにのみ接続する場合、サーバ プロセスは Ant の完了後も実行し続けます。
wlserver
WebLogic Server Ant タスクは、標準 java
Ant タスク (org.apache.tools.ant.taskdefs.Java
) を拡張します。つまり、java
Ant タスクのすべての属性も wlserver
Ant タスクに適用されます。たとえば、output
属性と error
属性を使用すると、wlserver
Ant タスクの出力が書き込まれるファイルと標準エラーが書き込まれるファイルの名前を指定できます。標準 java Ant タスクの属性の詳細については、Apache Ant サイトの「Java」を参照してください。
wlserver Ant タスクを使用するには、次の手順に従います。
Windows NT では、WL_HOME\server\bin
ディレクトリにある setWLSEnv.cmd
コマンドを実行します。WL_HOME
は、インストールされている WebLogic Server の最上位ディレクトリです。
UNIX では、WL_HOME/server/bin
ディレクトリにある setWLSEnv.sh
コマンドを実行します。WL_HOME
は、インストールされている WebLogic Server の最上位ディレクトリです。
注意 : | wlserver タスクは、WebLogic Server に付属しているバージョンの Ant であらかじめ定義されています。独自にインストールした Ant でこのタスクを使用する場合は、ビルド ファイルに次のタスク定義を追加します。 |
<taskdef name="wlserver" classname="weblogic.ant.taskdefs.management.WLServer"/>
wlserver
タスクの呼び出しを追加します。wlserver
の属性とデフォルトの動作については、「wlserver Ant タスク リファレンス」を参照してください。ant
と入力し、必要であればこのコマンドにターゲットの引数を渡して、build.xml
ファイルで指定された Ant タスク (1 つまたは複数) を実行します。prompt> ant
以下に、すべてのデフォルト値を使用してカレント ディレクトリ内のサーバを起動する、最小限の wlserver
ターゲットを示します。
<target name="wlserver-default">
<wlserver/>
</target>
次のターゲットは、指定された接続パラメータ、およびユーザ名とパスワードの組み合わせを使用して、既存の動作中サーバに接続します。
<target name="connect-server">
<wlserver host="127.0.0.1" port="7001" username="weblogic" password="weblogic" action="connect"/>
</target>
次のターゲットは、config
サブディレクトリにコンフィグレーションされた WebLogic Server インスタンスを起動します。
<target name="start-server">
<wlserver dir="./config" host="127.0.0.1" port="7001" action="start"/>
</target>
次のターゲットは、空のディレクトリに新しい単一サーバ ドメインを作成し、ドメインのサーバ インスタンスを起動します。
<target name="new-server">
<delete dir="./tmp"/>
<mkdir dir="./tmp"/>
<wlserver dir="./tmp" host="127.0.0.1" port="7001"
generateConfig="true" username="weblogic" password="weblogic" action="start"/>
</target>
次の表では、wlserver
Ant タスクの属性について説明します。
username 属性と password 属性の両方を省略すると、wlserver は boot.properties ファイルから暗号化されたユーザ名およびパスワードの値を取得しようとする。boot.properties の詳細については、『サーバの起動と停止の管理』の「起動 ID ファイル」を参照。
|
|||||
username 属性と password 属性の両方を省略すると、wlserver は boot.properties ファイルから暗号化されたユーザ名およびパスワードの値を取得しようとする。boot.properties の詳細については、『サーバの起動と停止の管理』の「起動 ID ファイル」を参照。
|
|||||
domain_name /autodeploy ディレクトリ (domain_name は WebLogic Server ドメインの名前) にあるアプリケーションを自動的にデプロイおよび更新できる。つまり、開発モードでは自動デプロイを使用する。プロダクション モードでは、自動デプロイメント機能は無効になる。詳細については、「weblogic.deployer によるアプリケーションおよびモジュールのデプロイ」を参照。
|
|||||
true または false 。デフォルト値は false 。つまり、Ant タスクは暗黙的にドメインをアップグレードせず、ドメインをバージョン 9.2 の WebLogic Server にアップグレードする必要があるというエラーを表示して失敗する。
|
|||||
|
|||||
boot.properties ファイルを使用するかどうかを指定する。この属性が true に設定されている場合、WebLogic Server は、boot.properties ファイルに格納されているユーザ名と暗号化されているパスワードを使用して、username 属性と password 属性で設定された値以外から起動する。
|
|||||
以下の節では、wlconfig
Ant タスクを使用して WebLogic Server ドメインをコンフィグレーションする方法について説明します。
wlconfig
Ant タスクを使用すると、動作中の管理サーバ インスタンス上で MBean の作成、クエリ、変更を行うことで、WebLogic Server ドメインをコンフィグレーションできます。特に、wlconfig
では以下のことを実行できます。
警告 : | wlconfig Ant タスクは、互換性 MBean サーバの MBean に対してのみ機能します。この Ant タスクは WebLogic Server 9.0 以降では非推奨になりました。 |
警告 : | wlconfig Ant タスクでは、非推奨になった BEA 独自の API (weblogic.management.MBeanHome ) を使用して WebLogic MBean にアクセスします。この動作は、WebLogic Server バージョン 8.1 から変更されていません。MBean の検索には、標準の JMX インタフェース (javax.management.MBeanServerConnection ) は使用されません。 |
警告 : | つまり、wlconfig を使用してアクセスできる MBean は、『WebLogic Server MBean リファレンス』に非推奨になった MBean としてリストされている MBean のみということになります。 |
注意 : | wlconfig タスクは、WebLogic Server に付属しているバージョンの Ant であらかじめ定義されています。独自にインストールした Ant でこのタスクを使用する場合は、ビルド ファイルに次のタスク定義を追加します。 |
<taskdef name="wlconfig" classname="weblogic.ant.taskdefs.management.WLConfig"/>
wlconfig
を wlserver
と組み合わせて使用します。wlconfig
を使用してそのようなドメインをコンフィグレーションする場合は、最初に wlserver
属性を使用して新しいドメインを作成し、WebLogic Server インスタンスを起動します。wlconfig
タスクの最初の呼び出しを追加して、ドメインの管理サーバに接続します。次に例を示します。<target name="doconfig">
<wlconfig url="t3://localhost:7001" username="weblogic"
password="weblogic">
</target>
create
、delete
、get
、set
、および query
要素を追加して、ドメインをコンフィグレーションします。ant
と入力し、必要であればこのコマンドにターゲットの引数を渡して、build.xml
ファイルで指定された Ant タスク (1 つまたは複数) を実行します。prompt> ant doconfig
以下の節では、wlconfig
Ant タスクを使用するためのサンプル Ant ビルド スクリプトを示します。
この例では、wlserver
を使用して新しいドメインを作成し、wlconfig
を使用してさまざまなドメイン コンフィグレーション タスクを実行する、単一の build.xml
ファイルを示します。コンフィグレーション タスクでは、Avitek Medical Records サンプル アプリケーションで必要なドメイン リソースを設定します。
<target name="medrec.config">
<mkdir dir="config"/>
<wlserver username="a" password="a" servername="MedRecServer"
domainname="medrec" dir="config" host="localhost" port="7000"
generateconfig="true"/>
次に、新しく作成したサーバにアクセスすることで、wlconfig
タスクを開始します。
<wlconfig url="t3://localhost:7000" username="a" password="a">
wlconfig
タスクの内部で、query
要素はサーバ MBean オブジェクト名を取得するクエリを実行し、この MBean を ${medrecserver}
Ant プロパティに格納します。
<query domain="medrec" type="Server" name="MedRecServer"
property="medrecserver"/>
create
要素を使用してドメインに新しい JDBC 接続プールを作成し、オブジェクト名を ${medrecpool}
Ant プロパティに格納します。create
操作内にネストされた set
要素は、新しく作成した MBean の属性を設定します。上記のクエリで設定された ${medrecserver}
Ant プロパティを使用して、新しいプールをサーバに割り当てます。
<create type="JDBCConnectionPool" name="MedRecPool"
property="medrecpool">
<set attribute="CapacityIncrement" value="1"/>
<set attribute="DriverName"
value="com.pointbase.jdbc.jdbcUniversalDriver"/>
<set attribute="InitialCapacity" value="1"/>
<set attribute="MaxCapacity" value="10"/>
<set attribute="Password" value="MedRec"/>
<set attribute="Properties" value="user=MedRec"/>
<set attribute="RefreshMinutes" value="0"/>
<set attribute="ShrinkPeriodMinutes" value="15"/>
<set attribute="ShrinkingEnabled" value="true"/>
<set attribute="TestConnectionsOnRelease" value="false"/>
<set attribute="TestConnectionsOnReserve" value="false"/>
<set attribute="URL"
value="jdbc:pointbase:server://localhost/demo"/>
<set attribute="Targets" value="${medrecserver}"/>
</create>
次に、上記で作成された JDBC 接続プールを使用して JDBC TX DataSource を作成します。
<create type="JDBCTxDataSource" name="Medical Records Tx DataSource">
<set attribute="JNDIName" value="MedRecTxDataSource"/>
<set attribute="PoolName" value="MedRecPool"/>
<set attribute="Targets" value="${medrecserver}"/>
</create>
ネストされた set
要素を使用して新しい JMS 接続ファクトリを作成します。
<create type="JMSConnectionFactory" name="Queue">
<set attribute="JNDIName" value="jms/QueueConnectionFactory"/>
<set attribute="XAServerEnabled" value="true"/>
<set attribute="Targets" value="${medrecserver}"/>
</create>
MedRecPool
を使用して新しい JMS JDBC ストアを作成します。
<create type="JMSJDBCStore" name="MedRecJDBCStore"
property="medrecjdbcstore">
<set attribute="ConnectionPool" value="${medrecpool}"/>
<set attribute="PrefixName" value="MedRec"/>
</create>
新しい JMS サーバを作成する際に、ネストされた create
要素を使用して、JMS サーバの子である JMS キューを作成します。
<create type="JMSServer" name="MedRecJMSServer">
<set attribute="Store" value="${medrecjdbcstore}"/>
<set attribute="Targets" value="${medrecserver}"/>
<create type="JMSQueue" name="Registration Queue">
<set attribute="JNDIName" value="jms/REGISTRATION_MDB_QUEUE"/>
</create>
</create>
<create type="MailSession" name="Medical Records Mail Session">
<set attribute="JNDIName" value="mail/MedRecMailSession"/>
<set attribute="Properties"
value="mail.user=joe;mail.host=mail.mycompany.com"/>
<set attribute="Targets" value="${medrecserver}"/>
</create>
<create type="StartupClass" name="StartBrowser">
<set attribute="Arguments" value="port=${listenport}"/>
<set attribute="ClassName"
value="com.bea.medrec.startup.StartBrowser"/>
<set attribute="FailureIsFatal" value="false"/>
<set attribute="Notes" value="Automatically starts a browser on server boot."/>
<set attribute="Targets" value="${medrecserver}"/>
</create>
最後に、WebServer
MBean を取得し、ネストされた set
要素を使用してログ ファイル名を設定します。
<query domain="medrec" type="WebServer" name="MedRecServer">
<set attribute="LogFileName" value="logs/access.log"/>
</query>
</wlconfig>
</target>
query
要素の内部にネストされる場合、その query
要素では MBean 名を指定する必要はありません。
<target name="queryDelete">
<wlconfig url="${adminurl}" username="${user}" password="${pass}"
failonerror="false">
<query query="${wlsdomain}:Name=MyNewServer2,*"
property="deleteQuery">
<delete/>
</query>
</wlconfig>
</target>
set
要素では、1 つの属性値を Ant プロパティに格納されている複数のオブジェクト名に設定できます。たとえば、次のターゲットは、2 つのサーバのオブジェクト名を異なる Ant プロパティに格納し、その後、それらのプロパティを使用して両方のサーバを新しい JDBC 接続プールの Targets 属性に割り当てます。
<target name="multipleJDBCTargets">
<wlconfig url="${adminurl}" username="${user}" password="${pass}">
<query domain="mydomain" type="Server" name="MyServer"
property="myserver"/>
<query domain="mydomain" type="Server" name="OtherServer"
property="otherserver"/>
<create type="JDBCConnectionPool" name="sqlpool" property="sqlpool">
<set attribute="CapacityIncrement" value="1"/>
[.....]
<set attribute="Targets" value="${myserver};${otherserver}"/>
</create>
</wlconfig>
</target>
以下の節では、wlconfig
で使用可能な属性と要素について説明します。
次の表では、wlconfig
Ant タスクの主な属性について説明します。
ps などのプロセス ユーティリティでパスワードがプレーン テキストで表示されないようにするには、まず WebLogic Scripting Tool (WLST) の storeUserConfig コマンドを使用して有効なユーザ名と暗号化されたパスワードをコンフィグレーション ファイルに格納する。次に、Ant ビルド ファイルで username と password の両属性を省略する。これらの属性を省略すると、wlconfig はデフォルト コンフィグレーション ファイルの値を使用してログインを試みる。
|
|||
ps などのプロセスレベルのユーティリティで username および password 属性の代わりに使用する。
userconfigfile 属性を指定する前に、「WLST コマンドおよび変数リファレンス」の説明に従い、WebLogic Scripting Tool (WLST) の storeUserConfig コマンドを使用してファイルを生成する必要がある。
|
|||
userkeyfile 属性を指定する前に、「WLST コマンドおよび変数リファレンス」の説明に従い、WebLogic Scripting Tool (WLST) の storeUserConfig コマンドを使用してキー ファイルを生成する必要がある。
|
wlconfig
には、コンフィグレーション オプションを指定するためにネストできる要素もあります。
create
要素は、WebLogic Server ドメインで新しい MBean を作成します。wlconfig
タスクには create
要素をいくつでも指定できます。
create
要素には、ネストされた set
要素をいくつでも指定できます。この要素では、新しく作成される MBean の属性を設定します。create
要素にはネストされた create
要素を追加することもできます。この要素は子 MBean を作成します。
delete
要素は、WebLogic Server ドメインから既存の MBean を削除します。delete
要素には属性が 1 つあります。
set
要素は、指定された MBean、新しく作成された MBean、またはクエリの一部として取得された MBean に対して、MBean 属性を設定します。set
要素は、wlconfig
タスクの直接の子として、または create
要素や query
要素の内部にネストして指定することができます。
|
|||||
|
get
要素は、WebLogic Server ドメインの MBean から属性値を取得します。wlconfig
タスクには get
要素をいくつでも指定できます。
query
要素は検索パターンに一致する MBean を見つけます。
query 要素では、以下のネストされた子要素を使用できます。
wlconfig
タスクには、ネストされた query
要素をいくつでも指定できます。
invoke
要素は、1 つまたは複数の MBean の管理操作を呼び出します。WebLogic Server MBean の場合、通常このコマンドを使用して、ほとんどの WebLogic Server MBean が備えている get
Attribute
と set
Attribute
以外の操作を呼び出します。
libclasspath
Ant タスクは、アプリケーション ライブラリや Web ライブラリなどのライブラリを使用しているアプリケーションをビルドするために使用します。
独自にインストールした Ant でこのタスクを使用するには、ビルド ファイルに次のタスク定義を追加します。
<taskdef name="libclasspath" classname="weblogic.ant.taskdefs.build.LibClasspathTask"/>
以下の節では、libclasspath
Ant タスクで使用できる属性と要素について説明します。
次の表では、libclasspath
Ant タスクの主な属性について説明します。
libclasspath
には、コンフィグレーション オプションを指定するためにネストできる 2 つの要素があります。libclasspath
Ant タスクを使用する場合は、少なくともこのうちの 1 つの要素が必要です。
dir
- このディレクトリのすべてのファイルが使用可能なライブラリとして登録されることを指定します。
file
- このファイルが使用可能なライブラリとして登録されます。
この節では、libclasspath
Ant タスクのサンプル コードを示します。
.
.
.
<taskdef name="libclasspath" classname="weblogic.ant.taskdefs.build.LibClasspathTask"/>
<!-- weblogic-application.xml で定義されたライブラリに基づいてクラスパスをビルドする -->
<target name="init.app.libs">
<libclasspath basedir="${src.dir}" tmpdir="${tmp.dir}"classpathproperty
="app.lib.classpath">
<librarydir dir="${weblogic.home}/common/deployable-libraries/"/>
</libclasspath>
<echo message="app.lib.claspath is ${app.lib.classpath}" level="info"/>
</target>
.
.
.
![]() ![]() ![]() |