郁闷了一下午的问题
调试模式 可以成功调用 java 方法, 但是在页面中却无法运行
--------------------------------------
package com.service;
public class HelloService {
public String sayHello(String str){
return "Hello World"+str;
}
}
================================
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>dwr-invoke</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-invoke</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
</web-app>
<?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 javascript="hs" creator="new" scope="application">
<param name="class" value="com.service.HelloService"></param>
<include method="sayHello"/>
</create>
</allow>
</dwr>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript" src="<%=path%>/dwr/interface/hs.js"></script>
<script type="text/javascript" src="<%=path%>/dwr/util.js"></script>
<script type="text/javascript" src="<%=path%>/dwr/engine.js"></script>
<script type="text/javascript">
// 由于 hs 方法名 与 hs 对象 重复 ,导致冲突而无法访问 sayHello 方法
function hs(){ // 将hs 方法名 改一下 就OK
alert("");
hs.sayHello("cccccc",abc);
alert("xxxx");
}
function abc(data){
alert(data);
}
</script>
</head>
<body>
<input οnclick="hs();" value="dddd" type="button">
</body>
</html>