Recently I have an opportunity to work with Spring Framework. With Spring I have used following technologies:
1. Spring MVC
2. Ajax - DWR
3. Hibernate
4. Tiles
5. Acegi Security
It was really a nice experience working with Spring and other supporting technologies.
I found a littlet bit problem in getting DWR 2.0 working with Spring 2.0.
Approach that worked for me as follows:
1. Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4">
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext*.xml</param-value>
</context-param>
<!-- Listner Config-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
<!-- Ajax DWR config ends -->
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
<servlet>
2. Application-Context.xml
<!-- DWR Configurations -->
<dwr:controller id="dwrController" debug="true"/>
<!-- Configure DWR handlers -->
<bean id="dwrUrlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="alwaysUseFullPath" value="true"/>
<property name="mappings">
<props>
<prop key="/dwr/**/*">dwrController</prop> </props> </property>
</bean>
<!-- Configure Convertor -->
<dwr:configuration>
<dwr:convert type="bean" class="com.app.domain.User" />
</dwr:configuration>
<!-- Configure Ajax controller -->
<bean id="ajaxController" class="com.app.controller.dwr.AjaxController">
<dwr:remote javascript="UserList">
<dwr:include method="getUser"/>
<dwr:include method="updateUser"/>
</dwr:remote>
<property name="userDao" ref="userDao"/>
</bean>
3. JSP Page
Add following lines to jsp page:
<script type='text/javascript' src='/spring/dwr/interface/UserList.js'></script>
<script type='text/javascript' src='/spring/dwr/engine.js'></script>
<script type='text/javascript' src='/spring/dwr/util.js'></script>
Define call back javascript function and attach that to some event
<script type="text/javascript">
function editUser(id) {
UserList.getUser(id,function(array){DWRUtil.setValue(fname,array.fname); });
}
</script>
Finally deploy the application and restart the server and here is your DWR wroking...
To test it you can use: http://localhost:8080/spring/dwr/index.html
Resources:
Showing posts with label javascript remoting. Show all posts
Showing posts with label javascript remoting. Show all posts
AJAXing with Spring using DWR
Posted by
Ram Awasthi
on Wednesday, November 14, 2007
Labels:
ajax,
Dwr,
javascript remoting,
spring
/
Comments: (1)
