- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从事 url 缩短器项目。为了测试 url 的验证,我使用 common-validator 版本 1.4.0。我使用 jersey,我的网络服务器是 tomcat。将 common-validator 升级到版本 1.6 后,出现以下异常。有人可以帮助我吗?
HTTP Status 500 – Internal Server Error</h1><hr class="line" /><p><b>Type</b> Exception Report</p><p><b>Message</b> Servlet.init() for servlet [jersey-serlvet] threw exception</p><p><b>Description</b> The server encountered an unexpected condition that prevented it from fulfilling the request.</p><p><b>Exception</b></p><pre>javax.servlet.ServletException: Servlet.init() for servlet [jersey-serlvet] threw exception
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:748)
</pre><p><b>Root Cause</b></p><pre>java.lang.NoClassDefFoundError: Lorg/apache/commons/validator/routines/UrlValidator;
java.lang.Class.getDeclaredFields0(Native Method)
java.lang.Class.privateGetDeclaredFields(Class.java:2583)
java.lang.Class.getDeclaredFields(Class.java:1916)
org.glassfish.jersey.internal.util.ReflectionHelper$4.run(ReflectionHelper.java:311)
org.glassfish.jersey.internal.util.ReflectionHelper$4.run(ReflectionHelper.java:308)
java.security.AccessController.doPrivileged(Native Method)
org.glassfish.jersey.server.model.IntrospectionModeller.checkResourceClassFields(IntrospectionModeller.java:210)
org.glassfish.jersey.server.model.IntrospectionModeller.doCreateResourceBuilder(IntrospectionModeller.java:137)
org.glassfish.jersey.server.model.IntrospectionModeller.access$000(IntrospectionModeller.java:80)
org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:111)
org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:108)
org.glassfish.jersey.internal.Errors.process(Errors.java:315)
org.glassfish.jersey.internal.Errors.process(Errors.java:297)
org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
org.glassfish.jersey.server.model.IntrospectionModeller.createResourceBuilder(IntrospectionModeller.java:108)
org.glassfish.jersey.server.model.Resource.from(Resource.java:776)
org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:464)
org.glassfish.jersey.server.ApplicationHandler.access$500(ApplicationHandler.java:183)
org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:349)
org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:346)
org.glassfish.jersey.internal.Errors.process(Errors.java:315)
org.glassfish.jersey.internal.Errors.process(Errors.java:297)
org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:346)
org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:339)
org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:170)
org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:362)
javax.servlet.GenericServlet.init(GenericServlet.java:158)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:748)
</pre><p><b>Root Cause</b></p><pre>java.lang.ClassNotFoundException: org.apache.commons.validator.routines.UrlValidator
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1308)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1136)
java.lang.Class.getDeclaredFields0(Native Method)
java.lang.Class.privateGetDeclaredFields(Class.java:2583)
java.lang.Class.getDeclaredFields(Class.java:1916)
org.glassfish.jersey.internal.util.ReflectionHelper$4.run(ReflectionHelper.java:311)
org.glassfish.jersey.internal.util.ReflectionHelper$4.run(ReflectionHelper.java:308)
java.security.AccessController.doPrivileged(Native Method)
org.glassfish.jersey.server.model.IntrospectionModeller.checkResourceClassFields(IntrospectionModeller.java:210)
org.glassfish.jersey.server.model.IntrospectionModeller.doCreateResourceBuilder(IntrospectionModeller.java:137)
org.glassfish.jersey.server.model.IntrospectionModeller.access$000(IntrospectionModeller.java:80)
org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:111)
org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:108)
org.glassfish.jersey.internal.Errors.process(Errors.java:315)
org.glassfish.jersey.internal.Errors.process(Errors.java:297)
org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
org.glassfish.jersey.server.model.IntrospectionModeller.createResourceBuilder(IntrospectionModeller.java:108)
org.glassfish.jersey.server.model.Resource.from(Resource.java:776)
org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:464)
org.glassfish.jersey.server.ApplicationHandler.access$500(ApplicationHandler.java:183)
org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:349)
org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:346)
org.glassfish.jersey.internal.Errors.process(Errors.java:315)
org.glassfish.jersey.internal.Errors.process(Errors.java:297)
org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:346)
org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:339)
org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:170)
org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:362)
javax.servlet.GenericServlet.init(GenericServlet.java:158)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:748)
</pre><p><b>Note</b> The full stack trace of the root cause is available in the server logs.</p><hr class="line" /><h3>Apache Tomcat/8.5.31</h3></body></html>
我只有在使用 tomcat 时才会出现此异常。
POM 文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.fanapium.tinylink</groupId>
<artifactId>tinylink</artifactId>
<packaging>jar</packaging>
<version>0.0.2</version>
<name>tinylink</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<jersey2.version>2.19</jersey2.version>
<jaxrs.version>2.0.1</jaxrs.version>
<jdk.version>1.8</jdk.version>
</properties>
<dependencies>
<dependency>
<groupId>commons-validator</groupId>
<artifactId>commons-validator</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>eu.bitwalker</groupId>
<artifactId>UserAgentUtils</artifactId>
<version>1.21</version>
</dependency>
<dependency>
<groupId>com.maxmind.geoip2</groupId>
<artifactId>geoip2</artifactId>
<version>2.12.0</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>25.1-jre</version>
</dependency>
<dependency>
<groupId>org.hashids</groupId>
<artifactId>hashids</artifactId>
<version>1.0.3</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-jaxrs</artifactId>
<version>1.5.16</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>transport</artifactId>
<version>5.2.0</version>
</dependency>
<dependency>
<groupId>com.floragunn</groupId>
<artifactId>search-guard-ssl</artifactId>
<version>5.2.0-19</version>
</dependency>
<dependency>
<groupId>com.fanapium.keylead</groupId>
<artifactId>keylead-client</artifactId>
<version>1.4.1.0</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20160212</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.7</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
<version>2.7</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>${jaxrs.version}</version>
</dependency>
<!-- Jersey 2.19 -->
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>${jersey2.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>${jersey2.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>${jersey2.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>${jersey2.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/TinyLink</outputDirectory>
<resources>
<resource>
<directory>resources</directory>
<filtering>false</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/TinyLink/lib</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.fanapium.tinylink.TinyLinkServer</mainClass>
</manifest>
<manifestEntries>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
<finalName>TinyLink/tinylink</finalName>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
最佳答案
检查您的 war 文件中是否存在 commons-validator.jar
。类(class)still exists在 1.6 中,自 1.4 版本以来没有更改任何依赖项。请参阅release notes .
关于java.lang.NoClassDefFoundError : Lorg apache commons validator routines UrlValidator exception when upgrading common-validator from 1. 4.0 到 1.6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55586050/
有没有更简单的方法是 JavaScript: if (routine !== null && routine.exercises !== undefined && routine.exerci
在我们的软件中,我们不断收到此警告/错误消息。不确定此消息的显示方式/原因。 HTTP asio handshake failed: error:140000DB:SSL routines:SSL r
我正在阅读有关 gobyexample 的教程。我注意到作者已经展示了使用 go routine 的 gochannel 示例,但在错误的 go channel 中他直接向 channel 发送消息。
我们的 Application.cfc 中有以下代码: 在 error.cfm 页面中,我们有以下代码(我没有写): function G
我正在学习 lisp 语言(做 lisp 例程),在一般情况下我知道什么是例程,但在技术上下文中我可以谈论它,因为我现在开始学习例程。那么,例行公事的真正定义是什么?(我已经用谷歌搜索过这个,但没有找
我想创建数据库 (MySQL) 的完整备份,我使用以下命令: mysqldump --routines -u dev_user -pblabla MyDB > d:\DB_Backups\%date%
我正在尝试编写一个应用程序来下载一系列图像。 130 张 116kb 图片(作品) 50 张 500kb 图片(作品) 130 张 500kb 的图片(最终挂起) 230 张 116kb 图片(最终挂
各位,我是 golang 的新手。我想从我的 application.cuz 回滚机制生成的日志文件中获取数据,我遇到了一些问题。例如,我的目标日志文件是 chats.log ,它将重命名为 chat
所以我正在尝试实现一个简单地监听 Redis 订阅的 go 例程(我为此使用 Go-redis 库)然后发送消息在接收/处理 redis 消息后在 channel 上。 像这样: func foo(r
我正在做 Web Crawler围棋之旅的问题。到目前为止,这是我的解决方案: func GatherUrls(url string, fetcher Fetcher) []string {
我刚开始学习 Go,所以请耐心等待,我尝试使用 Go 例程和 channel ,但不知何故遇到了僵局。 举个例子 package main import ( "fmt" "sync"
我是 Go 的新手,我在 Heroku 的应用程序中使用 Go 例程,这些例程很长(最多 7 分钟),并且不能被打断。我看到自动定标器有时会杀死运行例程的 Heroku dyno。我需要一种独立于测功
如何获取最后一个(理想情况下)go 例程(该应用程序有多个 go 例程)的堆栈跟踪,该例程发生 panic 并恢复并仅记录了一条不多的描述性错误消息?不知道哪个套路恢复了。另外,请记住我不会更改任何导
令我惊讶的是,go 例程似乎完美地交错......看到这个之后,我开始相信我还没有了解一些关于内部的缺失信息。示例: $ go run x.go > output $ grep ping output
TL;DR 接受并连接两个独立的 SETS 连接。想用 RPC 并发完成。 我正在尝试在我的计算机上创建半分布式系统。我现在正在处理的这段代码有点像代理节点,换句话说,它总是从一个端口接受客户端连接。
此问题的一个示例是当用户创建资源并删除资源时。我们将执行该操作并增加(减少)计数器缓存。 在测试中,有时会出现计数器缓存未被 go 例程更新的竞争条件。 编辑:抱歉造成混淆,澄清一下:计数器缓存不在内
我有一个关于 go routines 的问题。 我的代码: func main() { ok := make(chan bool, 1) i := 0 fmt.Println(
我想运行多个 Go 例程。我希望他们都同时启动。我添加了另一个同步 waitGroup 并在 go 例程的开始处添加了一个等待。然而,这并不能同时启动所有的 go 例程。我应该怎么做才能让多个 go
var m *sync.RWMutex func main() { m = new(sync.RWMutex) n := 100 go func() { for
1、如果用户有create routine 权限那么他就可以创建procedure | function 。 2、如果用户创建了procedure | function 那么mysql 会自动赋予
我是一名优秀的程序员,十分优秀!