Включая DB2JCC4 в Tomcat 7 - PullRequest
       2

Включая DB2JCC4 в Tomcat 7

9 голосов
/ 31 декабря 2011

Я только что обновился до Tomcat v7. Я пытаюсь включить в библиотеку банку, которая нужна моим классам Java. Это DB2JCC4.JAR. Я использую это для доступа к DB2 на мэйнфрейме IBM. Раньше это нормально работало в Tomcat6.

Когда я включаю банку, я получаю такие ошибки, как:


    Deploying web application directory C:\tomcat7\webapps\dbs
    org.apache.catalina.core.ContainerBase addChildInternal
    SEVERE: ContainerBase.addChild: start: 
    org.apache.catalina.LifecycleException: Failed to start component
    .....

    caused by: org.apache.tomcat.util.bcel.classfile.ClassFormatException: null is 
    not a Java .class file....

Я пытался поместить URIEncoding в Server.XML, но это не помогает.

Когда я вынимаю файл jar DB2JCC4, я не получаю ошибок при запуске. Конечно, тогда я не могу получить доступ к DB2! Я ценю любые предложения.

Ответы [ 2 ]

14 голосов
/ 16 января 2012

Попробуйте изменить $TOMCAT_HOME/conf/catalina.properties и добавьте DB2JCC4.jar к tomcat.util.scan.DefaultJarScanner.jarsToSkip значению свойства.Он используется для отключения сканирования пути к классам (которое используется в реализациях спецификаций JavaEE 6).

0 голосов
/ 29 июля 2015

Если вам интересно, почему проблема возникает в первую очередь, а не просто как обходной путь, вы можете найти ответ здесь .IBM признала проблему и предоставила варианты ее устранения.По сути, некоторые файлы классов повреждены.

...