6

Storm を使用するように移行するプロジェクトがあるため、コードを jar にパッケージ化する必要があります。以前は、システム構成ディレクトリ内のファイルからバインディングをロードする実装com.sun.jndi.fscontext.RefFSContextFactoryとして使用していました(正常に動作しました)。ただし、このファクトリを使用して jar 内からコンテキストをロードしようとすると、次のようになります。InitialContextFactoryjndicontextclasspath

javax.naming.InvalidNameException: unknown protocol: jar
     at com.sun.jndi.fscontext.FScontextFactory.getFileNameFromURLSTring(FSContextFactory.java:139)
     at com.sun.jndi.fscontext.RefFSContextFactory.createContext(RefFSContextFactory.java:31)

これは、ファクトリが次の URL から jdni コンテキストをロードしようとしたためです。

"jar:file:/mount/storm-dir/data/storm.jar!/jndicontext"

これは有効な URL ですが、ファクトリは jar を開く方法を認識していません。その実装はありjavax.naming.spi.InitialContextFactoryますか?あるいは、この問題を回避して構成ディレクトリを Storm に追加する方法はありclasspathますか?

4

0 に答える 0