iDeveloper3.0 Eclipse+Tomcat开发环境搭建攻略

本文主要依据我的另一篇博文,《REST+EJB+JPA 框架在 Eclipse+TomEE 的开发环境搭建》,是针对iDeveloper3.0自身的特殊实现,目前已经简单测试已有功能且都能正常运行,后续再有新的问题发现请及时告知(QQ304679508)。

按照目前已有平台代码,在将工程导入到Eclipse中之前需要做如下改动:

1、pom.xml

增加如下依赖:

<dependency>
   <groupId>org.glassfish.jersey.containers</groupId>
   <artifactId>jersey-container-servlet</artifactId>
   <version>2.4</version>
</dependency>

另外还要将所有的provided的scope去掉。

目的:由于TomEE内置了Apache的JAX-RS实现,所以会与Jersey冲突,解决此冲突的方法是下一步:

2、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>net.huadong.application.ApplicationConfig</param-value>
    </init-param>
</servlet>

这样就强制将REST的implementation设置为Jersey。对应的要将上述的ApplicationConfig修改,如下:

3、ApplicationConfig.java

package net.huadong.application;

import javax.ws.rs.ApplicationPath;
import org.glassfish.jersey.server.ResourceConfig;
  
 
@ApplicationPath("webresources")
public class ApplicationConfig extends ResourceConfig {
    public ApplicationConfig() {
        packages("net.huadong.idev.tpl.privilege.resources");
    }
}

4、persistence.xml

该文件格式在TomEE下有点问题,需要将文件头修改为如下:

<persistence 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 persistence_1_0.xsd"
	version="1.0">

还要注意TomEE数据源JNDI的配置要与persistence.xml中一致

5、final step

至此已经修改完成,剩余的搭建方法可以参考本文开头提到的博文。

6、不足之处

1) 针对登录页面的验证码图片,目前的Response返回BufferImage方式未受支持,需要使用代码中已经注释ImageIO方式

2) 另外:项目启动后在出现“信息: Server startup in ## ms”(即成功启动完成)后,需要等待四五分钟,否则访问REST的url会404,一旦404,就必须再次重启TomEE等待。

欢迎并希望读者找到上述问题原因并解决之,有行之有效的方法时,本文会及时更新。

本文完

Enjoy!

转载请注明出处O(∩_∩)O~

你可能感兴趣的:(eclipse,tomcat,jersey,tomee,iDeveloper)