Maven JavaEE硒铬转换器
我试图在无状态EJB计时器服务中执行selenium。 所采取的步骤是: 1-我创建了无状态EJB服务Maven JavaEE硒铬转换器,maven,selenium,jakarta-ee,ejb,wildfly,Maven,Selenium,Jakarta Ee,Ejb,Wildfly,我试图在无状态EJB计时器服务中执行selenium。 所采取的步骤是: 1-我创建了无状态EJB服务 @Stateless public class AutomaticSayHello { private static final Logger logger = Logger.getLogger(AutomaticSayHello.class); @EJB private DefaultController defaultController; @Reso
@Stateless
public class AutomaticSayHello {
private static final Logger logger = Logger.getLogger(AutomaticSayHello.class);
@EJB
private DefaultController defaultController;
@Resource
private TimerService timerService;
@Schedule(hour="*",minute="*/1",persistent=false)
public void automaticHelloService(){
try{
ChromeWrapper chWrapper = ChromeWrapper.getInstance();
chWrapper.get("http:://google.com");
}catch(Exception ex){
logger.info(ex.getMessage());
}
}
}
(在我的项目中,我将ChromeDriver包装在一个名为ChromeWrapper的类中,以支持某些方法的快捷方式)
2-在ejb项目的pom.xml文件中导入已有的selenium项目。
<dependencies>
<dependency>
<groupId>com.ozmuzik.remote</groupId>
<artifactId>remote-mobile</artifactId>
<version>0.1.1-SNAPSHOT</version>
</dependency>
</dependencies>
com.ozmuzik.remote
远程移动
0.1.1-快照
当我将EJB部署到wildfly 10.1.0服务器时,maven出现以下错误:
[INFO]——wildfly maven插件:1.1.0.Alpha11:deploy(默认cli)@ozmuzik测试服务器ejb---
2016年12月25日上午10:38:59 org.xnio.xnio
信息:XNIO版本3.3.1.Final
2016年12月25日上午10:39:00 org.xnio.nio.NioXnio
信息:XNIO NIO实现版本3.3.1.Final
2016年12月25日上午10:39:00 org.jboss.remoting3.EndpointImpl
信息:JBoss远程处理版本4.0.9.Final
[信息]------------------------------------------------------------------------
[信息]生成失败
[信息]------------------------------------------------------------------------
[信息]总时间:3.176秒
[信息]完成时间:2016-09-25T10:39:00+03:00
[信息]最终内存:19M/272M
[信息]------------------------------------------------------------------------
[错误]未能在ozmuzik测试服务器ejb上执行目标org.wildfly.plugins:wildfly maven plugin:1.1.0.Alpha11:deploy(默认cli):未能执行目标部署:{“WFLYCTL0062:复合操作失败并被回滚。失败的步骤:=>{“操作步骤-1”=>{“WFLYCTL0080:失败的服务”=>{“jboss.deployment.unit.\”ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\”.POST\u模块“=>”org.jboss.msc.service.StartException in service jboss.deployment.unit.\“ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\”。POST\u模块:WFLYSRV0153:无法处理部署的阶段POST\u模块“ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\”
[错误]由以下原因引起:java.lang.RuntimeException:WFLYSRV0177:从服务模块加载器获取com.ozmuzik.test.server.timer.AutomaticSayHello类的反射信息时出错:使用ClassLoader ModuleClassLoader为模块\“deployment.ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar:main\”
[错误]原因:java.lang.NoClassDefFoundError:com/facebook/mobile/selenium/ChromeWrapper
[错误]由以下原因引起:java.lang.ClassNotFoundException:com.mobile.selenium.ChromeWrapper from[Module\“deployment.ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar:main\“from Service Module Loader]”“},“WFLYCTL0412:未安装的必需服务:”=>[“jboss.deployment.unit.\“ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\”。POST\u Module”],“WFLYCTL0180:缺少/不可用依赖项的服务”=>undefined}
[错误]->[帮助1]
[错误]
[错误]要查看错误的完整堆栈跟踪,请使用-e开关重新运行Maven。
[错误]使用-X开关重新运行Maven以启用完整调试日志记录。
[错误]
[错误]有关错误和可能的解决方案的更多信息,请阅读以下文章:
[错误][帮助1]http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
有人解释为什么会发生这个问题吗?
我还想知道如何执行一些不属于EJB本身的代码?
为了简单起见,我的目标是通过自动执行ejb,使用selenium执行一个服务来抓取一些信息
[INFO] --- wildfly-maven-plugin:1.1.0.Alpha11:deploy (default-cli) @ ozmuzik-test-server-ejb ---
Eyl 25, 2016 10:38:59 AM org.xnio.Xnio <clinit>
INFO: XNIO version 3.3.1.Final
Eyl 25, 2016 10:39:00 AM org.xnio.nio.NioXnio <clinit>
INFO: XNIO NIO Implementation Version 3.3.1.Final
Eyl 25, 2016 10:39:00 AM org.jboss.remoting3.EndpointImpl <clinit>
INFO: JBoss Remoting version 4.0.9.Final
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.176 s
[INFO] Finished at: 2016-09-25T10:39:00+03:00
[INFO] Final Memory: 19M/272M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.wildfly.plugins:wildfly-maven-plugin:1.1.0.Alpha11:deploy (default-cli) on project ozmuzik-test-server-ejb: Failed to execute goal deploy: {"WFLYCTL0062: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-1" => {"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\".POST_MODULE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of deployment \"ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\"
[ERROR] Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class com.ozmuzik.test.server.timer.AutomaticSayHello with ClassLoader ModuleClassLoader for Module \"deployment.ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar:main\" from Service Module Loader
[ERROR] Caused by: java.lang.NoClassDefFoundError: com/facebook/mobile/selenium/ChromeWrapper
[ERROR] Caused by: java.lang.ClassNotFoundException: com.mobile.selenium.ChromeWrapper from [Module \"deployment.ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar:main\" from Service Module Loader]"},"WFLYCTL0412: Required services that are not installed:" => ["jboss.deployment.unit.\"ozmuzik-test-server-ejb-0.0.1-SNAPSHOT.jar\".POST_MODULE"],"WFLYCTL0180: Services with missing/unavailable dependencies" => undefined}}}
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException