تشغيل cx_oracle تحت Jython على Tomcat
سؤال
أحاول تحميل cx_oracle باستخدام tomcat.
يعمل التحميل من Python بشكل جيد ، لكن بالنسبة لـ Jython ، أحصل على "وحدة غير موجودة". يتضمن System.Path حزم الموقع التي تحتوي على cx_oracle.so.
أنا جديد على Jython ولم يكن لدي وقت للتعرف على جميع المتغيرات ، لكنني أعتقد أن لدي جميع متغيرات البيئة اللازمة التي يتم تصديرها ، على الرغم من أن هناك شيئًا ما غير صحيح.
المحلول
بن ، ليس كل الوحدات التي تعمل مع Python في تنفيذ Cpython ستعمل على تطبيقات أخرى. إذا كانت هذه الوحدة تستخدم مكالمات محددة للنظام ، أو ترتبط ببعض ملف .dll/.So ، فلن يعمل على تطبيق Python الآخر. CX_ORACLE هو واحد من مثل هذه الوحدات: يرتبط عميل Oracle (هناك إصدارات CX_ORACLE للعديد من إصدارات ORACLE وأنظمة التشغيل المختلفة).
أعتقد أنه يجب عليك استخدام برنامج تشغيل JDBC إذا كنت ترغب في الوصول إلى Oracle من Jython. ثم يمكنك استخدام مكالمات JDBC ، أو الاستخدام zxJDBC
وحدة Jython التي تجعل برامج تشغيل JDBC متاحة عبر مكالمات API DB. لقد استخدمت كل من JDBC (مع zxJDBC
) و CX_oracle في البرامج التي يمكن أن تعمل من Cpython و Jython. لرؤيته في العمل ، انظر إلى وصفتي إلى تفريغ مخطط Oracle DB للنص