您的位置:首页 > Web前端 > JavaScript

DWR入门常见问题方案

2013-06-06 15:51 204 查看
  
  DWR入门教程:转载文章:http://blog.csdn.net/stubbornpotatoes/article/details/8744551

  上篇博客介绍dwr的demo,从demo可以基本学习到如何使用dwr,其实普通使用dwr,很方便,很简单。

  在测试上篇博客时,仅仅几行代码出现的问题如下:
   Access to debug pages is denied. 
  解决方案:

  在web.xml中配置dwr时,需要配置debug参数,debug参数为true,如下:
  
< servlet>
<servlet-name >dwr</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</servlet-name>
<url-pattern >/ dwr/*</url-pattern >
</ servlet-mapping>
  
   在运行jsp测试时:

  dwr: A request has been denied as a potential CSRF attack.
   解决方案如下:在web.xml中配置dwr时,添加初始化参数:
 
<init-param >
<param-name >crossDomainSessionSecurity </param-name >
<param-value >false </param-value >
</init-param >
 
  另外需要注意点:jsp引入的js文件,为了确保引入js的路径正确,可以通过运行:
http://localhost:8088/项目名称/web.xml中配置的名称,比如,在上面xml中,我配置dwr,/dwr/*,这种形式访问时,就会使用dwr方式,则通过:
http://localhost:8088/testDwr/dwr/ 可以查看js文件路径。

  另外一个问题时,dwr中声明暴露的方法中,不要使用重载方式,js不能区分重载。
  比如:类中的方法如下:
  public String sayHello(String name);
  public String sayHello();
  即使jsp页面中调用sayHello传入参数,后台却调用第二个方法无参的。
  大家有兴趣可以测试,并且可以通过js跟踪调试一下。

     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  DWR JavaScript