dwr 导入的JS路径问题

luorh1986 2009-11-11 02:46:00
<html>
<head>
<script type='text/javascript' src='dwr/interface/getBizByBizClass.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<script type="text/javascript">
function test(bizClassId){
getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId,
function (value){
DWRUtil.removeAllOptions("opts");
DWRUtil.addOptions("opts", value, 'bizId', 'bizName');
}
);
}
</script>
</head>
<body>
<input type="text" onblur="test('1');" name="abc">
<select id="opts"></select>
</body>
</html>


此JSP放在/WebRoot下没问题,当放入/WebRoot/jsp下就报js错误:对象不支持此属性或方法
...全文
340 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
y234239150 2011-10-15
  • 打赏
  • 举报
回复
把 <script type='text/javascript' src=' <%=request.getContextPath()% >/dwr/interface/getBizByBizClass.js'> </script>
放到util.js后面
kky2010_110 2009-11-11
  • 打赏
  • 举报
回复
有没有用到java类或者说javabean或者返回值是个类
如果用到了
放到</create>

</create>

<convert converter="bean" match="com.chinaMobile.model.Charge"/>
这里,这样再不行,我也没办法了
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
那就不是你页面的问题呢~~是你后面的dwr.xml的配置
<allow>
<create creator="new" javascript="Exercise">
<param name="class" value="com.test.dwr.getBizByBizClass"/> 你自己的路径来定
</create>
</allow>
然后这个getBizByBizClass类下面是否有searchBizByBizClassIdUseDWR这个方法
注意大小写保持一致
kky2010_110 2009-11-11
  • 打赏
  • 举报
回复
哥哥,怪我没说明白,。是dwr.xml怎样配置,难道说这个版本不用配置了吗?不可能吧,这个可是吧java文件转化成js文件的
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
不知道是不版本的问题,我的配置里面
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
</servlet>
kky2010_110 2009-11-11
  • 打赏
  • 举报
回复
打开页面,右击查看源码,看看js文件是你想要的位置吗?还有dwr的配置文件怎样写的
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 lin364653705 的回复:]
  使用的tomcat服务器嘛??${tomcathome}\work\Catalina 删除。。。
[/Quote]

还是不行,提示getBizByBizClass未定义。。。
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 lin364653705 的回复:]
  我的就是放在webroot/info/这包里面的。。。使用这样的路径没有影响的~~

你先改下这样后面

Java code
function test(bizClassId){
alert(bizClassId);//确认进入方法//这里和你getBizByBizClass下的方法名字searchBizByBizClassIdUseDWR是否有异???getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId,
function (value){
alert(value);//是否进入这里??//DWRUtil.removeAllOptions("opts");//DWRUtil.addOptions("opts", value, 'bizId', 'bizName');}
);
}
一步一步试下,不用急呢
[/Quote]

在到达getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId这一步时报:对象不支持此属性或方法
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
使用的tomcat服务器嘛??${tomcathome}\work\Catalina 删除。。。
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 zhangkai08111 的回复:]
引用 3 楼 bobge 的回复:
  <script type='text/javascript' src=' <%=request.getContextPath()% >/dwr/interface/getBizByBizClass.js'>  </script>
  <script type='text/javascript' src=' <%=request.getContextPath()% >/dwr/engine.js'>  </script>
  <script type='text/javascript' src=' <%=request.getContextPath()% >/dwr/util.js'>  </script>

我项目中就这么用的。
[/Quote]

那会不会是包的问题,我用的是DWR3。还有我写的WEB.XML有问题吗?
<listener>
<listener-class>
org.directwebremoting.servlet.DwrListener
</listener-class>
</listener>

<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>
</servlet>

<servlet-mapping>
<servlet-name>dwr-invoker </servlet-name>
<url-pattern>/dwr/* </url-pattern>
</servlet-mapping>
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
我的就是放在webroot/info/这包里面的。。。使用这样的路径没有影响的~~

你先改下这样后面


function test(bizClassId){
alert(bizClassId);//确认进入方法
//这里和你getBizByBizClass下的方法名字searchBizByBizClassIdUseDWR是否有异???
getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId,
function (value){
alert(value); //是否进入这里??
//DWRUtil.removeAllOptions("opts");
//DWRUtil.addOptions("opts", value, 'bizId', 'bizName');
}
);
}
一步一步试下,不用急呢
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 lin364653705 的回复:]
记得加上的时候,把缓存文件全部清除下,然后重新启动下呢!
[/Quote]

缓存文件放在哪儿?DWR的JS是在JAR包里,动态生成的在哪儿?
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bobge 的回复:]
<script type='text/javascript' src='<%=request.getContextPath()% >/dwr/interface/getBizByBizClass.js'> </script>
<script type='text/javascript' src='<%=request.getContextPath()% >/dwr/engine.js'> </script>
<script type='text/javascript' src='<%=request.getContextPath()% >/dwr/util.js'> </script>
[/Quote]
我项目中就这么用的。
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
记得加上的时候,把缓存文件全部清除下,然后重新启动下呢!
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 lin364653705 的回复:]
你所有都加个了吗??包括你的
Java code<script type='text/javascript' src='dwr/interface/getBizByBizClass.js'></script>
[/Quote]

我几乎试了所有的

<%
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath();
%>


<script type='text/javascript' src=" <%=basePath%>/dwr/interface/getBizByBizClass.js"></script>
<script type='text/javascript' src=" <%=basePath%>/dwr/engine.js"></script>
<script type='text/javascript' src=" <%=basePath%>/dwr/util.js"></script>

<script type='text/javascript' src='dwr/interface/getBizByBizClass.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>

<script type='text/javascript' src='/DLS_Project/dwr/interface/getBizByBizClass.js'></script>
<script type='text/javascript' src='/DLS_Project/dwr/engine.js'></script>
<script type='text/javascript' src='/DLS_Project/dwr/util.js'></script>

<script type='text/javascript' src="<%=request.getContextPath()%>/dwr/interface/getBizByBizClass.js"></script>
<script type='text/javascript' src="<%=request.getContextPath()%>/dwr/engine.js"></script>
<script type='text/javascript' src="<%=request.getContextPath()%>/dwr/util.js"></script>

<script type='text/javascript' src='../dwr/interface/getBizByBizClass.js'></script>
<script type='text/javascript' src='../dwr/engine.js'></script>
<script type='text/javascript' src='../dwr/util.js'></script>

<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/interface/getBizByBizClass.js'> </script>
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'> </script>
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'> </script>
lin364653705 2009-11-11
  • 打赏
  • 举报
回复
你所有都加个了吗??包括你的
<script type='text/javascript' src='dwr/interface/getBizByBizClass.js'> </script> 
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 lin364653705 的回复:]
Java code<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'></script><script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'></script>
这样试下
[/Quote]
不行。。。
lin364653705 2009-11-11
  • 打赏
  • 举报
回复

<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'> </script>
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'> </script>

这样试下
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
来人帮帮忙哦
luorh1986 2009-11-11
  • 打赏
  • 举报
回复
继续顶
加载更多回复(11)

81,095

社区成员

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

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