EAR ファイルにパッケージ化され、WildFly 9.0.2 Final にデプロイされたアプリケーションがあります。WildFly によって定義されたいくつかのシステム プロパティを読み取る必要があります。
問題は、EAR のクラスが WildFly システム プロパティを読み取れないことです。たとえば、次のコードは NullPointerException を取得します。
String DEPLOY_DIR = System.getProperty("jboss.server.base.dir") + File.separator + "deployments"
File deployDir = new File(DEPLOY_DIR);
そして、これはエラーです:
java.lang.NullPointerException
at java.io.File.<init>(File.java:277)
このエラーは、次が null を返すために発生します。
System.getProperty("jboss.server.base.dir")
WildFly が起動すると、関連するシステム プロパティがログに正しく表示されることに注意してください。
jboss.server.base.dir = C:\javaSoft\workspaces\WildFly_Migration\App\configuration\wildfly-9.0.2.Final\standalone
jboss.server.config.dir = C:\javaSoft\workspaces\WildFly_Migration\App\configuration\wildfly-9.0.2.Final\standalone\configuration
jboss.server.data.dir = C:\javaSoft\workspaces\WildFly_Migration\App\configuration\wildfly-9.0.2.Final\standalone\data
jboss.server.deploy.dir = C:\javaSoft\workspaces\WildFly_Migration\App\configuration\wildfly-9.0.2.Final\standalone\data\content
jboss.server.log.dir = C:\javaSoft\workspaces\WildFly_Migration\App\configuration\wildfly-9.0.2.Final\standalone\log
私の質問 - EAR がシステム プロパティを読み取れない理由はありますか?