콘솔에서 데모 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는 컨텍스트의 소스 (특정 서버에 배치 된 작업 공간의 실제 프로젝트)를 식별하는 Tomcat source
의 프로젝트 관련 <Context>
요소에 사용자 정의 속성 을 추가합니다 server.xml
. 이러한 방식으로 Eclipse는 배치 된 웹 애플리케이션을 작업 공간의 프로젝트와 연관시킬 수 있습니다. 톰캣 버전 6.0.16 이후의 모든 지정되지 않은 XML 태그와 속성은 server.xml
없다하더라도, Tomcat의 시작하는 동안 경고를 생성합니다 더 DTD 나 XSD 에 대한 server.xml
.
그냥 무시하세요. 웹 프로젝트는 괜찮습니다. 잘 실행되어야합니다. 이 문제는 JSF와는 전혀 관련이 없습니다.
답변
서버보기에서 서버의 프로젝트를 제거하십시오. 그런 다음 동일한 서버에서 프로젝트를 실행하십시오.
문제는 @BalusC가 일식에 구성된 tomcat의 server.xml이 손상되었다고 말한 것입니다. 따라서 위의 프로세스를 수행하면 server.xml이 다시 생성됩니다.
답변
나는 톰캣 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
… eclipse에서 임베디드 tomcat 서버를 실행하는 경우 logging.properties
기본적으로 사용되는 파일은 JDK 기본값입니다.%JAVA_HOME%/jre/lib/logging.properties
다른 logging.properties 파일 (예 : tomcat 서버의 conf
디렉토리)을 사용하려면 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 )
답변
최신 릴리스로 업데이트
이 커밋 이후 Tomcat의 개발 버전에서 수정되었습니다. 그리고 이제 릴리스 버전 9.0.13, 8.5.35 및 7.0.92에서.
9.0.13 변경 로그에서 :
StandardContext에서 제공하는 Context 요소의 source라는 속성은 무시하십시오. 이는 Eclipse에서 제공하는 Eclipse / Tomcat 통합에 의해 생성 된 경고를 억제하기위한 것입니다. mdfst13의 패치를 기반으로합니다. (마르크)
7.0.92 및 8.5.35 변경 로그 에 유사한 항목이 있습니다 .
이 변경의 효과는 source
속성이 Context
server.xml 또는 context.xml 의 요소에 선언 될 때 경고를 표시하지 않는 것입니다 . 이클립스가 그러한 속성을 두는 두 장소이기 때문에이 특정 문제를 해결합니다.
TL; DR : 분기에서 최신 Tomcat 버전 (예 : 9.0.13 이상)으로 업데이트합니다.
답변
이 경고에 대한 간단한 해결책입니다.
Eclipse Tomcat 서버 구성을 변경할 수 있습니다. 서버보기를 열고 서버를 두 번 클릭하여 서버 구성을 엽니 다. 이 서버 옵션 탭. 해당 탭 내에서 확인란을 클릭하여 ” 별도의 XML 파일에 모듈 내용 게시 “를 활성화 합니다 .
마지막으로 서버를 다시 시작하면 메시지가 사라져야합니다.