Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Mencoba menyebarkan aplikasi Oracle-ADF ke Tomcat 7

Meskipun jawaban yilmazbahadir berhasil - itu bukan solusi nyata. Jadi saya mencari lebih jauh dan menemukan Blog berikut:byte bohemian

Hasilnya pada dasarnya - Anda harus memuat ADF-Libraries bersama Anda oleh shared-classloader dan tidak hanya memasukkannya ke dalam folder Tomcat/lib seperti yang dikatakan oleh Oracle Blog-Posts lama. Saya sekarang akhirnya menjalankan dan menjalankan ADF pada Tomcat8 - tetapi juga diuji pada 6 dan 7 dengan prosedur berikut:

  1. Buat Folder baru di direktori Tomcat Anda (CATALINA_BASE) bernama shared-lib . Edit file config/catalina.properties dan cari baris dengan shared.loader=... Ubah menjadi berikut:shared.loader="${catalina.base}/shared-lib","${catalina.base}/shared-lib/*.jar","${catalina.home}/shared-lib","${catalina.home}/shared-lib/*.jar" Ini akan memberi tahu Tomcat untuk memuat file-file ini dengan pemuat kelas terpisah dan akan memperbaiki masalah Anda, ketika semua perpustakaan bersama ada di folder itu.

  2. Unduh ZIP ADF-essentials dan ekstrak ke shared-lib (Anda harus membongkarnya rata!!! Jadi semua file JAR dari semua subdirektori harus berada langsung di folder tanpa subdirektori apa pun)

  3. Deploy Aplikasi ADF Anda dengan semua Library yang bergantung sebagai File EAR dan salin semua File JAR dari file EAR ke folder shared-lib.

  4. Periksa JAR duplikat - log4j selalu ada dalam dua versi untuk saya, jika Anda menemukan duplikat, simpan saja yang lebih baru.

  5. Unduh GlassFish Server dan salin file berikut dari glassfish/modul ke folder shared-lib:

    bean-validator.jar javax.mail-1.4.4.jar javax.servlet.jsp.jstl.jar javax.servlet.jsp.jstl-api.jar javax.transaction.jar

  6. Tambahkan ojdbc7.jar ke tomcat/lib (TIDAK shared-lib)

  7. Tambahkan Opsi Lingkungan berikut ke Tomcat saat Memulai (mis. di setenv.sh/setenv.bat):CATALINA_OPTS=-Doracle.mds.cache=simple

  8. (Opsional) Jika Anda ingin @PreDestroy agar anotasi berfungsi tanpa menimbulkan kesalahan dan menggunakan TomCat 7 atau 8, Anda harus mendaftarkan pendengar khusus, yang akan menangani Anotasi ini, karena Oracle mencoba mengakses Sesi di PreDestroy, sementara Tomcat mematuhi bodoh standar resmi dan membatalkan sesi sebelum memanggil PreDestroy:Anda harus menyalin File JAR berikut (termasuk sumber) ke shared-lib Anda folder:adf-predestroy-helper.jar dan daftarkan di WEB_INF/web.xml dari setiap Aplikasi ADF seperti ini:

<listener> <listener-class>oracle.adf.PreDestroyHelper</listener-class> </listener>

Pendengar PreDestroy ditulis oleh saya dan merilis OpenSource di bawah lisensi CreativeCommons, sehingga Anda dapat menggunakannya sesuka Anda, tetapi saya akan senang dengan beberapa umpan balik.

Untuk referensi - Ini adalah tampilan folder shared-lib saya (160 file):

