コンテキスト: Linux システムで実行されている Tomcat (v7.0.57) で MFP v6.3 を使用しています。MFP ANT タスクを使用して、開発およびステージング MFP サーバーへの MFP アーティファクトの展開を自動化したいと考えています。具体的には、MFP アプリケーションの WAR ファイルの展開を自動化したいと考えています。
WAR ファイルをインストールする前に、unconfigureApplicationServer ANT タスクを使用して、WAR ファイルの Tomcat サーバーに存在する可能性がある以前のインストールを削除します。次に、configureDatabase ANT タスクを使用して、必要な 2 つのデータベースを作成します。最後に、configureApplicationServer ANT タスクを使用して、WAR ファイルをインストール/デプロイします。
問題: 上記のすべての ANT タスク (つまり、unconfigureApplicationServer、configureDatabase、configureApplicationServer) をエラーなしで実行できます。また、Tomcat webapps フォルダーの下のファイル システムに WAR ファイルがあることも確認できます。ただし、この後、アダプターまたは wlapp ファイルをデプロイしようとすると、必要な WAR ファイルが存在しないというエラーがスローされます。Tomcat サーバーも再起動しましたが、違いはありませんでした。MFP コンソールにアクセスしても、MFP アプリのエントリが表示されません。また、configurationTool.sh ツールを起動しても、ランタイムのエントリも表示されません。
WAR ファイルに問題がないことを確認するために、configurationTool.sh ツールを使用してデプロイしました。configurationTool.sh ツールを使用して WAR ファイルをデプロイすると、問題なく動作します (ただし、Tomcat の再起動が必要でした…)。
KnowledgeCenter で MFP のドキュメントを読んだ後、ANT タスクを使用して、適切なパラメーターを渡すだけで、MFP サーバー (tomcat) 上の MFP WAR ファイルの展開 (アンインストールとインストール) を自動化できることがわかりました。また、WAR ファイルをインストールまたは更新するたびにサーバー (tomcat) を再起動する必要がないことも期待しています。
何が間違っている可能性がありますか?ありがとう。
コード: Gradle を使用してさまざまな ANT タスクを呼び出しています。
task uninstallMFPArtifacts << {
ant.unconfigureApplicationServer(contextRoot: contextRoot) {
"project"(warfile: warFile)
"applicationserver"() {
"tomcat"(installdir: installDir)
}
"database"(kind: "Worklight") {
"mysql"(database: dbPrefix + '_MFP',
server: "localhost",
user: dbUser,
password: dbUser)
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
"database"(kind: "WorklightReports") {
"mysql"(database: dbPrefix + '_MFP_RPT',
server: "localhost",
user: dbUser,
password: dbUser)
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
}
println "Uninstalled: $appShortName"
}
task setupMFPDBs << {
// Create databases
ant.configureDatabase(kind: "Worklight") {
"mysql"(database: dbPrefix + '_MFP',
server: "localhost",
user: dbUser,
password: dbUser) {
"dba"(user: dbaUser,
password: dbaPassword)
"client"(hostname: 'localhost')
"client"(hostname: '127.0.0.1')
}
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
println "Created $dbPrefix" + '_MFP database.'
ant.configureDatabase(kind: "WorklightReports") {
"mysql"(database: dbPrefix + '_MFP_RPT',
server: "localhost",
user: dbUser,
password: dbUser) {
"dba"(user: dbaUser,
password: dbaPassword)
"client"(hostname: 'localhost')
"client"(hostname: '127.0.0.1')
}
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
println "Created $dbPrefix" + '_MFP_RPT database.'
}
task deployMFPArtifacts << {
// Install WAR file
ant.configureApplicationServer(contextRoot: contextRoot) {
"project"(warfile: warFile)
"applicationserver"() {
"tomcat"(installdir: installDir)
}
"database"(kind: "Worklight") {
"mysql"(database: dbPrefix + '_MFP',
server: "localhost",
user: dbUser,
password: dbUser)
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
"database"(kind: "WorklightReports") {
"mysql"(database: dbPrefix + '_MFP_RPT',
server: "localhost",
user: dbUser,
password: dbUser)
"driverclasspath"() {
"pathelement"(location : mySQLJarPath)
}
}
}
println "Installed $warFile file."
}