无法访问Lotus Notes Java Agent中的资源文件

时间:2012-03-30 10:24:05

标签: java lotus-notes xpages

我在访问导入到Lotus Notes Java Agent(内容部分)的资源部分的文件时遇到问题。

我正在尝试下面的代码

getClass().getClassLoader().getResource("gift.png").getPath() 

但每次都会返回null 此资源位于Res / gift.png内(Res是Lotus Java Agent中的文件夹)

我也试过

InputStream is = JavaAgent.class.getClassLoader().getResourceAsStream("gift.png");

这也会返回null ......

我在Lotus java代理上找不到太多来源,所以尝试了一些常规的java代码。有没有人遇到类似的问题。或者它们是在Lotus Java Agent中访问资源文件的其他方法或方法

3 个答案:

答案 0 :(得分:3)

您可能希望: 1)不使用JavaAgent,而是使用您在代理中使用的自己的类之一 2)使用this.getClass().getResourceAsStream("/gift.png"); 3)即使在Windows上也是如此。 4)您需要以/开头,以确保从代理根开始 心连心 :-) stw

更新:" /"等效于src(或编译的bin)文件夹,但res文件夹被复制到已编译代理的根目录中。所以切掉了/ res部分。另外,在src文件夹中创建自己的文件夹。最简单的方法是打开代理进行编辑,然后在此临时项目中使用导航器。

答案 1 :(得分:1)

我刚刚尝试制作一个快速测试代理,其中包含一个名为" email.html"的导入资源。在JavaAgent主类中的NotesMain()内部,我能够这样做来阅读内容,所以这可能是要走的路:

InputStream res = this.getClass().getResourceAsStream("/email.html");

所以结果是:显然没有" res"完全有点。

答案 2 :(得分:0)

Res是代理中的文件夹?从来没有听说过。

尝试使用普通资源名称,不使用“Res \”,或尝试“Res \ gift.png”

这也可能是一个安全问题,请参阅此处1