DWR2.0默认支持webwork,在网上找了些资料有兄弟已经走在了我前面了,呵呵。不过我已经将其打包成了dwr4struts2.jar,见附件。
dwr.xml文件:
xml 代码
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd">
- <dwr>
- <allow>
- <create creator="none" javascript="DWRAction">
- <param name="class" value="org.directwebremoting.struts2.DWRAction"/>
- <include method="execute"/>
- </create>
- <convert converter="bean" match="org.directwebremoting.struts2.ActionDefinition">
- <param name="include" value="namespace,action,method,executeResult" />
- </convert>
- <convert converter="bean" match="org.directwebremoting.struts2.AjaxResult"/>
- <!-- 相应的Struts2的Action -->
- <convert match="com.*.*Action" converter="bean"/>
- <!-- 如果有复杂类型要转换,如List中有多个JavaBean对象 -->
- <convert match="com.*.model.*Bean" converter="bean"/>
- </allow>
- </dwr>
testDwr.htm文件:
xml 代码
- <html>
- <head>
- <script type='text/javascript' src='/js/dwr/DWRActionUtil.js'></script>
- <script type='text/javascript' src='/dwr/interface/DWRAction.js'></script>
- <script type='text/javascript' src='/dwr/engine.js'></script>
- <script type='text/javascript' src='/dwr/util.js'></script>
- <script language="javascript">
- function testDwr(){
- DWRActionUtil.execute({namespace:'/',action:'special',executeResult:'false'}, 'frmDwr', writePage);
- }
- function writePage(data){ alert("departure = "+data.departure);
- }
- </script>
- </head>
- <body>
- <form name="frmDwr" method="post" action="" id="frmDwr">
- <input name="departure" value="PEK"/>
- <input type="button" value="测试" onclick="testDwr();">
- </form>
- </body>
- </html>