adf-businesseditor-model.jar
adf-businesseditor-objects.jar
adf-businesseditor-settings.jar
adf-controller-api.jar
adf-controller-rt-common.jar
adf-controller-schema.jar
adf-controller-security.jar
adf-controller.jar
adf-customizationset-ui.jar
adf-dt-at-rt-wizards.jar
adf-dt-at-rt.jar
adf-dynamic-faces.jar
adf-faces-changemanager-rt.jar
adf-faces-databinding-dt-core.jar
adf-faces-databinding-rt.jar
adf-faces-registration.jar
adf-faces-templating-dt-core.jar
adf-faces-templating-dtrt.jar
adf-loc.jar
adf-mobile-schema.jar
adf-pageflow-dtrt.jar
adf-pageflow-fwk.jar
adf-pageflow-impl.jar
adf-pageflow-rc.jar
adf-predestroy-helper.jar
adf-richclient-api-11.jar
adf-richclient-automation-11.jar
adf-richclient-bootstrap.jar
adf-richclient-impl-11.jar
adf-richclient-jmx.jar
adf-richclient-skin-editor.jar
adf-richclient-skin-repository.jar
adf-sec-idm-dc.jar
adf-share-base.jar
adf-share-ca.jar
adf-share-glassfish.jar
adf-share-security.jar
adf-share-support.jar
adf-share-web.jar
adf-stringeditor-api.jar
adf-view-databinding-dt-core.jar
adf-view-unified-databinding-dt-core.jar
adf.constants.jar
adfbcsvc-client.jar
adfbcsvc-registration.jar
adfbcsvc-share.jar
adfbcsvc.jar
adfdt_common.jar
adflibfilter.jar
adflibrary.jar
adflogginghandler.jar
adfm-debugger.jar
adfm-sqldc.jar
adfm.jar
adfmportlet.jar
adfmweb.jar
adfsharembean.jar
adftags.jar
adftransactionsdt.jar
batik-anim.jar
batik-awt-util.jar
batik-bridge.jar
batik-codec.jar
batik-css.jar
batik-dom.jar
batik-ext.jar
batik-extension.jar
batik-gui-util.jar
batik-gvt.jar
batik-parser.jar
batik-script.jar
batik-svg-dom.jar
batik-svggen.jar
batik-swing.jar
batik-transcoder.jar
batik-util.jar
batik-xml.jar
bc4j-mbeans.jar
bc4jhtml.jar
bc4jimdomains.jar
bc4jsyscat.jar
bean-validator.jar
bundleresolver.jar
com.bea.core.apache.commons.collections_1.0.0.0_3-2.jar
com.oracle.classloader.pcl_12.1.3.jar
com.oracle.http_client.http_client_12.1.3.jar
com.oracle.jrf.j2ee.web-common-schemas_12.1.3.jar
com.oracle.ojsp.globaltldcache_12.1.3.jar
com.oracle.ojsp.ojsp_12.1.3.jar
com.oracle.ojsp.web-common_12.1.3.jar
com.oracle.webservices.fmw.oc4j-ws-support-impl_12.1.3.jar
commons-el.jar
datatags.jar
db-ca.jar
dms.jar
dvt-as.jar
dvt-basemaps.jar
dvt-databinding-dt-core.jar
dvt-databindings-mds.jar
dvt-databindings.jar
dvt-faces.jar
dvt-facesbindings.jar
dvt-jclient-adf.jar
dvt-jclient.jar
dvt-shared-js.jar
dvt-trinidad.jar
dvt-utils.jar
facesconfigmodel.jar
groovy-all-2.1.6.jar
inspect4.jar
javamodel-rt.jar
javatools-nodeps.jar
javax.mail-1.4.4.jar
javax.servlet.jsp.jstl-api.jar
javax.servlet.jsp.jstl.jar
javax.transaction.jar
jdev-cm.jar
jewt4.jar
jmxdc.jar
jr_dav.jar
jrf-api.jar
jsf-api.jar
jsf-impl.jar
jsp-el-api.jar
mds-dc.jar
mdsrt.jar
mobile-repository.jar
oicons.jar
ojdbc6dms.jar
ojdl.jar
ojdl2.jar
oracle-el.jar
oracle.logging-utils_12.1.3.jar
oracle.xdb_12.1.0.jar
oraclexsql.jar
orai18n-mapping.jar
ordhttp.jar
ordim.jar
org.apache.bcel_5.1.jar
org.apache.commons.beanutils_1.8.3.jar
org.apache.commons.logging_1.1.1.jar
org.apache.http.components.httpclient-4.1.2.jar
org.apache.http.components.httpclient-cache-4.1.2.jar
org.apache.http.components.httpcore-4.1.2.jar
org.apache.http.components.httpmime-4.1.2.jar
prefuse.jar
rcs-adflib-rt.jar
rcsrt.jar
regexp.jar
resourcebundle.jar
share.jar
taglib.jar
trinidad-api.jar
trinidad-impl.jar
velocity-dep-1.4.jar
weld-integration.jar
xml-apis-ext.jar
xmlef.jar
xmlparserv2_sans_jaxp_services.jar
xsqlserializers.jar

Dan ini adalah Folder Tomcat/lib standar (25 file):

annotations-api.jar
catalina-ant.jar
catalina-ha.jar
catalina-storeconfig.jar
catalina-tribes.jar
catalina.jar
ecj-4.4.2.jar
el-api.jar
jasper-el.jar
jasper.jar
jsp-api.jar
ojdbc7.jar
servlet-api.jar
tomcat-api.jar
tomcat-coyote.jar
tomcat-dbcp.jar
tomcat-i18n-es.jar
tomcat-i18n-fr.jar
tomcat-i18n-ja.jar
tomcat-jdbc.jar
tomcat-jni.jar
tomcat-util-scan.jar
tomcat-util.jar
tomcat-websocket.jar
websocket-api.jar


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memperkenalkan Easysoft Oracle® Driver ke dalam Lingkungan SOA Anda

  2. Kesalahan SQL ORA-01722:nomor tidak valid

  3. 2 Cara Mengembalikan Baris yang Hanya Mengandung Karakter Non-Alfanumerik di Oracle

  4. Cara Melanjutkan Pemrosesan Kursor Loop Setelah Pengecualian Di Oracle

  5. Cara menanyakan kolom CLOB di Oracle