python - 在 tomcat 上的 jython 下运行 cx_Oracle

标签 python jython cx-oracle

我正在尝试使用 tomcat 加载 cx_Oracle。

从 python 加载工作正常,但对于 jython 我收到“找不到模块”。我的 system.path 包括包含 cx_Oracle.so 的站点包。

我是 jython 的新手,我没有时间熟悉所有变量,但我相信我已经导出了所有必要的环境变量,尽管显然有些问题。

最佳答案

Ben,并非所有在 CPython 实现中与 Python 配合使用的模块都可以在其他实现中使用。如果此类模块使用系统特定的调用,或绑定(bind)到某些 .dll/.so 文件,它将无法在其他 Python 实现上工作。 cx_Oracle就是这样一个操作系统模块:它绑定(bind)到Oracle客户端(对于各种Oracle版本和各种操作系统都有cx_Oracle版本)。

我认为如果您想从 Jython 访问 Oracle,您应该使用 JDBC 驱动程序。然后,您可以使用 JDBC 调用,或使用 zxJDBC Jython 模块,该模块使 JDBC 驱动程序可通过 DB API 调用使用。我在可以通过 CPython 和 Jython 运行的程序中使用了 JDBC(使用 zxJDBC)和 cx_Oracle。要查看它的实际效果,请查看我的食谱 dump Oracle db schema to text

关于python - 在 tomcat 上的 jython 下运行 cx_Oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3820593/

相关文章:

python - 使用 Apache 设置 Django 时出现数据库错误 - DatabaseError : DPI-1047

Python 迭代 cx_Oracle 结果集时出错

python - 现在要将此字符串转换为 Python 或 Django 中的日期时间对象?

java - 使用原始 python 包而不是 jython 包

python - cx_Oracle.DatabaseError : ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

netbeans - 在 Netbeans 中将 Jython 应用打包为 JAR

selenium-webdriver - 如何使用 pip + Jython 为机器人框架安装 Selenium2Library?

python - 正则表达式:匹配两个单词之间的所有字符,返回奇怪的输出

python - 过滤目录中的所有文件以查找与多个正则表达式匹配的单词

python - 如何将形状 (None, 512) 的张量转换为形状 (None, 12, 12, 512) 的张量