找不到ID为'some-id'的'library'类型的元素

时间:2016-09-14 22:02:28

标签: java eclipse jndi websphere-liberty

我想从我的程序中获取一些属性,我必须使用JNDI使用WAS Liberty(我在那里设置了一些属性)。但是当我使用这些标签时:

<jndiObjectFactory id="id-factory" className="some-class" objectClassName="another-class" libraryRef="name-of-lib" />
server.xml上的

Eclipse向我显示了一条警告:

An element of type 'library' with ID 'name-of-lib' could not be found

我在some-class上使用another-class获得了这些课程(dependencypom.xml)。

我进入了这些课程,但我找不到类似name-of-lib

的内容

还有另一种方法可以确定name-of-lib是否真的在这些类中?

1 个答案:

答案 0 :(得分:2)

您需要在server.xml中配置<library>元素,为其指定一个ID,并将<library>的ID设为libraryRef的值。

假设您的文件系统上的foo.jar库位于/temp/myLibs/foo.jar,您可以在server.xml中配置此库,如下所示:

<jndiObjectFactory ... libraryRef="MyLib"/>

<library id="MyLib">
  <fileset dir="/temp/myLibs" includes="*.jar"/>
</library>

或者,不是使用libraryRef指向<library>的ID,而是可以将<library>嵌套在<jndiObjectFactory>下,如下所示:

<jndiObjectFactory ...>
  <library>
    <fileset dir="/temp/myLibs" includes="*.jar"/>
  </library>
</jndiObjectFactory>

这是IBM Doc for shared library configuration