Установка для свойства 'source' значения 'org.eclipse.jst.jee.server: JSFTut' не обнаружила подходящего свойства

103

Я получаю следующую ошибку, когда запускаю демонстрационное приложение JSF на консоли

[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFTut' did not find a matching property.
Джитендра
источник

Ответы:

191

Это не ошибка. Это предупреждение . Разница довольно огромная. Это конкретное предупреждение в основном означает, что <Context>элемент в Tomcat server.xmlсодержит неизвестный атрибут sourceи что Tomcat не знает, что делать с этим атрибутом, и поэтому проигнорирует его.

Eclipse WTP добавляет настраиваемый атрибут sourceк <Context>элементу, связанному с проектом, в server.xmlTomcat, который определяет источник контекста (фактический проект в рабочей области, развернутый на конкретном сервере). Таким образом Eclipse может соотнести развернутое веб-приложение с проектом в рабочей области. Начиная с версии Tomcat 6.0.16, любые неуказанные теги и атрибуты XML в файле server.xmlбудут выдавать предупреждение во время запуска Tomcat, даже если нет ни DTD, ни XSD для server.xml.

Просто не обращай на это внимания. Ваш веб-проект в порядке. Он должен работать нормально. Эта проблема совершенно не связана с JSF.

BalusC
источник
5
Вы можете добавить это в свой logging.properties, чтобы подавить предупреждения при чтении вашей конфигурации: org.apache.tomcat.util.digester.Digester.level = SEVERE
Кристиан,
Я заметил, что если у вас открыт файл server.xml, он не добавляет контекст обратно. Я просто остановил сервер и закрыл файл server.xml, а затем повторно добавил проект. Думал, я бы упомянул об этом, если кто-то еще столкнется с той же проблемой.
Michael
Эта ветка на самом деле предлагает рабочий ответ. Это избавляет от предупреждения. :)
серебро
(то же для log4j.properties - 1.2.17):log4j.logger.org.apache.tomcat.util.digester.Digester = ERROR
boly38
Для меня предупреждение было признаком ошибки - мой проект не был развернут. Атрибуты контекста в Tomcat server.xml были подсказкой - после удаления атрибутов, созданных eclipse, и повторного развертывания из Eclipse я сделал еще один шаг вперед - теперь Eclipse показал мне старое доброе всплывающее окно с реальной ошибкой.
Hervian
12

Удалите проект с сервера из представления сервера. Затем запустите проект на том же сервере.

Проблема в том, что @BalusC сказал, что коррумпирован server.xml tomcat, который настроен в eclipse. Поэтому, когда вы сделаете вышеуказанный процесс, server.xml будет воссоздан.

Арвиндвилл
источник
3
Мой экземпляр tomcat в один прекрасный день запустился довольно быстро (необычно), и, глядя на журналы, я заметил то же сообщение, что и на плакате ... Я попытался очистить и перезапустить сервер, но безрезультатно. Удаление, а затем повторное добавление проекта на сервер помогло, как рекомендовал arvindwill.
armyofda12mnkeys
4

Думал добавить, что для Tomcat 7.x <Context>не в server.xml, а в context.xml. Удаление и повторное добавление проекта, похоже, не помогло моей аналогичной проблеме, которая была проблемой web.xml, о которой я узнал, проверив context.xmlстроку, в которой была эта строка в <Context>разделе:

<WatchedResource>WEB-INF/web.xml</WatchedResource>

Решение в разделе ПРЕДУПРЕЖДЕНИЕ: установка для свойства 'source' значения 'org.eclipse.jst.jee.server: appname' не обнаружила подходящего свойства, приблизила меня к моему ответу, поскольку изменение публикации в отдельный XML- код действительно устранило ошибку сообщил выше для меня, но, к сожалению, это вызвало вторую ошибку, которую я все еще исследую.

WARNING: [SetContextPropertiesRule]{Context} Setting property 'source' to 'org.eclipse.jst.jee.server:myproject' did not find a matching property.

Маркус
источник
4

Я столкнулся с аналогичной проблемой. Шаги для решения этой проблемы.

  1. Удалить проект с сервера
  2. Даю чистую и стройную для всего проекта
  3. Удалить сервер
  4. Используйте Запуск от имени для развертывания и запуска проекта

Надеюсь, это сработает и для вас.

Шива Камешвара Рао Мунипалле
источник
3

Что касается установки значения logging.properties

org.apache.tomcat.util.digester.Digester.level = SEVERE

... если вы используете встроенный сервер tomcat в eclipse, logging.propertiesфайл, используемый по умолчанию, является файлом JDK по умолчанию в%JAVA_HOME%/jre/lib/logging.properties

Если вы хотите использовать другой файл logging.properties (например, в confкаталоге сервера tomcat ), это необходимо установить через java.util.logging.config.fileсистемное свойство. например, чтобы использовать свойства ведения журнала, определенные в файле c:\java\apache-tomcat-7.0.54\conf\eclipse-logging.properties, добавьте это в список аргументов виртуальной машины:

-Djava.util.logging.config.file="c:\java\apache-tomcat-7.0.54\conf\eclipse-logging.properties"

(дважды щелкните значок сервера, нажмите «Открыть конфигурацию запуска», выберите вкладку «Аргументы», затем введите это в текстовое поле «Аргументы виртуальной машины»)

Вы также можете найти полезным добавить аргумент виртуальной машины

-Djava.util.logging.SimpleFormatter.format="%1$tc %4$s %3$s %5$s%n"

а также, который затем будет включать имя исходного регистратора в выходные данные, что должно упростить определение того, какой регистратор следует регулировать в файле logging.properties (согласно http://docs.oracle.com/javase/7/docs /api/java/util/logging/SimpleFormatter.html )

Грег Нокс
источник
1

Обновите до последней версии

Начиная с этой фиксации , это исправлено в разрабатываемой версии Tomcat. И вот уже вышли версии 9.0.13, 8.5.35 и 7.0.92.

Из журнала изменений 9.0.13 :

Игнорировать атрибут с именем source в элементах контекста, предоставляемых StandardContext. Это сделано для подавления предупреждений, генерируемых интеграцией Eclipse / Tomcat, предоставляемой Eclipse. На основе патча от mdfst13. (Маркт)

Есть аналогичные записи в 7.0.92 и 8.5.35 списке изменений.

Результатом этого изменения является подавление предупреждения, когда sourceатрибут объявляется для Contextэлемента в server.xml или context.xml. Поскольку именно в этих двух местах Eclipse помещает такой атрибут, это устраняет эту конкретную проблему.

TL; DR : обновите Tomcat до последней версии в своей ветке, например 9.0.13 или новее.

mdfst13
источник
0

Это простое решение для этого предупреждения:

Вы можете изменить конфигурацию сервера Eclipse Tomcat. Откройте представление сервера, дважды щелкните сервер, чтобы открыть конфигурацию сервера. Есть вкладка опций сервера . внутри этой вкладки установите флажок, чтобы активировать « Публиковать содержимое модуля в отдельные файлы XML ».

Наконец, перезапустите сервер, сообщение должно исчезнуть.

MangduYogii
источник
-1

Пожалуйста, проверьте, не были ли какие-либо файлы jar, в частности, jar, не были приняты как локальные, поэтому поместите в папку lib, затем создайте файл WAR

Иссак Баладжи
источник