0

Apache Axis SOAP クライアント プロキシを Spring Bean としてインスタンス化する J2EE Web アプリケーションがあります。

初めてアプリケーションを Glassfish 3 サーバーにデプロイすると、成功します。ただし、アプリケーションをアンデプロイして再デプロイすると、次のエラーが発生します (Spring スタックトレースの下部)。

Instantiation of bean failed; nested exception is 
org.springframework.beans.factory.BeanDefinitionStoreException: Factory method
[com.foo.bar.FooServicePortType com.foo.bar.config.ApplicationConfig.backendService()] threw exception;
nested exception is java.lang.RuntimeException: 
java.lang.IllegalStateException: WEB9031: WebappClassLoader unable to load resource
[META-INF/services/org.apache.axis.EngineConfigurationFactory],
because it has not yet been started, or was already stopped

ドメインを再起動して再デプロイすると、再び成功します。

なぜこれが起こっているのですか?

4

1 に答える 1

1

これは、Axis ライブラリのクラスローダー リークが原因でした。最も簡単な修正方法は、共有ドメイン ライブラリの一部としてではなく、アプリケーション自体に Axis jar をデプロイすることです。

于 2010-10-10T22:20:14.540 に答える