2012-03-28 7 views
2

Tomcat 6.0には2つのWebアプリケーションがあります。tomcatとjava.security.Security

java.security.Security.addProvider(new cryptix.jce.provider.CryptixCrypto()); 

これが第二のアプリでこのプロバイダが利用できるようになりますが、私はそれを望んでいない。そのうちの一つは、次のコードを実行します。

なぜこれが起こっているのか、どのように修正できるのか説明してください。

答えて

3

Providersはグローバルです。

インストールされているすべてのプロバイダを含む配列を返します。配列内のプロバイダの順序は優先順位です。

あなたがコントロールできるのは、プロバイダーの優先順位です。 java.securityはブートストラップクラスローダーによってロードされているため、別のJVMで実行することなく、コードの一部ではなく、別のJVMで実行することなく、コードの一部でプロバイダを使用できるようにすることはできません。