netbeans 源文件_具有NetBeans,WebLogic 12c,JPA和MySQL数据源的Arquillian

netbeans 源文件

您可能已关注我的文章,该文章介绍了如何使用嵌入式GlassFish测试更复杂的场景( 第I部分/第II部分 )。

在我要做的事情上,下一步是使此设置与最新的WebLogic 12c一起使用。






入门

按照我的前两个帖子的入门部分中的步骤进行操作。 为了使此工作正常,您只需更改几件事。 显然,您需要一个WebLogic 12c。 从OTN下载页面复制副本。 阅读并接受许可,然后下载适用于您的OS的ZIP安装程序或完整安装程序。 Arun Gupta有一篇不错的文章,介绍如何开始使用ZIP安装程序 。 这基本上是关于下载,提取,配置和创建您的域。 假设您有一个domain1。 确保将mysql-connector-java-5.1.6-bin.jar复制到domain1 / lib并通过domain1根目录中的startWebLogic.cmd / .sh启动服务器。 接下来,您需要配置适当的连接池。 您也可以使用一些WLST魔术或新的WebLogic Maven插件来执行此操作,但是我认为您是通过管理控制台来执行此操作的。 转到“域>服务>数据源”,并使用jndi名称“ jdbc / auditlog”创建一个MySQL数据源AuditLog。 执行测试时,请确保服务器正在运行!

修改sampleweb项目
现在,打开sampleweb项目的pom.xml,并删除所有包含glassfish-embedded的依赖项以及arquillian-glassfish-embedded-3.1和javaee-api。 现在添加wls-remote-12.1容器和jboss-javaee-6.0依赖项:

<dependency>
           <groupId>org.jboss.arquillian.container</groupId>
           <artifactId>arquillian-wls-remote-12.1</artifactId>
           <version>1.0.0.Alpha2</version>
           <scope>test</scope>
 </dependency>
 <dependency>
           <groupId>org.jboss.spec</groupId>
           <artifactId>jboss-javaee-6.0</artifactId>
           <version>1.0.0.Final</version>
           <type>pom</type>
           <scope>provided</scope>
       </dependency>

现在打开arquillian.xml描述符并更改容器设置以使用wls容器:

lt;container qualifier="wls" default="true">
        <configuration>
            <property name="adminUrl">t3://localhost:7001</property>
            <property name="adminUserName">weblogic1</property>
            <property name="adminPassword">weblogic1</property>
            <property name="target">AdminServer</property>
            <property name="wlsHome">X:\path\to\wlserver\</property>
        </configuration>

确保使用正确的目标服务器并指向正确的wlsHome。 右键单击NetBeans中的AuditRepositoryServiceTest,然后运行“测试文件”。 您将看到远程容器正在做一些工作:

22.01.2012 22:40:34 org.jboss.arquillian.container.wls.WebLogicDeployerClient部署
信息:启动weblogic.Deployer部署测试工件。
22.01.2012 22:40:46 org.jboss.arquillian.container.wls.WebLogicDeployerClient forkWebLogicDeployer 信息:weblogic.Deployer似乎已成功终止。 22.01.2012 22:40:53 org.jboss.arquillian.container.wls.WebLogicDeployerClient取消部署 信息:启动weblogic.Deployer取消部署测试工件。 22.01.2012 22:41:00 org.jboss.arquillian.container.wls.WebLogicDeployerClient forkWebLogicDeployer 信息:weblogic.Deployer似乎已成功终止。

而且测试呈绿色! 如果查看域日志,可以看到test.war模块已成功部署和取消部署。

言论与思想
看一下WebLogic 12c(特别是新的Maven插件)所具有的功能,这一切似乎都是手工制作的。 在基于Maven的项目中,WebLogic开发人员在此之前会做什么? 他将把weblogic.jar推送到本地存储库中并使用它,而不是使用任何jboss-javaee-6.0或javaee-api依赖项。 如果使用Arquillian wls容器尝试此操作,您将开始看到一些奇怪的异常,如下所示:

加载类:javax.transaction.SystemException
线程“ main”中的异常java.lang.ClassFormatError:缺少代码
类文件中不是本机或抽象的方法中的属性 javax / transaction / SystemException

这基本上是因为只有wlfullclient.jar包含了通过JMX进行远程管理所需的所有类。 神奇的weblogic.jar的清单中确实有一些附加的类路径条目,如果将其放入本地m2存储库中则无法解决。 因此,您只剩下两个选择。 使用wlfullclient.jar( 请参阅如何在docs中构建它 )进行测试,并使用weblogic.jar进行开发,或者坚持使用jboss-javaee-6.0依赖项进行开发和测试(提供了作用域)。 两者都是有效的替代方法。 如您所见, Arquillian文档中仍未记录WebLogic容器。 您可以在github上的wls-container项目中找到更详细的文档。
下载simpleweb-wls.zip项目作为参考,以帮助您入门。
感谢Vineet和Aslak的帮助!

参考: Arquillian与NetBeans,WebLogic 12c,JPA和来自我们的JCG合作伙伴 Markus Eisele MySQL数据源Java企业软件开发博客上。


翻译自: https://www.javacodegeeks.com/2012/01/arquillian-with-netbeans-weblogic-12c.html

netbeans 源文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值