Java 8アップデート121は、一部に、デシリアライズ、RMIレジストリシリアルフィルタ、およびRMI DGCセイルフィルタのフィルタを追加します(hereを参照)。RMIレジストリフィルタは、Java 8アップデート121のRMI設定クラスを拒否します
現在、私が作成したRmi構成に使用されているクラスをアンマーシャリングしようとしています。システムプロパティがなければ、フィルタはそれを許可せず、システムプロパティ-Dsun.rmi.registry.registryFilter=<package_name>.**
を使用しても、クラスを拒否します。ログメッセージは次のとおりです。
INFO: ObjectInputFilter REJECTED: class <package_name and class name>, arraylength: -1, nRefs: 11, depth: 4, bytes: 837, ex: n/a
デバッグは、Oracleが提供するソースコードを持っていないため、問題があります。私はチェックが行われますが、クラスのためのフィルタであるかを確認することができませんしていることがわかりますし、しきい値はのためにある何:私が正しく、このホワイトリストを適用することができ、他の方法があります
maxdepth=value - the maximum depth of a graph
maxrefs=value - the maximum number of internal references
maxbytes=value - the maximum number of bytes in the input stream
maxarray=value - the maximum array length allowed
?
シェルのワイルドカードグロビングの犠牲者かもしれないと思います。 '-Dsun.rmi.registry.registryFilter =" <パッケージ名>。** "'を試しましたか? – rkosegi
まだありません。私はそれを与えるだろう。 –
そして運はありません。それでも同じエラー。 –