Java 设置属性';来源';至';server:JSFTut';找不到匹配的属性

Java 设置属性';来源';至';server:JSFTut';找不到匹配的属性,java,eclipse,tomcat,Java,Eclipse,Tomcat,在控制台上运行演示JSF应用程序时,出现以下错误 [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFTut' did not find a matching property. 这不是一个错误。这是一个警告。差别相当大。这个特别的警告基本上意味着Tomcat的server.xml中的元素包含一个未知属性source

在控制台上运行演示JSF应用程序时,出现以下错误

[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFTut' did not find a matching property.

这不是一个错误。这是一个警告。差别相当大。这个特别的警告基本上意味着Tomcat的
server.xml
中的
元素包含一个未知属性
source
,Tomcat不知道如何处理这个属性,因此将忽略它

Eclipse WTP向Tomcat的
server.xml
中与项目相关的
元素添加一个自定义属性
source
,该属性标识上下文的源(工作区中部署到特定服务器的实际项目)。通过这种方式,Eclipse可以将部署的webapplication与工作区中的项目关联起来。自Tomcat版本6.0.16以来,
server.XML
中任何未指定的XML标记和属性都将在Tomcat启动期间产生警告,即使
server.XML
中存在警告


别理它。您的web项目很好。它应该运行良好。此问题与JSF完全无关。

从服务器视图中删除服务器上的项目。然后在同一台服务器下运行该项目


问题在于@BalusC告诉我们,tomcat的server.xml是在eclipse中配置的。因此,当您执行上述操作时,将重新创建process server.xml。

我想我应该为Tomcat 7.x添加这一点,
不在
server.xml
中,而是在
context.xml
中。删除并重新添加项目似乎对我的类似问题没有帮助,这是一个web.xml问题,我通过检查
context.xml
发现了这个问题,该问题在
部分有以下行:

WEB-INF/WEB.xml

中的解决方案使我更接近我的答案,因为将发布更改为单独的XML确实为我解决了上面报告的错误,但不幸的是,它产生了第二个错误,我仍在调查中


警告:[SetContextPropertiesRule]{Context}将属性“source”设置为“org.eclipse.jst.jee.server:myproject”未找到匹配的属性。

关于设置logging.properties值

org.apache.tomcat.util.digester.digester.level=严重

。。。如果您在eclipse中运行嵌入式tomcat服务器,默认情况下使用的
logging.properties
文件是位于
%JAVA\u HOME%/jre/lib/logging.properties的JDK默认文件

如果您想使用不同的logging.properties文件(例如,在tomcat服务器的
conf
目录中),则需要通过
java.util.logging.config.file
系统属性设置。e、 g.要使用文件
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文件中限制哪个记录器(根据)

我遇到了类似的问题。解决此问题的步骤

  • 从服务器中删除项目
  • 为整个项目进行清洁和建造
  • 删除服务器
  • 使用运行方式部署和运行项目

  • 希望这对您也有用。

    请检查是否有任何jar文件丢失,特别是jar文件可能已被视为本地文件,因此请将其放入lib文件夹,然后创建WAR文件更新至最新版本 因为,这在Tomcat的开发版本中是固定的。现在发布的版本有9.0.13、8.5.35和7.0.92

    从9.0.13开始:

    忽略StandardContext提供的上下文元素上名为source的属性。这是为了抑制由Eclipse提供的Eclipse/Tomcat集成生成的警告。基于mdfst13的补丁。(马克)

    和变更日志中有类似的条目

    此更改的效果是在server.xml或Context.xml中的
    Context
    元素上声明
    source
    属性时禁止显示警告。由于Eclipse在这两个地方放置了这样一个属性,因此解决了这个特殊问题


    TL;DR:更新到其分支中的最新Tomcat版本,例如9.0.13或更新版本

    这是针对此警告的简单解决方案:

    您可以更改EclipseTomcat服务器配置。打开 服务器视图,双击服务器打开服务器配置。 有一个服务器选项选项卡。在该选项卡内,单击复选框以 激活“发布模块内容以分离XML文件”


    最后,重新启动服务器,消息必须消失。

    您可以将其添加到logging.properties中,以在读取配置时抑制警告:org.apache.tomcat.util.digester.digester.level=severe我注意到,如果打开server.xml文件,它不会将上下文添加回。我只是停止了服务器并关闭了server.xml文件,然后重新添加了项目。我想我会提到它以防其他人遇到同样的问题。线程实际上提供了一个有效的答案。它消除了警告。:)(与log4j.properties-1.2.17相同):
    log4j.logger.org.apache.tomcat.util.digester.digester=ERROR
    对于我来说,警告是错误的指示-我的项目没有部署。Tomcat的server.xml中的上下文属性是d之后的提示