回答:
これはエラーではありません。これは警告です。違いはかなり大きいです。この特定の警告は基本的に<Context>
、Tomcatの要素にserver.xml
不明な属性が含まれてsource
おり、Tomcatがこの属性の処理方法を認識していないために無視することを意味します。
Eclipse WTPは、コンテキストのソース(特定のサーバーにデプロイされているワークスペース内の実際のプロジェクト)を識別するカスタム属性source
をTomcatのプロジェクト関連<Context>
要素に追加しserver.xml
ます。このようにして、EclipseはデプロイされたWebアプリケーションをワークスペース内のプロジェクトと関連付けることができます。Tomcatバージョン6.0.16以降、にDTDもXSDもないserver.xml
場合でも、で指定されていないXMLタグおよび属性があると、Tomcatの起動時に警告が生成されます。server.xml
無視してください。Webプロジェクトは正常です。それはうまく動くはずです。この問題は、JSFとはまったく関係ありません。
log4j.logger.org.apache.tomcat.util.digester.Digester = ERROR
サーバービューからサーバーからプロジェクトを削除します。次に、同じサーバーでプロジェクトを実行します。
問題は、@ BalusCがEclipseで構成されているTomcatのserver.xmlの破損を通知したことです。したがって、上記のプロセスを実行すると、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へのパブリッシングの変更でエラーが解決されました。上記で報告されましたが、残念ながら、まだ調査中の2つ目のエラーが発生しました。
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ファイル(たとえば、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 changelogから:
StandardContextによって提供されるContext要素のsourceという名前の属性を無視します。これは、Eclipseによって提供されるEclipse / Tomcat統合によって生成される警告を抑制するためです。mdfst13によるパッチに基づいています。(市場)
7.0.92と8.5.35の変更ログにも同様のエントリがあります。
この変更の効果は、server.xmlまたはcontext.xmlのいずれかの要素でsource
属性が宣言されている場合の警告を抑制Context
することです。これらはEclipseがそのような属性を配置する2つの場所であるため、この特定の問題を修正します。
TL; DR:ブランチの最新のTomcatバージョンに更新します(例:9.0.13以降)。
これはこの警告の簡単な解決策です:
Eclipse Tomcatサーバー構成を変更できます。サーバービューを開き、サーバーをダブルクリックしてサーバー構成を開きます。サーバーの[オプション]タブがあります。そのタブ内でチェックボックスをクリックして、「モジュールのコンテンツを個別のXMLファイルに公開する」をアクティブにします。
最後に、サーバーを再起動すると、メッセージが消えます。