Spring

From Documentation

Overview

Spring is a platform for building Java application, and it includes many easy-to-use solutions for building web-based application.

Here we discuss how to use Spring with ZK, especially the use of DelegatingVariableResolver. It provides the basic support of Spring: allow a ZUML document to access variables defined in Spring. For more comprehensive support, such as Spring scopes, annotations and security, please refer to another product: ZK Spring.

Installing Spring

First you have to install Spring to your Web application. If you are familiar with Spring, you could skip this section. In this section we use Spring core 3.0.2 and Spring Security 3.0.2.

Copy Spring binaries into your Web library

Before using Spring, you have to download it, and put the jar file into the directory of your web application.

  1. Download Spring Core framework 3.0.2 release binaries download
  2. Since 3.0.x release Spring is distributed as a collection fo Spring module jar files instead of a single spring.jar. You need following Spring module jar files on your class-path for using zkspring-core.jar of ZK Spring 3.0RC release.
    • org.springframework.aop-3.0.2.RELEASE.jar
    • org.springframework.asm-3.0.2.RELEASE.jar
    • org.springframework.beans-3.0.2.RELEASE.jar
    • org.springframework.context-3.0.2.RELEASE.jar
    • org.springframework.context.support-3.0.2.RELEASE.jar
    • org.springframework.core-3.0.2.RELEASE.jar
    • org.springframework.expression-3.0.2.RELEASE.jar
    • org.springframework.transaction-3.0.2.RELEASE.jar
    • org.springframework.web-3.0.2.RELEASE.jar
    • org.springframework.web.servlet-3.0.2.RELEASE.jar

Put these jar files into your $myApp/WEB-INF/lib/

Here $myApp represents the name of your web application.

Note: For earlier ZK Spring 1.1.0 release see ZK Spring 1.1.0 Release configuration details for copying spring.jar

Configure web.xml

In your web.xml, you have to define org.springframework.web.context.ContextLoaderListener, and to specify the location of the configuration file to load bean definitions.

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
 
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

Create Spring Configuration File

Define bean definitions in applicationContext.xml file, and put it into your WEB-INF directory.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
 
<beans>
  <bean id="DataSource" class="test.DataSourceImpl"/>
</beans>

Creating Spring Bean Class

Then you have to define a DataSource interface and its implementation:

DataSource.java

 package test;
 
 public interface DataSource
 {
     java.util.List getElementsList();
 }

DataSourceImpl.java

 package test;
 
 import java.util.*;
 
 public class DataSourceImpl implements DataSource
 {
     public List getElementsList()
     {
         List list = new ArrayList();
         list.add("Tom");
         list.add("Henri");
         list.add("Jim");
         
         return list;
     }
 }

Version History

Last Update : 2010/11/18


Version Date Content
     



Last Update : 2010/11/18

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.