jetty WebappClassLoader 问题
jetty WebappClassLoader 问题
一、
背景:
一个main方法启动一个java app和一个jetty webserver
但是jetty webserver 获取不到java app的数据。【就是jetty web action不能获取 app中对象的返回结果】 1.只用jstl-1.2.jar ,不需要standard.jar
但是jetty webserver 获取不到java app的数据。【就是jetty web action不能获取 app中对象的返回结果】
原因:两部分程序有两个classLoader
解决方案:都用sun的AppClassLoader
sun.misc.Launcher$AppClassLoader@558fe7c3
jetty WebappClassLoader解决方案:都用sun的AppClassLoader
把jetty的loader设为sun的AppClassLoader:
ClassLoader t_classLoader = Thread.currentThread().getContextClassLoader();
WebAppContext.setClassLoader();
二、
然后访问web应用,出现jstl错误:
http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
解决方案:
2.同时调整classLoader
URLClassLoader t_newClassLoader = new URLClassLoader(new URL[] { t_urlTaglibs }, classLoader);
URLClassLoader t_newClassLoader = new URLClassLoader(new URL[] { t_urlTaglibs }, classLoader);
Thread. currentThread().setContextClassLoader(t_newClassLoader);
jettyServer.start();
相关推荐
87901735 2019-05-29
lizhengfa 2019-05-17
smallwhale 2011-07-13
HatsuneMiku 2011-06-19
stoneechogx 2019-10-23
quguang 2019-10-23
sarsgetaway 2015-03-18
linuxprobe0 2017-09-23
星月高悬 2011-12-16
积跬步以至千里 2016-07-11
TyCoding 2016-04-08
onlylixiaobei 2015-01-04
CSDNMrWang 2011-05-19
tracyn 2014-04-28
TyCoding 2012-05-19
hwhanwan 2010-06-24
码路心路知行合一 2011-11-18