浏览器提示该对象未定义。
打开dwr.xml看了看,类,方法,include,该露的都露了= =,没问题啊。
看了看页面,头部有如下内容:
<script type="text/javascript" src="/dwr/engine.js"></script>
<script type="text/javascript" src="/dwr/util.js"></script>
<script type="text/javascript" src="/dwr/interface/XXXClass.js"></script>
后来觉得是不是src这路径写的有问题,改成:
<script type="text/javascript" src="./dwr/engine.js"></script>
<script type="text/javascript" src="./dwr/util.js"></script>
<script type="text/javascript" src="./dwr/interface/XXXClass.js"></script>
又怀疑是不是路径需要参照实际情况改动,毕竟我工程WEB-INF目录里根本没有dwr这个目录。于是改成:
<script type="text/javascript" src="<%=request.contextPath()%>js/dwr/engine.js"></script>
<script type="text/javascript" src="<%=request.contextPath()%>js/dwr/util.js"></script>
<script type="text/javascript" src="<%=request.contextPath()%>js/dwr/interface/XXXClass.js"></script>
均以失败告终。
又怀疑是不是dwr.xml里不该用new ,于是改成:
<create javascript="XXXClass" creator="spring">
<include method="methodXX" />
<param name="class" value="com.yyy.XXXClass" />
</create>
结果还是“变量XXXClass未定义”……我靠。怎么回事……
经测试,引入的engine和util都可用。只有XXXClass对象提示未定义。然后发现还是路径写的有问题。改成这样就正常了:
<script type="text/javascript" src="<%=request.contextPath()%>/dwr/engine.js"></script>
<script type="text/javascript" src="<%=request.contextPath()%>/dwr/util.js"></script>
<script type="text/javascript" src="<%=request.contextPath()%>/dwr/interface/XXXClass.js"></script>
直接工程路径接上/dwr/*** 就可以。
学会了一种检验现有DWR状况的办法:
浏览器地址栏输入 http://[ip地址]:[端口号]/[工程名]/dwr
就能看到DWR的测试页面了。