我需要从LotusScript代理调用REST。我使用的是LS2J,所以我在脚本库中使用了Java代码。
我第一次尝试使用Jersey2,先是使用最新版本,然后是几个较老的Jersey2版本,并且总是得到一个异常,在不同的版本中是不同的,但主要是ExceptionInInitializerError。我首先用Maven解决了Exclipse中的依赖关系,这样我就可以导入所有所需的jar文件。
然后我决定尝试使用Apache。我从我的pom开始:
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>3.2.7</version>
</dependency>并将所有解析的JAR从Maven存储库导入Domino脚本库:

代码编译得很好,但在运行时,我得到了以下内容:
java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder在代码中,与JAX RS相关的导入如下:
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.core.GenericType;
import javax.ws.rs.core.MediaType;任何地方都没有提到泽西岛。据我理解,这意味着它找不到CXF ClientBuilder实现,异常显示默认实现。
我让REST客户与泽西1一起工作,但我不喜欢使用陈旧的解决方案。
有什么想法吗?
Designer和服务器版本为10。
发布于 2018-12-06 14:40:55
我从脚本库中删除了除javax.ws.rs-api-2.1.1.jar之外的所有jars,并在domino安装下将所有这些jars添加到/jvm/lib/ext中。然后它开始起作用了。
对于JSON处理,我使用Jackson并以这样的方式注册提供者:
client.register(new JacksonJsonProvider())我只在脚本库中添加了Jackson jars:

https://stackoverflow.com/questions/53652296
复制相似问题