2016-11-30 15 views
0

Я могу установить функцию javaMail-1.5 с помощью следующей команды «installUtility install javaMail-1.5» на моем запущенном сервере свободы и в соответствии с подсказками.Невозможно установить функцию javaMail-1.5 во свободном доступе через server.xml

Однако согласно документации свободы, я должен быть в состоянии установить его, добавив следующие строки в мой server.xml конфигурации в теге FeatureManager: JavaMail-1,5

Это не работает, и я вижу следующее ошибка в журналах запуска сервера: [11/30/16 1: 22: 43: 342 UTC] 00000021 id = com.ibm.ws.kernel.feature.internal.FeatureManager E CWWKF0042E: определение функции не может быть найдено для javamail-1.5. Попробуйте запустить команду bin/installUtility install javamail-1.5, чтобы установить эту функцию. Кроме того, вы можете запустить команду, bin/installUtility install authentication, чтобы установить все функции, на которые ссылается эта конфигурация.

Мои данные сервера, как показано ниже:

продукт = WebSphere Application Server 16.0.0.3 (WLP-1.0.14.cl160320160831-1555)

java.version = 1.8.0 java.runtime = Java (TM) SE Runtime Environment (pxa6480sr3fp20-20161019_02 (SR3 FP20))

Кто-нибудь есть идеи, почему это не работает?

+0

Я думаю, что вы вводите в заблуждение «установку функции» и «включение функции». Запуск 'installUtility' установит эту функцию в вашей системе. Помещение ' javaMail-1.5' внутри тегов '' позволяет использовать эту функцию для сервера. Функция должна быть установлена ​​до того, как ее можно будет активировать на любом сервере. Ошибка, которую вы видите, в основном говорит: «Вы пытаетесь включить эту функцию, но мы не можем, потому что вы еще не установили эту функцию». –

ответ

1

Если функция не установлена, вам необходимо будет использовать installUtility для ее установки, как вы упомянули.

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

Задание его в файле server.xml будет настраивать среду выполнения для ее использования. Но он не будет автоматически устанавливать эту функцию для вас. Server.xml - это конфигурация времени выполнения сервера.

Теперь вы можете попробовать installUtility install <yourServer> или installUtility install <pathToServerXml>, который будет иметь installUtility, чтобы проверить ваш сервер или server.xml и установить любые функции, которые еще не установлены в системе.

+0

Спасибо за ваш ответ, я запускаю Liberty в докере, и поэтому я пытаюсь установить его как часть запуска, однако мне удалось изменить мои скрипты, чтобы установить эту функцию раньше времени. Теперь я сталкиваюсь с проблемой, когда диспетчер функций не завершает установку функций после того, как сервер уже попытался загрузить мое приложение osgi, которое также определено в файле server.xml как: Есть ли способ заказать команды на сервере.xml, чтобы диспетчер функций заканчивался перед вызовом для запуска приложения? – Adam

+0

можете ли вы обновить свой исходный вопрос с помощью скрипта, который вы пытаетесь использовать? Команда installUtility не вернется, пока не завершится установка функции. Если вы выполняете команды последовательно в скрипте, он должен работать. –

0

Возможно, вы сбиваете с толку documentation for the featureManager command, который был заменен на installUtility command. Добавление функции в элемент featureManager вашего сервера.xml не устанавливает эту функцию, она позволяет ее использовать. Чтобы включить функцию в файле server.xml, вы должны сначала установить ее, используя один из описанных методов here.

+0

Спасибо за ваш ответ, я запускаю Liberty в докере, и поэтому я пытаюсь установить его как часть запуска, однако мне удалось изменить мои скрипты, чтобы установить эту функцию раньше времени. Теперь я сталкиваюсь с проблемой, когда диспетчер функций не завершает установку функций после того, как сервер уже попытался загрузить мое приложение osgi, которое также определено в файле server.xml как: Есть ли способ заказать команды в файле server.xml, чтобы диспетчер функций заканчивался перед вызовом для запуска приложения? – Adam

+0

Это должно быть невозможно. Если это произойдет, вы должны поднять PMR. – Alasdair

+0

Как заявила Аласдейр, описанная вами ситуация не может быть возможной. Компонент декларативных услуг Liberty должен всегда предоставлять все функции, необходимые вашим приложениям, перед запуском вашего приложения. Но вы сказали: «Менеджер функций не завершает установку функций после того, как сервер уже попытался загрузить ...» Помните, что диспетчер функций не устанавливает функции, он их позволяет, и, как вы сказали, вы должны установить эту функцию перед запуском сервера, на котором вы настроили featureManager, использовать его. Можете ли вы опубликовать несколько журналов, показывающих, почему вы думаете, что это происходит? –