Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连接到正在运行的JBoss AS7实例以进行测试_Jboss_Java Ee 6_Ejb 3.1 - Fatal编程技术网

连接到正在运行的JBoss AS7实例以进行测试

连接到正在运行的JBoss AS7实例以进行测试,jboss,java-ee-6,ejb-3.1,Jboss,Java Ee 6,Ejb 3.1,当我运行selenium测试时,我已经有了一个集成测试阶段。我还想在这个阶段运行一些单元测试,因为这个应用程序太复杂了,并且在他的模块之间有很多依赖关系(地狱),所以,在与OpenEJB和Arquillian进行了一周的斗争之后,我相信这会更容易 问题是:我如何让它工作 我已经运行了这个实例,如果我实例化一个InitialContext并尝试查找一些bean,我会得到一个异常,告诉我我没有设置java.naming.initial.factory,我不知道在那里放什么 我也在抱怨带注释的bean

当我运行selenium测试时,我已经有了一个集成测试阶段。我还想在这个阶段运行一些单元测试,因为这个应用程序太复杂了,并且在他的模块之间有很多依赖关系(地狱),所以,在与OpenEJB和Arquillian进行了一周的斗争之后,我相信这会更容易

问题是:我如何让它工作

我已经运行了这个实例,如果我实例化一个InitialContext并尝试查找一些bean,我会得到一个异常,告诉我我没有设置
java.naming.initial.factory
,我不知道在那里放什么

我也在抱怨带注释的bean

假设有这样一个Bean:

@Stateless
public class ABeanImpl implements ABean {
  @EJB
  private BBean;
}
容器是否会自动获得正确的
BBean


提前感谢

如何连接到JBoss 7.1远程JNDI:

以下是我用于JBoss 7.1的代码片段:

Properties props = new Properties();
String JBOSS_CONTEXT = "org.jboss.naming.remote.client.InitialContextFactory";
props.put("jboss.naming.client.ejb.context", true);
props.put(Context.INITIAL_CONTEXT_FACTORY, JBOSS_CONTEXT);
props.put(Context.PROVIDER_URL, "remote://localhost:4447");
props.put(Context.SECURITY_PRINCIPAL, "jboss");
props.put(Context.SECURITY_CREDENTIALS, "jboss123");
InitialContext ctx = new InitialContext(props);
解决不明确的ejb引用:

根据,若EJB环境的任何级别(EJB/EAR/Server)在所使用的接口中都是重复的,那个么在解析注入的bean时将抛出异常

基于以上内容,如果您有对EJB bean的引用,请选择哪个接口:

  • 在EJB模块(JAR/WAR)中有两个实现-将引发异常
  • 在您的应用程序中有两个实现(同一EAR中的其他EJB JAR)-将引发异常
  • 有两个实现,一个在带有beanABeanImpl的模块中,另一个在其他地方-使用当前模块的实现