You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Name

struts2-ejb3-plugin

Publisher

Agrael Lee

License

Open Source (ASL2)

Version

0.0.1

Homepage

http://code.google.com/p/struts2-ejb3-plugin/

Download

http://code.google.com/p/struts2-ejb3-plugin/downloads/list

Error formatting macro: rate: java.lang.NoSuchMethodError: 'java.lang.String com.atlassian.confluence.setup.BootstrapManager.getDomainName()'

Overview

该plugin提供struts的Action及Interceptor对EJB组件及Resource的无侵入式依赖注入(DI)。

Usage

Please read this short info here : http://code.google.com/p/struts2-ejb3-plugin/

Example


@Interceptors(Interceptor3.class)
public class EjbTestAction1 extends ActionSupport{

	private static final long serialVersionUID = 4126146938063764047L;

	@EJB
	private TestSessionBean1Local testSessionBean1Local;
	
	@EJB(name="ejb/sessionBean1")
	private TestSessionBean1Remote sessionBean1;
	
	private TestSessionBean1Remote session;
	
	@EJB
	public void setSession(TestSessionBean1Remote session) {
		this.session = session;
	}

	@PostConstruct
	@Interceptors({Interceptor2.class,Interceptor3.class})
	public void init(){
		//...
	}
	
	@Interceptors({Interceptor3.class,Interceptor1.class,Interceptor2.class})
	public String execute() throws Exception {
		//...
		return SUCCESS;
	}
}

Installation

将 struts-ejb3-plugin.jar 考入 /WEB-INF/lib 目录中。这时使用的为plugin的默认配置,该配置为 cn/agrael/struts/plugin/ejb3/default-struts-ejb3-plugin.properties中的配置。配置信息如下:

#ENC的默认名
ENCPath=java:comp/env/
#应用服务器的具体实现类,该类是 cn.agrael.struts.plugin.ejb3.ApplicationServer的实现类
ejbContainer=cn.agrael.struts.plugin.ejb3.JbossApplicationServer
#是否解析@Resource的标志 true 为解析,false 为不解析
isParseResource=false
#是否解析@EJB的标志 true 为解析,false 为不解析
isParseEJB=true
#ear的路径名,如果没有则为空字符串
earFileBaseName=
#为远程Bean时的JNDI路径
remote=remote
#为本地Bean时的JNDI路径
local=local

如果要修改默认的配置,需要在 classpath 下建立为 struts-ejb3-plugin.properties 的资源文件覆盖默认的配置。

除了plugin本身的配置以外,还需要在 classpath 下创建名为 jndi.properties 的资源文件用做 jndi配置 ,plugin 中使用到的jndi查找依赖于该配置。

Resources

  • No labels