在WildFly上部署Apache Isis

时间:2015-12-16 12:14:46

标签: deployment jetty wildfly isis

我正在尝试在WildFly服务器上部署Apache Isis项目。

该项目只是 simpleapp-archetype-1.10.0 ,它启动并与 mvn antrun:run -P self-host mvn配合得很好码头:运行战争

对于jetty部分,我将配置添加到父pom.xml的org.eclipse.jetty插件中

<plugin>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-maven-plugin</artifactId>
    <version>9.3.2.v20150730</version>
    <configuration>
        <war>${project.basedir}/webapp/target/simpleapp.war</war>
    </configuration>
</plugin>

现在我想在WildFly服务器上部署它,但是我收到以下错误:

  

无法上传部署:{“WFLYCTL0080:服务失败”=&gt; {“jboss.deployment.unit。\”simpleapp.war \“。WeldStartService”=&gt; “服务jboss.deployment.unit。”中的org.jboss.msc.service.StartException。\“simpleapp.war \”。WeldStartService:无法启动服务引起:org.jboss.weld.exceptions.DeploymentException:WELD-001408:不满意类型为IsisJdoSupport的依赖项,注入点为@Default [BackedAnnotatedField] @Inject org.apache.isis.objectstore.jdo.datanucleus.service.support.TimestampService.isisJdoSupport atg.apache.isis.objectstore.jdo.datanucleus.service。 support.TimestampService.isisJdoSupport(TimestampService.java:0)“}}

如何修复此错误,为什么jetty会绕过此错误?

1 个答案:

答案 0 :(得分:2)

我通过Apache Isis邮件列表得到了答案。

  

错误说WildFly尝试做CDI工作。 Jetty只是一个Web服务器,并不支持像CDI这样的Java EE。尝试禁用此应用程序的CDI支持(我不知道具体如何)。

http://isis.markmail.org/message/d3coq6qus3rca7kx

要解决此错误:

使用以下代码将文件 jboss-all.xml 添加到 Simple App Webapp / Web Pages / WEB-INF

<jboss xmlns="urn:jboss:1.0">
    <weld xmlns="urn:jboss:weld:1.0" require-bean-descriptor="true"/>
</jboss>

https://docs.jboss.org/author/display/WFLY8/CDI+Reference

虽然对马丁格里戈罗夫的信任。