2014-02-25 55 views
2

存在几种Java EE API,就是这样 - API(接口,域对象,枚举等,但没有实际的类东西)。 API,如JPA,JDBC或JTA。这些API必须具备实现;对于JPA,有像Hibernate,MyBatis或TopLink这样的impls。对于JDBC,每个特定的RDBMS都有驱动程序。对于JTA,有Bitronix和Atomikos。JavaMail API和Tomcat 7实现

但是JavaMail呢?它只是一个API?如果是这样,它有什么常见的实现?如果我将我的Java应用程序(作为WAR)部署到Tomcat 7,这个实现从哪里来(具体地说)? Tomcat是否有自己的JavaMail impl?什么JAR /包/类组成Tomcat impl?

回答

3

JavaMail的是一个标准的JSR 919

TomEE服务器有JavaMail的支持。

配置是很容易的,是这样的

  1. tomee已经自带了apache-tomee-plus-1.6.0/lib/geronimo-javamail_1.4_mail-1.8.2.jar
  2. tomee.xml(在$TOMEE/conf配置),你添加一个条目由Configuring JavaMail
  3. 从你的类里面描述你可以通过@Resource参考邮件会话,如描述在javax.mail.Session resource and smtp authentication
+0

谢谢@Leo(+1),但我只对这里的Tomcat 7感兴趣,而不是TomEE(其中包括各种其他JAR/libs)。你能修改Tomcat 7的答案吗?再次感谢! – AdjustingForInflation

+1

当然。对于香草tomcat,你可以按照这个http://tomcat.apache.org/tomcat-6.0-doc/jndi-resources-howto.html#JavaMail_Sessions – Leo

+0

再次感谢@Leo,但我的问题不是关于*如何使用* Tomcat上的JavaMail。我已经知道大部分的东西。我的问题是,** Tomcat 7的JavaMail实现在哪里?**意思是,它是否打包在某个Tomcat JAR中?如果是这样,哪个JAR?或者JavaMail既是一个API又是一个实现,而Tomcat只是使用它? – AdjustingForInflation