設定情報
wisdomには以下の4つの設定をする必要があります。これらはwisdomを動かすためにサーブレットコンテナにwisdomのクラスを設定するためであったり、wisdomが使用する外部ファイルの場所を指定するファイルであったり、wisdomの環境、使用できるプログラム情報だったりします。
wisdom.core.runtime.RuntimeServletを登録します。URLマッピングで使用するURL名は任意の値を設定してください。
wisdom.core.runtime.RuntimeServletの初期ロード時に使用する「wisdom_config.xml」が配置されているパスを設定します。
例)
config.file.path=c:/home/wisdom/
設定するキーは「config.file.path」です。値に「wisdom_config.xml」が配置されているパスを指定します。
設定ファイルのパスを確認しましょう
サーバー始動時に例外が発生する場合はconfig_path_ja_JP.propertiesの値が正しくない場合がほとんどです。
ファイルが存在するか、確認するようにしましょう。
wisdom.core.runtime.RuntimeServletの初期ロード時に使用する「wisdom_config.xml」が配置されているパスを設定します。
例)
<?xml version='1.0' encoding='Shift_JIS'?>
<wisdom_config>
<servletRuntimeConfig className='wisdom.core.runtime.RunTimeServlet'
enablesSession="false">
<authenticate required="false" authType="form"
authClass="tutorial.AuthenticateImpl"/>
<allowedMethods post="true" get="true"/>
<commandFileName name="runtime-command.xml"/>
<onInitBatchCommand seq='1' className='tutorial.HelloBatchWorld'/>
<exception className='ProhibitMethodExceoption' page='error.jsp'/>
<exception className='wisdom.core.runtime.ReqidNotFoundException'
page='/error.jsp'/>
<exception className='wisdom.core.runtime.AuthenticateException'
page='/login.jsp'/>
<response.header name="Pragma" value='No-cache'
/>
<response.header name="Expires" value='0' />
<response.header name="Cache-Control" value='no-cache'
/>
<response.contentype value='text/html;charset=Cp943C' />
</servletRuntimeConfig>
<datasource id='' default='true'>
<parameter id='db.dsname' value='bsoldb_ds'/>
<parameter id='db.user' value='db2admin'/>
<parameter id='db.password' value='db2admin'/>
<parameter id='db.name' value='wisdom'/>
<parameter id='db.ds.class' value='wisdom.core.datasource.PooledDB2WAS4x'/>
<parameter id='sql.stmt.auto.close' value='true'/>
<parameter id='sql.stmt.trace' value='true'/>
</datasource>
<datasource id='falcon' default='false'>
<parameter id='db.dsname' value='bsoldb_ds'/>
<parameter id='db.user' value='db2inst1'/>
<parameter id='db.password' value='db2inst1'/>
<parameter id='db.name' value='falcon'/>
<parameter id='db.ds.class' value='wisdom.core.datasource.NativeDB2'/>
<parameter id='sql.stmt.auto.close' value='true'/>
<parameter id='sql.stmt.trace' value='true'/>
</datasource>
<parameter category='log' id='reqid_no_page' value='sfc?reqid=top'
/>
<parameter category='log' id='log.type' value='DEBUG|TRACE|INFORM|ERROR|WARNING'
/>
<parameter category='log' id='log.append' value='true' />
<parameter category='log' id='log.keep.date' value='4' desc='log.append=
keep period(days) when log.append =true' />
<parameter category='log' id='log.file' value='System.out' />
<parameter category='message' id='app.message.resource' value='messageResources.AppMessageResource'
/>
</wisdom_config>
wisdom_config.xmlで設定可能な要素とその意味。
| |
|
指定
回数
| 設定する属性
| 設定可能な属性値
| 備考
|
| ルート要素 |
wisdom_config |
1 |
|
ー |
|
| サーブレット構成 |
servlet RuntimeConfig |
n |
className |
wisdom.core.runtime. RuntimeServlet |
このservletRuntimeConfig要素を使用するあサーブレット名を指定します。 |
enables Session |
true|false |
セッションを使用可能にする場合trueを指定します。 |
| 認証設定
| authenticate |
1 |
required |
true|false |
認証が必要な場合trueを指定します。 |
| authType |
form|basic |
アプリケーションでログインなどの認証画面を作成する場合はformを指定します。
HTTP BASIC認証を使用する場合、basicを指定します。 |
| authClass |
※任意の認証クラス名 |
requiredがtrueの場合、ここで指定したクラスのインスタンスが認証に使用されます。このクラスはwisdom.core.application.IAuthenticateの実装クラスです。 |
| メソッド設定 |
allowed Methods |
1 |
post |
true|false |
HTTP POSTメソッドの使用許可をtrue、または指定します。 |
| get |
true|false |
HTTP GETメソッドの使用許可をtrue、または指定します。 |
| コマンドファイル設定 |
command FileName |
1 |
name |
runtime-command.xml |
使用するコマンドファイルの名前を指定します。このファイル名を使用し実行所のWEB-INFからコマンド定義ファイルを取得します。 |
| 初期ロード時のバッチコマンド実行設定 |
onInit Batch Command |
n |
seq |
※任意の文字列 |
サーブレットの初期ロード時に実行するバッチコマンドの実行順序を任意の文字列で指定します。(※この順序は現在参照されません) |
| className |
※任意のバッチクラス名 |
サーブレットの初期ロード時に実行する任意のバッチコマンド名を指定します。このクラスはwisdom.core.application.IBatchCommandの実装クラスです。 |
| 例外発生時の送信先JSP設定 |
exception |
n |
className |
※任意の例外クラス名 |
任意のエラーページへ送付するための例外クラス名を指定します。 |
| page |
※任意のJSP名 |
例外が発生したときに転送するJSP名を指定します。 |
| JSP転送時のヘッダー上書き情報 |
response. header |
n |
name |
※任意のヘッダー情報のキー |
JSPへ転送するときのHTMLヘッダー情報のキーを指定します。 |
| value |
※任意のヘッダー情報の値 |
JSPへ転送するときのHTMLヘッダー情報の値を指定します。 |
| JSP転送時のコンテントタイプ |
response. contentype |
1 |
value |
※任意のHTMLコンテントタイプの値 |
JSPへ転送するときのHTMLコンテントタイプの値を指定します。 |
| データベース構成 |
<datasource> |
n |
id |
※任意の文字列 |
この値はアプリケーションからデータベースへ接続する際の論理名になります。 |
| default |
true|false |
この値がtrueに設定されているdatasourceがアプリケーションから利用する場合の省略時の設定になります。 |
| データソース名 |
parameter |
1 |
id |
db.dsname |
※固定値です。 |
| value |
※任意のデータソース名 |
コネクションプールを使用する場合に参照されます。 |
| 接続ユーザーID
| parameter |
1 |
id |
db.user |
※固定値です。 |
| value |
※任意のデータベース接続ユーザーID |
コネクションプールを使用しない場合にこの値が参照されます。 |
| 接続ユーザーパスワード |
parameter |
1 |
id |
db.password |
※固定値です。 |
| value |
※任意のデータベース接続パスワード |
コネクションプールを使用しない場合にこの値が参照されます。 |
| 接続データベース名 |
parameter |
1 |
id |
db.name |
※固定値です。 |
| value |
※任意のデータベース接続ユーザーID |
コネクションプールを使用しない場合にこの値が参照されます。 |
| 使用接続クラス名
| parameter |
1 |
id |
db.ds.class |
※固定値です。 |
| value |
※任意の接続クラス |
wisdom.core.datasourceパッケージにある任意のクラス名を指定します。 |
| 自動クローズ設定 |
parameter |
1 |
id |
sql.stmt.auto.close |
※固定値です。 |
| value |
true|false |
トランザクション終了時にSQLリソースの自動クローズを行うか設定します。
※常にtrueにしてください。 |
| トレース出力設定 |
parameter |
1 |
id |
sql.stmt.trace |
※固定値です。 |
| value |
true|false |
トランザクション実行中のSQLトレースを出力するか設定します。
※開発時以外は常にfalseにしてください。 |
| ログ設定 |
出力するログのタイプ
| parameter |
1 |
id |
log.type |
※固定値です。 |
| value |
※右文字列を|で区切った値 |
DEBUG|TRACE|INFORM|ERROR|WARNINGのメソッドがそれぞれアプリケーションの実行ログメソッドに対応づけられます。 |
| ログの出力方式 |
parameter |
1 |
id |
log.append |
※固定値です。 |
| value |
true|false |
trueに設定されている場合、循環ログが使用されます。 |
| ログの保存期間
| parameter |
1 |
id |
log.keep.date |
※固定値です。 |
| value |
※任意の数字 |
log.appendの値がtrueになっている場合 |
| ログ出力先 |
parameter |
1 |
id |
log.file |
※固定値です。 |
| value |
※任意の出力先ファイル名 |
ログの出力先ファイルを指定します。System.outと指定することでJVMの標準出力に変更することできます。指定されたファイルが存在しない場合は新たに作成します。ファイルの作成時に問題があり作成できなかった場合はJVMの標準出力に出力先が変更されます。 |
| 使用メッセージ
| parameter |
1 |
id |
app.message.resource |
※固定値です。 |
| value |
※任意の文字列 |
wisdom.core.application.AppMessageGeneratorが参照するpropertiesファイルを指定します。 |
config_path_ja_JP.propertiesでwisdom_config.xmlを切り替える
config_path_ja_JP.propertiesの設定で開発用と本番用で切り分けることができます。
サーブレットが実行できるコマンドクラスの定義です。
例)
<?xml version='1.0' encoding='Shift_JIS'?>
<commands>
<reqid id='hello' command='tutorial.HelloWorld' desc='ハローワールド'
></reqid>
<reqid id='hellod' command='tutorial.HelloDownload' desc='データベースからハローワールド'
></reqid>
<reqid id='hello2' command='tutorial.SayHelloFromTable' desc='データベースからハローワールド'
></reqid>
</commands>
runtime_command.xmlで設定可能な要素とその意味。
| |
|
親要素に対する
指定可能回数
| 設定する属性
| 設定可能な属性値
| 備考
|
| ルート要素 |
commands |
1 |
|
ー |
|
| コマンド定義 |
reqid |
n |
id |
※任意の文字列 |
アプリケーション上で参照されるコマンドの論理名 |
| command |
※実行する任意のコマンドクラス名 |
実行するコマンドクラス名 |
| desc |
※記述 |
このコマンドに対する設定を記述します。 |