草庐IT

java - 错误在 tomcat 上部署期间找不到键 log4j.appender.error 的值

如果我右键单击服务器并在服务器上运行,我的代码工作正常,但是当我尝试将它部署到tomcat上并尝试运行它时,出现以下错误log4j.properties文件:log4j.logger.Controller=INFO,error,stdoutlog4j.logger.Client=INFO,error,stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target=System.outlog4j.appender.stdout.layout=org.apache.log4j.

java - 如何对在执行程序服务中运行的代码片段进行单元测试,而不是等待 Thread.sleep(time)

如何对在执行程序服务中运行的代码进行单元测试?在我的情况下,publicvoidtest(){RunnableR=newRunnable(){@Overridepublicvoidrun(){executeTask1();executeTask2();}};ExecutorServiceexecutorService=Executors.newSingleThreadExecutor();executorService.submit(R);}当我进行单元测试时,我想对方法执行进行一些验证。我在执行程序服务中执行它,因为它进行一些网络操作。在我的单元测试中,我必须等到此方法执行完毕。有没

036-安全开发-JavaEE应用&第三方组件&Log4j日志&FastJson序列化&JNDI注入

036-安全开发-JavaEE应用&第三方组件&Log4j日志&FastJson序列化&JNDI注入#知识点:1、JavaEE-组件安全-Log4j2、JavaEE-组件安全-Fastjson3、JavaEE-基本了解-JNDI-API演示案例:➢Java-三方组件-Log4J&JNDI➢Java-三方组件-FastJson&反射#Java-项目管理工具-配置Jar仓库:https://mvnrepository.com/Maven配置:https://www.jb51.net/article/259780.htmJNDI相关概念:1、JNDI是一个接口,在这个接口下会有多种目录系统服务的实现

java - 我在哪里可以通过编程找到 log4j 日志文件的存储位置?

log4j.properties文件中使用了相对路径。如何以编程方式找到存储日志的绝对路径? 最佳答案 发件人:http://www.gunith.com/2010/11/how-to-get-the-file-path-of-a-log4j-log-file/假设log4j.properties文件如下,log4j.logger.migrationlog=INFO,migrationlog4j.appender.migration=org.apache.log4j.RollingFileAppenderlog4j.appender

java - 带微秒的 log4j ConversionPattern 时间戳

我想在使用log4j生成的日志文件的每个条目的时间戳中添加微秒,这可能吗?我在官方文档中搜索过,但没有提到毫秒以下的单位。现在我有一个像下面这样的转换模式:%d{dd/MM/yyyyHH\:mm\:ss,SSS}%-5p[%t]-%m%n在日期转换模式(%d)中,我想在毫秒值(SSS)之后添加微秒,有没有办法去做吧? 最佳答案 从Java9和log4j2.11.0开始,即使是纳秒级也可以获取时间戳。以下是特殊的预定义模式,允许获取日期时间或微秒或纳秒时间:模式:%d{ABSOLUTE_MICROS}输出示例:14:34:02,123

java - 带有 log4j 的 Jersey LoggingFilter

我有一个用jersey开发的休息服务,我有一个ContainerRequestFilters用于打印请求,如下所示:com.sun.jersey.spi.container.ContainerRequestFilterscom.sun.jersey.api.container.filter.LoggingFilter并且我在使用log4j的post方法中有记录器。但是LoggingFilter打印的日志与log4j不同。LogginFilter有什么方法可以使用log4j的配置吗?我在log4j.xml文件中试过这个:但它不起作用:( 最佳答案

java - DateTimeFormatter 接受多个日期并转换为一个(java.time 库)

我正在尝试编写一个DateTimeFormatter,它允许我接受多种不同的String格式,然后将String格式转换为特定类型。由于项目的范围和已经存在的代码,我不能使用不同类型的格式化程序。例如,我想接受MM/dd/yyyy以及yyyy-MM-dd'T'HH:mm:ss但是当我打印时我只想打印成MM/dd/yyyy格式,并在我调用LocalDate.format(formatter);时使用该格式有人可以建议有关如何使用java.time.format.*;执行此操作的想法这是我在org.joda中的实现方式://MM/dd/yyyyformatDateTimeFormatter

java - log4j2 错误 StatusLogger 无法识别的转换说明符

当我在intellijIdea中运行main方法时,我的项目中有log4j2,它正确地打印日志。当我使用maven-shade-plugin包项目到jar文件,并将jar作为独立应用程序运行时,它显示错误:java-cppackage.jarcom.xxx.TestMain控制台输出ERRORStatusLoggerUnrecognizedformatspecifier[d]ERRORStatusLoggerUnrecognizedconversionspecifier[d]startingatposition16inconversionpattern.ERRORStatusLogge

java - Eclipse 中的 Tomcat : It runs but time out during startup anyway

我正在使用Tomcat7在Eclipse(Helios)中运行一个JavaWeb应用程序。服务器成功启动(指示持续时间)但是Eclipse的进度条仍然旋转,表明Tomcat正在启动。最终达到超时并抛出错误。我相信Tomcat很好,因为我已经获取了它使用的命令并在shell中手动运行了它。Tomcat运行良好,我能够在预期的URL上访问网络应用程序。我也可以在它启动之后和超时发生之前点击它。我重新安装了Eclipse,干净地运行了它,删除/重新创建了服务器。没有任何效果。有人有任何线索吗? 最佳答案 我有这个问题,Eclipse似乎在

java - 如何使 log4j error() 调用在 jUnit 测试中抛出异常?

我有一个正在使用JUnit(Junit3和4风格的混合)测试的Java项目,其中被测试的类可能会记录log4j错误。如果记录了这样的错误,我想让单元测试失败。是否有一种通用的方法来配置log4j或单元测试基础结构,以在被测代码中对log4jerror()方法进行任何调用都会抛出运行时异常,从而导致测试失败?AOP可能是一种方式,但我也对其他可能性感兴趣。此处的目的是清除代码中错误使用log4jerror()的地方。也就是说,当错误被记录但没有发生异常或错误处理时,它要么不是真正的错误,要么是并且应该被引发。例如:publicclassMyTestextendsTestCase{publ