我试图让 Errai 4.0.0.Beta1 在 Tomcat 中运行,我想知道以前是否有人这样做过?具体来说,我正在尝试确定可以从 Errai(即 Wildfly)中删除哪些依赖项,以及在 Tomcat 上运行 Errai 应用程序所需的任何其他步骤。
当我开始运行时,我会更新这篇文章。
提前致谢。
为了展示如何在Tomcat服务器上运行Errai 4 Maven 项目,我在 GitHub 上创建了一个名为errai-tutorial-tomcat的项目。
先决条件
您的 Errai webapp 必须安装在本地 Maven 存储库 ( mvn install )
创建一个新的 Maven 项目(war 打包)并导入你之前的 webapp
例如:错误教程(https://github.com/errai/errai-tutorial)
<dependency>
<groupId>org.jboss.errai.demo</groupId>
<artifactId>errai-tutorial</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>war</type>
</dependency>
添加 Tomcat 缺少的依赖项
Weld Servlet 核心 ( https://docs.jboss.org/weld/reference/2.3.4.Final/en-US/html/environments.html#weld-servlet )
<dependency>
<groupId>org.jboss.weld.servlet</groupId>
<artifactId>weld-servlet-core</artifactId>
<version>2.3.4.Final</version>
</dependency>
Jersey JAX-RS 核心 Servlet 2.x 实现
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet-core</artifactId>
<version>2.23.1</version>
</dependency>
Java Persistence 2.0 (JSR 317) API 的 Hibernate 定义。
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>1.0.1.Final</version>
</dependency>
在 Web.xml 文件中添加 Weld Servlet 监听器
<listener>
<listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
</listener>
在 Web.xml 文件中添加 BeanManager 引用
<resource-env-ref>
<resource-env-ref-name>BeanManager</resource-env-ref-name>
<resource-env-ref-type>javax.enterprise.inject.spi.BeanManager </resource-env-ref-type>
</resource-env-ref>
在 Web.xml 文件中添加 Jersey JAX-RS 核心 Servlet
<servlet>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<load-on-startup>2</load-on-startup>
</servlet>
在 META-INF 目录中添加 context.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="BeanManager"
auth="Container"
type="javax.enterprise.inject.spi.BeanManager"
factory="org.jboss.weld.resources.ManagerObjectFactory"/>
</Context>
为了展示如何在Tomcat服务器(7.x 或 8.x)上运行Errai 4 (4.1.3.Final) Maven 项目,我在 GitHub 上从头开始创建了另一个名为test-errai4-tomcat 的项目。
现在,它显示一个简单的表单,可以: