Name | Scope Plugin |
---|---|
Publisher | Apache Software Foundation |
License | Open Source (ASL2) |
Version | 1.0.1 |
Homepage | http://code.google.com/p/struts2scopeplugin/![]() |
Download | http://code.google.com/p/struts2scopeplugin/downloads/list![]() |
Source Code | http://code.google.com/p/struts2scopeplugin/source![]() |
Example | http://struts2scopeplugin.googlecode.com/svn/trunk/example/![]() |
Overview
The Scope plugin
Excerpt |
---|
implements JBoss Seam-style scoped bijection and conversation management |
Features
- An @In annotation that marks action properties that should be injected from the session before an action executes
- An @Out annotation that marks action properties that should be put back into the session after an action executes
- An @Begin annotation that creates a new converstaion
- An @End annotation that ends a conversation and cleans up any variables stored in that conversation
Requirements
- Struts 2.x
Installation
This plugin can be installed by copying the plugin jar into your application's /WEB-INF/lib
directory.
Usage
The scope plugin allows declarative scope management of action properties. Action properties can be scoped to one of several predefined scope. The predefined scopes are:
...
Code Block |
---|
<interceptor name="bean-scope" class="com.googlecode.scopeplugin.ScopeInterceptor" /> |
Example
The following example shows how a session managed bean can be automatically be moved from the session to an action property before the action executes and moved from the action to the session after the action executes.
...
Code Block |
---|
public class ExampleAction extends ActionSupport { @In (scope=ScopeType.CONVERSATION) @Out (scope=ScopeType.CONVERSATION) private ExampleBean exampleBean; ... @Begin public String startConversation() { exampleBean = new ExampleBean(); return SUCCESS; } public String doStuffinConversation() { return SUCCESS; } @End public String endConversation() { return SUCCESS; } ... } |
Future Features
- Add support for nested conversations
- Add support for named conversations