Встановлення властивості '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 для Windows немаєserver.xml .

Просто ігноруйте це. Ваш веб-проект прекрасний. Це повинно працювати нормально. Це питання абсолютно не пов'язане з JSF.


5
Ви можете додати це до свого logging.properties, щоб придушити попередження під час читання конфігурації: org.apache.tomcat.util.digester.Digester.level = SEVERE
Christian

Я помітив, що якщо у вас відкритий файл server.xml, він не додає контекст назад. Я просто зупинив сервер і закрив файл server.xml, після чого знову додав проект. Я думав, що я б це зазначив, якщо хтось інший зіткнеться з тією ж проблемою.
Майкл

Цей потік насправді пропонує робочу відповідь. Це позбавляється від попередження. :)
срібло

(те саме для log4j.properties - 1.2.17):log4j.logger.org.apache.tomcat.util.digester.Digester = ERROR
boly38

Для мене попередження було вказівкою на помилку - мій проект не розгортався. Контекстні атрибути в сервері Tomcat's server.xml були підказкою - після видалення атрибутів, генерованих затемненням та повторного розгортання з Eclipse, я зробив ще крок далі - тепер Eclipse показав мені добрий старий спливаюче вікно з реальною помилкою.
Гервіан

12

Видаліть проект із сервера з представлення сервера. Потім запустіть проект на тому ж сервері.

Проблема полягає в тому, як @BalusC повідомив про пошкодження server.xml tomcat, який налаштований у затемнення. Отже, коли ви будете робити вищевказаний процес, сервер.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. Використовуйте Run як для розгортання та запуску проекту

Сподіваємось, це працює і для вас.


3

Що стосується встановлення значення logging.properties

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

... якщо ви запускаєте вбудований сервер tomcat в затемненні, 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, додайте це до списку аргументів VM:

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

(двічі клацніть піктограму сервера, натисніть «Відкрити конфігурацію запуску», виберіть вкладку «Аргументи», а потім введіть це у текстове поле «Аргументи VM»)

Вам також може бути корисно додати аргумент VM

-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 :

Ігноруйте атрибут з ім'ям джерела на елементах контексту, наданих StandardContext. Це для придушення попереджень, генерованих інтеграцією Eclipse / Tomcat, що надається Eclipse. На основі патчу від mdfst13. (марк)

У журналах змін 7.0.92 та 8.5.35 є подібні записи .

Ефект цієї зміни полягає в придушенні попередження, коли sourceатрибут оголошено Contextелементу на сервері.xml або context.xml. Оскільки це два місця, за якими Eclipse ставить такий атрибут, це вирішує цю проблему.

TL; DR : оновлення до останньої версії Tomcat у своїй галузі, наприклад, 9.0.13 або новішої.


0

Це просте рішення для цього попередження:

Ви можете змінити конфігурацію сервера tomcat eclipse. Відкрийте подання сервера, двічі клацніть на вашому сервері, щоб відкрити конфігурацію сервера. Існує вкладка параметрів сервера . всередині цієї вкладки натисніть прапорець, щоб активувати " Опублікувати вміст модуля для розділення XML-файлів ".

Нарешті, перезавантажте сервер, повідомлення повинно зникнути.


-1

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.