初次接触TomEE,之前用的都是Tomcat,那么TomEE是什么,和Tomcat有什么区别和联系。
TomEE是什么:
Apache TomEE(发音同“tommy”)是一个新的JavaEE服务器,由Apache软件基金会开发,它是从Tomcat而来,同时加入的JavaEE的特征:TomEE=Tomcat+java EE。
作为对直接把Tomcat嵌入到应用服务器的取代,TomEE嵌入了EJB、CDI和其他JavaEE特征到Tomcat里,一个完整符合Web Profile的服务器但同时也保留了Tomcat的领导地位。在没解压的Tomcat里,加入了自己的jar包、一个对conf/server.xml的单一监听器,然后压缩到备份里,通过这样把TomEE的包创建而成,它把所有JavaEE Web Profile特征加到Tomcat上同时没有去掉任何特性。
Apache TomEE使用模式(flavours):
Apache TomEE有3种不同的工作模式可以使用:
Webprofile:
提供了最小的分支版本,同时完全符合JavaEE Web Profile
JAX-RS
JAX-RS建立在Web Profile上,用一个修整过的Apache CXF版本加入对JAX-RS的支持,同时也保证对Web Profile的支持。
Plus
提供了TomEE可用的全部特征,包括了JMS、JAX-WS和JCA,但这次不对JavaEE的支持有所保证。
分析Apache TomEE文件夹结构:
bin
常用的shell/batch脚本
conf
存放TomEE配置文件
webapps
应用程序发布时通过拷贝.war文件到 webapps/目录下
使用Eclipse来搭建开发环境
启动IDE,IDE使用Eclipse,其它的IDE,像Netbeans 和Intellij IDEA可以以同样的方式进行配置。在Eclipse中启动TomEE和你启动Tomcat是相同的过程。
菜单Window-Preference-Server-Runtime Environment-Add,增加TomEE(与增加tomcat方法相同)
然后点击右侧的Add按钮,出现如下界面,勾选红色框标出部分。
Window-Show View-Servers,增加Server,选择上一步的TomEE
双击上一步中的Server,勾选如下内容并保存:
注意:
数据源创建后,注意要将对应的驱动jar放到tomee的lib中
设置jsp修改后热部署
默认情况下,在web.xml文件中,TomEE没有为JSP编译设置开发者参数,也就意味着即使你保存了对他们的更改,JSP也不会更新。为了改变这一点,打开在项目资源管理器里的 localhost-config 文文件夹,位于Servers->Tomcat v7.0 Server下的web.xml文件 ,更改jsp servlet,将开发者模式设为true,在Servers项目中的“TomEE localhost-config”修改web.xml,找到jsp的Servlet配置,修改development参数为true。
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>development</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>