充满创意的WebWork与Ajax结合使用的例子(没采用WebWork的方法)
WebWork提供的使用Ajax的配置及使用太麻烦了,又难以理解。所以本人自己写了一套很简单方法来访问:
1.Action代码:
publicStringforwordLog(){
log.info("forwordtologtab....");
return"forwordLog";
}
publicStringgetLog(){
log.info("forwordtogetLog....");
StringretDoc="";
try{
if(fileName!=null)
retDoc=FileUtil.readFileContent(fileName,displayRows);
}catch(Exceptionex){
ex.printStackTrace();
}
inputStream=newByteArrayInputStream(retDoc.getBytes());
return"getLog";
}
2.action.xwork.xml配置:
<actionname="config"class="com.bee.admin.config.action.SystemPropertiesAction">
<resultname="forwordLog"type="freemarker">/adminconfig/config/config_log_view.ftl</result>
<resultname="getLog"type="stream"></result>
</action>
3.freemarker代码:
<scripttype="text/javascript"src="${base}/adminconfig/common/common.js"></script>
<scripttype="text/javascript">
<!--
functionlistLog(){
document.getElementById("msg").innerHTML="";
varfile=document.getElementById("T1").value;
varrows=document.getElementById("T2").value;
varurl="${commonUrl}/config.action?act=getLog&filename="+file+"&displayRows="+rows;
varresult=getHTMLContent(url,'POST');
document.getElementById("log_zone").value=result;
}
//-->
</script>
注:1.getHTMLContent是common.js的ajax函数,直接返回结果;
2.${commonUrl}是Action中获取的访问服务器的地址,如:http://192.168.21.30:8080/admin
3.Action的xwork.xml中result配置和访问url中的act=getLog参数是经过包装的,你可以按一般的Webwork定义
没有任何的有关ajax的配置,跟一般webwork架构一样,比webwork的dwr简单多了。不明白的发邮件给我。
相关推荐
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo