如何从storm jar中加载jndi绑定?

ejk8hzay  于 2021-06-24  发布在  Storm
关注(0)|答案(0)|浏览(280)

我们有一个项目正在使用storm,因此我们的代码必须打包在一个jar中。我们以前用过 com.sun.jndi.fscontext.RefFSContextFactory 作为我们的 InitialContextFactory 实现来加载 jndicontext 中的系统配置目录中的文件的绑定 classpath (干得不错)。但是,当尝试使用此工厂从jar中加载上下文时,我们得到以下结果:

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/“上下文”
这是一个有效的url,但是工厂不知道如何打开jar。是否实施了 javax.naming.spi.InitialContextFactory 是吗?或者,有没有一种方法可以解决这个问题,并添加一个配置目录到storm的 classpath ?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题