Я получаю следующую ошибку, когда запускаю демонстрационное приложение JSF на консоли
[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFTut' did not find a matching property.
Я получаю следующую ошибку, когда запускаю демонстрационное приложение JSF на консоли
[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFTut' did not find a matching property.
Ответы:
Это не ошибка. Это предупреждение . Разница довольно огромная. Это конкретное предупреждение в основном означает, что <Context>
элемент в Tomcat server.xml
содержит неизвестный атрибут source
и что Tomcat не знает, что делать с этим атрибутом, и поэтому проигнорирует его.
Eclipse WTP добавляет настраиваемый атрибут source
к <Context>
элементу, связанному с проектом, в server.xml
Tomcat, который определяет источник контекста (фактический проект в рабочей области, развернутый на конкретном сервере). Таким образом Eclipse может соотнести развернутое веб-приложение с проектом в рабочей области. Начиная с версии Tomcat 6.0.16, любые неуказанные теги и атрибуты XML в файле server.xml
будут выдавать предупреждение во время запуска Tomcat, даже если нет ни DTD, ни XSD для server.xml
.
Просто не обращай на это внимания. Ваш веб-проект в порядке. Он должен работать нормально. Эта проблема совершенно не связана с JSF.
log4j.logger.org.apache.tomcat.util.digester.Digester = ERROR
Удалите проект с сервера из представления сервера. Затем запустите проект на том же сервере.
Проблема в том, что @BalusC сказал, что коррумпирован server.xml tomcat, который настроен в eclipse. Поэтому, когда вы сделаете вышеуказанный процесс, server.xml будет воссоздан.
Думал добавить, что для 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.
Я столкнулся с аналогичной проблемой. Шаги для решения этой проблемы.
Надеюсь, это сработает и для вас.
Что касается установки значения 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 )
Начиная с этой фиксации , это исправлено в разрабатываемой версии 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 или новее.
Это простое решение для этого предупреждения:
Вы можете изменить конфигурацию сервера Eclipse Tomcat. Откройте представление сервера, дважды щелкните сервер, чтобы открыть конфигурацию сервера. Есть вкладка опций сервера . внутри этой вкладки установите флажок, чтобы активировать « Публиковать содержимое модуля в отдельные файлы XML ».
Наконец, перезапустите сервер, сообщение должно исчезнуть.
Пожалуйста, проверьте, не были ли какие-либо файлы jar, в частности, jar, не были приняты как локальные, поэтому поместите в папку lib, затем создайте файл WAR