我遇到了这种异常,有人可以帮我解决这个问题吗?
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1566)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at org.quartz.utils.UpdateChecker.getClientId(UpdateChecker.java:149)
at org.quartz.utils.UpdateChecker.buildParamsString(UpdateChecker.java:120)
at org.quartz.utils.UpdateChecker.buildUpdateCheckUrl(UpdateChecker.java:114)
at org.quartz.utils.UpdateChecker.doCheck(UpdateChecker.java:55)
at org.quartz.utils.UpdateChecker.checkForUpdate(UpdateChecker.java:47)
at org.quartz.utils.UpdateChecker.run(UpdateChecker.java:39)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
我也使用Could not load java.net.URLEncoder
和Could not load java.net.URLConnection
获得相同的例外。我正在使用Eclipse Indigo SR1和Tomcat V6.0
答案 0 :(得分:24)
您可以在重新启动服务器后解决此问题,服务器正在使用旧版本的应用程序。
答案 1 :(得分:10)
您无法通过"重新启动服务器来解决此问题"。
问题是,当您通过将新版本上载到Tomcat来更新应用程序时,某些资源未正确清理。可以是任何东西,从失控的线程,到某种预定的服务,到听众。当该进程尝试加载类时,Tomcat将检测并阻止它。
问题的解决方案是正确跟踪并关闭这些线程。
答案 2 :(得分:1)
我最近也遇到了这个问题。
在我的情况下,问题是由const awsConfig = () => {
const config = new AWS.Config({
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
region: process.env.AWS_DEFAULT_REGION,
});
AWS.config.update(config);
};
const compareImages = async (SourceImage, TargetImage, cb) => {
const client = new AWS.Rekognition();
// Logging the base64 string to validate it, externally, just to make
sure that it´s valid!
console.log('sourceImag.Bytes: >>>>>> ', SourceImage.Bytes);
const params = {
SourceImage,
TargetImage,
SimilarityThreshold: 50,
};
client.compareFaces(params, (err, response) => {
if (err) {
console.log('err: >>>>>> ', err);
return cb({ err });
}
if (!response.FaceMatches.length) {
return cb({ err: 'Face not recongized' });
}
response.FaceMatches.forEach(data => {
const position = data.Face.BoundingBox;
const similarity = data.Similarity;
console.log(`The face at: ${position.Left}, ${position.Top} matches with ${similarity} % confidence`);
return cb({ success: data.Similarity });
});
});
};
中未处理的异常生成的,该异常记录在一个localhost-date.log中。
由于该异常,Web应用尚未部署,但是已经启动的javax.servlet.ServletContextListener
仍在运行,这在catalina-date.log中引起了另一连串异常:
java.lang.IllegalStateException:非法访问:此Web应用程序实例已被停止。无法加载WhatEver.class 。
我的情况的解决方案:
java.util.concurrent.Executors
中的异常答案 3 :(得分:0)
对我来说,由于错误的java版本而发生此错误。我安装了所需的java版本并解决了错误。
答案 4 :(得分:0)
我也遇到过类似的问题。我已通过在VM参数“ -XX:MaxPermSize = 1024m”中增加Server的permsize来解决
答案 5 :(得分:0)
我也遇到过类似的问题。对我来说,发生此错误是由于从SessionScoped bean调用ApplicationScoped bean的init方法引起的。