求解部署dwr遇见的问题

wh2000292 2009-03-02 09:57:29
服务器为tomcat6.0
web.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>

<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>

<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
</web-app>


dwr.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">
<dwr>
<allow>
<create creator="new" javascript="HelloDWR" scope="application">
<param name="class" value="test.HelloDWR"/>
</create>
</allow>
</dwr>



java代码如下:

package test;
public class HelloDWR
{
public String hello()
{
return "hello,DWR";
}
}

html页面如下:

<html>
<head>
<title>helloDWR</title>
<script src="/dwr/interface/HelloDWR.js"></script>
<script src="/dwr/engine.js"></script>
<script>
function sayHello()
{
HelloDWR.hello(function(data){document.write(data);});
//JDate.getTime(function(data){document.write(data);});
}
</script>
</head>
<body>
<script>
sayHello();
</script>
</body>
</html>

输入url时:http://localhost:8080/testDWR/dwr
有如下异常:
description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Servlet.init() for servlet dwr-invoker threw exception
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Unknown Source)

root cause

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
org.directwebremoting.dwrp.PollHandler.<clinit>(PollHandler.java:443)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
org.directwebremoting.impl.ContainerUtil.class$(ContainerUtil.java:97)
org.directwebremoting.impl.ContainerUtil.setupDefaults(ContainerUtil.java:150)
org.directwebremoting.impl.ContainerUtil.setupDefaultContainer(ContainerUtil.java:125)
org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:73)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Unknown Source)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.13 logs.
如何解决?
...全文
113 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
s_iori 2010-04-22
  • 打赏
  • 举报
回复
晕了,看不导。
暗夜幽风 2009-11-12
  • 打赏
  • 举报
回复
学习了,哎!我也遇到了这个问题,呵呵
polimo 2009-03-02
  • 打赏
  • 举报
回复
建议分步测试下吧...
Ghost_520 2009-03-02
  • 打赏
  • 举报
回复

如果程序没有什么问题的话,在你的工程下面加入 : commons-logging.jar 包。

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