1

在我的 java web 应用程序中,尝试连接 SAP 服务器。生成此错误。我已将sapjco3.dll 和 sapjco3.jar放在WEB-INF/lib/中,并在 Java 构建路径中进行了配置。我还将 servlet 中的路径设置为

System.setProperty("java.library.path", "/WEB-INF/lib");

但也存在错误。

4

2 回答 2

1

你的方法有几个问题

  1. 不建议以java.library.path编程方式更改,因为该属性在 JVM 启动时被缓存。有关详细信息,请参阅以编程方式设置“java.library.path”

  2. 您正在覆盖java.library.path而不是在最后添加您的目录。您的应用程序服务器很可能需要自己的一些本机库。

  3. /WEB-INF/lib是您的 JVM 不会找到的相对路径,因为 JVM 根目录与您的应用程序根目录不同(更不用说如果您正在部署 WAR 文件)

通常,您应该将 SAP JCo 配置为服务器库,而不是应用程序库。确切的过程取决于您的应用程序服务器。

于 2013-05-07T08:49:47.683 回答
0

如果您像我一样在 Windows 上,您可以将sapjco3.dll放在文件系统中您想要的任何位置(Windows system32sysWOW64目录除外,如 sapjco3 文档中所述),然后将其路径添加到您的Path系统变量:

路径系统变量中的 sapjco3.dll

在 Linux 上,将libsapjco3.so文件的路径添加到环境变量LD_LIBRARY_PATH

如果您在 JBoss 上并且需要将 sapjco3.jar 放入您的项目中,请在此处查看我的答案: https ://stackoverflow.com/a/21901220/1592796

于 2014-02-20T08:09:39.137 回答