Apache TomEE结合了众多开源Java EE的实现,诸如GlassFish、JBoss和Apache Geronimo,同时也是仅有的6个通过认证的JavaEE引擎之一。
一、准备工作
下载TomEE,http://mirrors.hust.edu.cn/apache/tomee/tomee-1.7.1/apache-tomee-1.7.1-plume.zip,该版本内核为Tomcat 7,解压即可。
下载Eclipse for JavaEE,必须是Kepler或以上版本,否则不支持Tomcat 7
jdk1.7或以上版本 + Maven 3.x
二、环境搭建步骤及关键代码
1、Eclipse+TomEE
1) 启动Eclipse,菜单Window-Preference-Server-Runtime Environment-Add,增加TomEE(与增加tomcat方法相同);
2) Window-Show View-Servers,增加Server,选择上一步的TomEE;
3) 双击上一步中的Server,勾选如下内容并保存:
增加后需要手动将 tomee.xml和system.properties导入(import - File System)到localhost-config文件夹下。
4) 创建TomEE数据源:在Servers项目中的“TomEE localhost-config”修改tomee.xml,增加如下内容:
<Resource id="myJtaOracleJNDI" type="DataSource"> JdbcDriver oracle.jdbc.OracleDriver JdbcUrl jdbc:oracle:thin:@localhost:1521:orcl UserName Scott Password tiger JtaManaged true </Resource>
数据源创建后,注意要将对应的驱动jar放到tomee的lib中
5) 设置jsp修改后热部署:在Servers项目中的“TomEE localhost-config”修改web.xml,找到jsp的Servlet配置,修改development参数为true。
2、创建Maven Web项目
略
3、增加Rest支持(Jersey)
1) pom.xml增加以下依赖:
<dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-json-jackson</artifactId> <version>2.17</version> </dependency> <dependency> <groupId>org.glassfish.jersey.containers</groupId> <artifactId>jersey-container-servlet</artifactId> <version>2.17</version> </dependency>
2) 创建ApplicationConfig:
@ApplicationPath("rest") public class ApplicationConfig extends ResourceConfig { public ApplicationConfig() { packages("com.company.resources"); } }
3) 配置项目的web.xml,增加Servlet如下:
<servlet> <servlet-name>Jersey REST Service</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> <init-param> <param-name>javax.ws.rs.Application</param-name> <param-value>com.company.ApplicationConfig</param-value> </init-param> </servlet>
4、增加JPA支持(EclipseLink)
1) pom.xml增加以下依赖:
<dependency> <groupId>org.eclipse.persistence</groupId> <artifactId>javax.persistence</artifactId> <version>2.1.0</version> </dependency> <dependency> <groupId>org.eclipse.persistence</groupId> <artifactId>eclipselink</artifactId> <version>2.6.0</version> </dependency>
2) src\main\resources\META-INF\persistence.xml
<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> <persistence-unit name="my-app" transaction-type="JTA"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <exclude-unlisted-classes>true</exclude-unlisted-classes> <jta-data-source>myJtaJNDI</jta-data-source> <class>com.company.Student</class> </persistence-unit> </persistence>
5、发布项目
发布后,修改Servers项目中的“TomEE localhost-config”的server.xml,将其中最后的<Context>标签的reloadable设置为false。否则一旦修改后台,服务器会自动重启。
至此,环境搭建完成。TomEE启动的时候使用Debug模式(否则修改后台后不生效)。
Enjoy!
转载请注明出处O(∩_∩)O~