2016-12-05 19 views
0

В папке ORACLE_HOME/oracle_common есть некоторые библиотеки, которые создают проблемы с нашим развертыванием (EAR). (в частности, файл jps-ee.jar).Где сервер Weblogic определяет, чтобы искать в папке ORACLE_HOME/oracle_common для dependecies?

Как перезаписать мой веб-сервер (а не через web.xml), чтобы не использовать доступные библиотеки (особенно jps-ee.jar) для моего развертывания EAR.

Нам нужно отключить его с конца веб-журнала, чтобы мы могли проверить это, это jps-ee.jar является основной причиной нашей проблемы.

Итак, как мы можем это сделать с конца веб-логики? И документы или шаги пошаговое руководство?

+0

Было бы проще отладить развертывание. WebLogic широко использует записи пути класса манифеста в своей реализации, поэтому вы не можете просто удалить/скрыть их. –

+0

На самом деле, между вашим [другим вопросом] (http://stackoverflow.com/questions/40933709/which-jar-on-weblogic-server-other-resources-could-possible-have-class-oracle) и документацией на [Вручную настройка приложений Java EE для использования OPSS] (http://docs.oracle.com/cd/E21764_01/core.1111/e10043/devmancfg.htm#JISEC3953) Я бы назвал ваш контракт на поддержку WebLogic. –

ответ

0

Найдено решение этой проблемы, WebLogic настроен на использование oralce_common использования setDomainEnv.sh (или setDomainEnv.cmd на основе ОС)

/% ORACLE_HOME%/Промежуточный/user_projects/домены /% WEBLOGIC_DOMAIN%/бен/setDomainEnv.sh

Этот файл определяет путь к классу, который будет использоваться для запуска домена. Этот файл вызывается скриптом startWeblogic для настройки параметров, связанных с доменом. Что загружает пути класса и передает его в JVM при запуске сервера weblogic.

0

Если вы хотите, чтобы веб-сервер сначала начал искать некоторые пакеты зависимостей из вашего файла ear/war, тогда вы должны использовать application.xml или weblogic.xml в зависимости от того, является ли ваш архив ухом или войной.

Вот пример;


application.xml

<?xml version = '1.0' encoding = 'UTF-8'?> 
<weblogic-application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-application http://www.bea.com/ns/weblogic/weblogic-application/1.0/weblogic-application.xsd" xmlns="http://www.bea.com/ns/weblogic/weblogic-application"> 
<prefer-application-packages> 
    <package-name>oracle.toplink.*</package-name> 
    <package-name>oracle.sql.*</package-name> 
    <package-name>oracle.jdbc.*</package-name> 
</prefer-application-packages> 


weblogic.xml

<?xml version="1.0" encoding="UTF-8"?> 
<weblogic-web-app> 
    <weblogic-version>12.1.3.0.0</weblogic-version> 
    <context-root>sth</context-root> 
    <container-descriptor> 
    <prefer-web-inf-classes>false</prefer-web-inf-classes> 
    <prefer-application-packages> 
     <package-name>oracle.toplink.*</package-name> 
     <package-name>oracle.sql.*</package-name> 
     <package-name>oracle.jdbc.*</package-name> 
    </prefer-application-packages> 

    <prefer-application-resources> 
    </prefer-application-resources> 
</container-descriptor> 


Предпочтительные приложения-пакеты и предпочтительные ресурсы-приложения - это два инструмента, которые вы можете использовать для этой цели в веб-среде. Weblogic сначала использует эти пакеты в вашем файле архива при поиске класса, а если не найден, то он использует свои встроенные зависимости.

Удачи вам!