论坛首页 Web前端技术论坛

DWR在tomcat embedded中的问题

浏览 3660 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-10-01  
环境信息:
JAVA
引用
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)

Tomcat Embedded (apache-tomcat-5.5.17-embed)
DWR(dwr-1.1.3)

症状:
访问类如:http://localhost:8080/app/dwr/....时
遇到如下信息:
引用

javax.servlet.ServletException: Servlet.init() for servlet dwr-invoker threw exception
...

root cause :
java.lang.NoClassDefFoundError: test (wrong name: Test)
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(Unknown Source)
java.security.SecureClassLoader.defineClass(Unknown Source)
java.net.URLClassLoader.defineClass(Unknown Source)
java.net.URLClassLoader.access$100(Unknown Source)
java.net.URLClassLoader$1.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
uk.ltd.getahead.dwr.impl.DefaultContainer.addParameter(DefaultContainer.java:66)


尝试方法及结果
直接将应用发布到Tomcat 5.5 ,启动后,访问正常.

悬疑:
经google后发现有一解决方案如下:
引用

然后我在网上搜索,找到了一个解决办法,原因是我的Tomcat5.0.28和JDK1.5中的 xml-parser 冲突,于是我把TOMCAT_HOME/common/endorsed/xml-apis.jar中的xml-parser 删除了就好了,整个DWR就在我的电脑上运行起来了。

From:http://www.lifegood.cn/page/lancelot?entry=dwr%E7%9A%84%E9%85%8D%E7%BD%AE%E4%B8%AD%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98%E4%BB%A5%E5%8F%8A%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95


但是,Tomcat 5.5本来就不带xml-parser.而我的应用中,也未引用xml-apis.jar,不知道是哪里还存在问题.

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics