特定のプロパティ値の設定
xconfmanager コマンドで、特定のプロパティ値を設定するには -s パラメータを使用し、プロパティ設定のターゲットプロパティファイルを設定するには -t パラメータを使用します。1 つの xconfmanager コマンドで、複数の -s パラメータを指定できます。ただし、指定するすべてのプロパティが同じターゲットプロパティファイルに含まれている必要があります。-t パラメータは 1 つしか指定できません。
設定するプロパティ値は、java.util.Properties の仕様に準拠している必要があります。以下のガイドラインに従って、プロパティを正しく設定してください。
• プラットフォームの表記問題を回避するために、ファイルパスでスラッシュ (/) を使用します。
• シェルで解釈される可能性のある文字が値に含まれているプロパティを指定するには、使用しているシェルに応じた方法で、該当する文字をエスケープします。
• パスワードを設定するときは、プレーンテキストで指定した後、xconfmanager ユーティリティでそのパスワードを暗号化します。
システムパスワード暗号化のオプションの説明を参照してください。
たとえば、Windows システムの場合、引数を二重引用符で囲むことによって値にスペースを含めることができます。たとえば、以下のように使用します。
-s wt.inf.container.SiteOrganization.name="ACME Corporation"
UNIX システムでは、二重引用符を使用するか、バックスラッシュを使用してスペース文字をエスケープできます。たとえば、以下のように使用します。
-s wt.inf.container.SiteOrganization.name="ACME\ Corporation"
UNIX では、通常、ドル記号は、シェルによって変数プリフィックスとして解釈されます。ドル記号を含むプロパティ値を設定するには、引数を一重引用符で囲んでシェルによって解釈されないようにするか、バックスラッシュを使用してドル記号をエスケープします。たとえば、以下のいずれかのように使用します。
-s 'wt.homepage.jsp=$(wt.server.codebase)/wtcore/jsp/wt/portal/index.jsp'
または
-s wt.homepage.jsp=\$(wt.server.codebase)/wtcore/jsp/wt/portal/index.jsp
コマンドラインシェルで誤って解釈されないように引数をエスケープする以外は、XML またはプロパティファイルの構文との互換性を保つために、値をそれ以上エスケープする必要はありません。xconfmanager は、必要に応じて、プロパティの名前と値を自動的にエスケープします。
以下の xconfmanager コマンドを Windows システムで使用すると、wt.properties プロパティファイルの wt.temp プロパティが、Windchill インストールディレクトリ [$(wt.home) で定義] の下の WCtemp ディレクトリに設定されます。
xconfmanager -s wt.temp=$(wt.home)/WCtemp -t wt.properties -p
Windows の C:\ptc\Windchill\bin ディレクトリからコマンドを実行したと仮定すると、出力結果は以下のようになります。
Default product root=C:\ptc\Windchill\bin\..
java -jar "C:\ptc\Windchill\bin\..\codebase\WEB-INF\lib\install.jar"
-r "C:\ptc\Windchill\bin\.." -s wt.temp=$(wt.home)/WCtemp
-t wt.properties -p
Propagating xconf data to target files...
xconfmanager では、現在の site.xconf ファイルのバックアップが作成され、wt.temp のプロパティエレメントが site.xconf ファイルに追加されて (site.xconf ファイルの既存のプロパティ設定はすべて置き換えられます)、変更内容が「wt.properties」に反映されます。プロパティ値はキャッシュされるので、Windchill およびサーブレットエンジンを再起動しないかぎり反映した値は使用されません。