Sample-spring-basic » History » Version 16
Henning Blohm, 08.11.2013 22:48
1 | 8 | Henning Blohm | h1. A basic Spring with Z2 modularity sample |
---|---|---|---|
2 | 2 | Henning Blohm | |
3 | The sample contained in the repository "z2-samples.spring-basic":http://redmine.z2-environment.net/projects/z2-samples/repository/z2-samples-spring-basic is a clean room example on how to use the Spring integration features described in [[how_to_spring]]. |
||
4 | |||
5 | 10 | Henning Blohm | There is no further pre-requisite to running this sample, and you may proceed as described in [[How to run a sample]]. Here's the really fast version: |
6 | |||
7 | 11 | Henning Blohm | <pre><code class="ruby"> |
8 | 10 | Henning Blohm | mkdir install |
9 | cd install |
||
10 | git clone -b master http://git.z2-environment.net/z2-base.core |
||
11 | git clone -b master http://git.z2-environment.net/z2-samples.spring-basic |
||
12 | |||
13 | 11 | Henning Blohm | # on Linux / Mac OS: |
14 | 10 | Henning Blohm | cd z2-base.core/run/bin |
15 | ./gui.sh |
||
16 | |||
17 | # on Windows: |
||
18 | 12 | Henning Blohm | cd z2-base.core\run\bin |
19 | 10 | Henning Blohm | gui.bat |
20 | </code></pre> |
||
21 | |||
22 | 15 | Henning Blohm | If you want to inspect the code using Eclipse, please create a workspace in install (i.e. *install/workspace*) and import the Git repositories and projects (see also [[Step_3_-_First_steps_with_Z2_on_Git|First steps]]). |
23 | 2 | Henning Blohm | |
24 | 16 | Henning Blohm | There are three modules contained in this sample. For the moment only consider the following two: |
25 | 2 | Henning Blohm | |
26 | h2. com.zfabrik.samples.spring-basic.services |
||
27 | |||
28 | 6 | Henning Blohm | This module has a classpath defined "applicationContext":http://redmine.z2-environment.net/projects/z2-samples/repository/z2-samples-spring-basic/revisions/master/entry/com.zfabrik.samples.spring-basic.services/java/src.impl/META-INF/applicationContext.xml and exposes an annotation defined bean "ComputationServiceImpl":http://redmine.z2-environment.net/projects/z2-samples/repository/z2-samples-spring-basic/revisions/master/entry/com.zfabrik.samples.spring-basic.services/java/src.impl/com/zfabrik/samples/impl/services/ComputationServiceImpl.java bean from it as a service to be consumed from another module: The *computations* bean. |
29 | 2 | Henning Blohm | |
30 | h2. com.zfabrik.samples.spring-basic.frontend |
||
31 | |||
32 | 4 | Henning Blohm | This module has a Web application with an application context defined in WEB-INF/applicationContext. It uses Spring AspectJ based annotation driven configuration to inject dependencies into instances of "ControllerServlet":http://redmine.z2-environment.net/projects/z2-samples/repository/z2-samples-spring-basic/revisions/master/entry/com.zfabrik.samples.spring-basic.frontend/java/src.impl/com/zfabrik/samples/impl/frontend/ControllerServlet.java. |
33 | 3 | Henning Blohm | |
34 | It's "application context":http://redmine.z2-environment.net/projects/z2-samples/repository/z2-samples-spring-basic/revisions/master/entry/com.zfabrik.samples.spring-basic.frontend/web/WebContent/WEB-INF/applicationContext.xml imports the *computations* service from the other module above. |
||
35 | 7 | Henning Blohm | |
36 | 9 | Henning Blohm | h2. Finally |
37 | |||
38 | Open a browser and navigate to http://localhost:8080/frontend to verify you get this: |
||
39 | |||
40 | 1 | Henning Blohm | !frontend.png! |
41 | 16 | Henning Blohm | |
42 | h1. An extended Spring with Z2 modularity and some Spring Security sample |
||
43 | |||
44 | The third module *com.zfabrik.samples.spring-basic.secured* contained in the sample repository implements a very similar basic frontend to the one above but illustrating in addition: |
||
45 | |||
46 | * How to use Spring Security to secure the access to a Web application |
||
47 | * How to use Spring Security to secure methods of a bean |
||
48 | * How to use Spring Security with Spring AspectJ weaving |
||
49 | |||
50 | tbc |