webx中dwr与spring组合使用说明
========================================
web.xml 中的配置
------------------------------------------------------------------
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
------------------------------------------------------------------
首先,建立dwr.xml文件 如下
------------------------------------------------------------------
<dwr>
<allow>
<create creator="spring" javascript="AjaxAllData">
<param name="beanName" value="ajaxAllData"/>
<exclude method="setAjaxAllData"/>
</create>
<convert converter="bean" match="mywebx.vo.DatatableVO">
<param name="include" value="name,createDate" />
</convert>
</allow>
<!--处理范式时需要-->
<signatures>
<![CDATA[
import java.util.*;
import com.ce.dpos.stock.stockaccount.vo.*;
import com.ce.dpos.stock.stockaccount.service.impl.*;
AjaxiniWrhAccountService.IniWrhAccountupdate(List<IniWrhAccountVO> list);
]]>
</signatures>
</dwr>
-----------------------------------------------------------------------------------------------------------
接着,在spring-conf 文件夹下,建立spring-ajax.xml文件 如下
------------------------------------------------------------------
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
default-autowire="byName"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="ajaxAllData" class="mywebx.service.impl.AjaxDatatableService">
<property name="ajaxAllData">
<ref bean="datatableService"/>
</property>
<property name="goodsInfoService">
<ref bean="goodsinfoService"/>
</property>
</bean>
</beans>
说明:在AjaxDatatableService.java类中,建立两个实例对象
private IDatatableService ajaxAllData;
private IGoodsinfoService goodsInfoService = null;
所以:
<property name="ajaxAllData"> <!-- mywebx.service.impl.AjaxDatatableService中,实例对象ajaxAllData 由datatableService 注入对象-->
<ref bean="datatableService"/> <!-- 关联到daoContext.xml 对应的bean -->
</property>
<property name="goodsInfoService">
<ref bean="goodsinfoService"/>
</property>
------------------------------------------------------------------
然后,java类中的返回
------------------------------------------------------------------
public DatatableVO findById(Integer id){
return ajaxAllData.findById(id);
}
说明:与dwr.xml 的convert配置对应,如:
<convert converter="bean" match="mywebx.vo.DatatableVO">
<param name="include" value="name,createDate" />
</convert>
------------------------------------------------------------------
最后,jsp文件中的使用
------------------------------------------------------------------
<script type='text/javascript' src='/WebxWithConponent/dwr/engine.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/util.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/interface/AjaxAllData.js'></script>
function selectConfirm(id)
{
AjaxAllData.findById(id,confirm); //说明:1.第一个参数,为查询条件; 2.第二个参数,回调函数句柄
selectOption.style.display = "none";
}
function confirm(data)
{
var name = document.getElementById("name");
var createDate = document.getElementById("createDate");
name.value = data.name;
createDate.value = data.createDate;
}
========================================
web.xml 中的配置
------------------------------------------------------------------
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
------------------------------------------------------------------
首先,建立dwr.xml文件 如下
------------------------------------------------------------------
<dwr>
<allow>
<create creator="spring" javascript="AjaxAllData">
<param name="beanName" value="ajaxAllData"/>
<exclude method="setAjaxAllData"/>
</create>
<convert converter="bean" match="mywebx.vo.DatatableVO">
<param name="include" value="name,createDate" />
</convert>
</allow>
<!--处理范式时需要-->
<signatures>
<![CDATA[
import java.util.*;
import com.ce.dpos.stock.stockaccount.vo.*;
import com.ce.dpos.stock.stockaccount.service.impl.*;
AjaxiniWrhAccountService.IniWrhAccountupdate(List<IniWrhAccountVO> list);
]]>
</signatures>
</dwr>
-----------------------------------------------------------------------------------------------------------
接着,在spring-conf 文件夹下,建立spring-ajax.xml文件 如下
------------------------------------------------------------------
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
default-autowire="byName"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="ajaxAllData" class="mywebx.service.impl.AjaxDatatableService">
<property name="ajaxAllData">
<ref bean="datatableService"/>
</property>
<property name="goodsInfoService">
<ref bean="goodsinfoService"/>
</property>
</bean>
</beans>
说明:在AjaxDatatableService.java类中,建立两个实例对象
private IDatatableService ajaxAllData;
private IGoodsinfoService goodsInfoService = null;
所以:
<property name="ajaxAllData"> <!-- mywebx.service.impl.AjaxDatatableService中,实例对象ajaxAllData 由datatableService 注入对象-->
<ref bean="datatableService"/> <!-- 关联到daoContext.xml 对应的bean -->
</property>
<property name="goodsInfoService">
<ref bean="goodsinfoService"/>
</property>
------------------------------------------------------------------
然后,java类中的返回
------------------------------------------------------------------
public DatatableVO findById(Integer id){
return ajaxAllData.findById(id);
}
说明:与dwr.xml 的convert配置对应,如:
<convert converter="bean" match="mywebx.vo.DatatableVO">
<param name="include" value="name,createDate" />
</convert>
------------------------------------------------------------------
最后,jsp文件中的使用
------------------------------------------------------------------
<script type='text/javascript' src='/WebxWithConponent/dwr/engine.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/util.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/interface/AjaxAllData.js'></script>
function selectConfirm(id)
{
AjaxAllData.findById(id,confirm); //说明:1.第一个参数,为查询条件; 2.第二个参数,回调函数句柄
selectOption.style.display = "none";
}
function confirm(data)
{
var name = document.getElementById("name");
var createDate = document.getElementById("createDate");
name.value = data.name;
createDate.value = data.createDate;
}