jpa - Jetty 可以用作 Java EE 轻量级应用服务器吗?

标签 jpa jakarta-ee richfaces jsf-2 jetty

在各种客户端站点部署小型 Java EE Web 应用程序的范围内,我正在寻找一种简单的应用程序服务器解决方案。

我想我记得听说可以将 Jetty 用作 JavaEE 6 轻量级应用程序服务器,但我现在似乎无法在网络上找到更多证据。

知道我的开发环境是 JSF2 + RichFaces、CDI(焊接)和 JPA 2 => 目前没有 EJB),Jetty 对我来说是一个可能的解决方案吗?

如果是的话,你能给我指出一些帮助我的文档或特定关键字吗?
如果不是,我应该使用什么其他轻量级 Java EE 6 应用程序服务器?

最佳答案

Jetty 是一个 servlet 容器,就像 Tomcat 一样。目前,它完全不适合作为 Java EE 6 应用服务器,因为该堆栈中 servlet 容器的核心要求是 Servlet 3.0 容器。

Jetty 7 是最新的稳定版本,仍然是 Servlet 2.5。目前没有人知道支持 Servlet 3.0 的 Jetty 8 什么时候发布,但实验版本已经可以下载了。见 http://www.eclipse.org/projects/project-plan.php?projectid=rt.jetty

即使 Jetty 8 最终可用,您当然仍需要添加 JSF2 (Mojarra)、CDI (Weld) 和 JPA2 (Hibernate)。

目前轻量级的替代品是 Glassfish V3(尤其是 Web Profile 版本)。这需要 47MB 的下载量,并为您提供完整的网络配置文件。 Glassfish 在现代系统上启动大约需要一秒钟,而在旧系统上则大约需要 2 或 3 秒。内存开销最小。

另一种选择是 Caucho 树脂。距离获得 Java EE 6 Web Profile 认证(请参阅 http://caucho.com/resin-4.0/changes/resin-4.0.14.xtp)还有一英寸的距离,并且对于所有实际目的而言,它已经完全可用作 Java EE 6 应用程序服务器。虽然我没有亲自使用 Resin,但轻量化似乎是他们的首要任务。
(请注意,“轻量级”是一个含糊不清且备受争议的术语)

最后,您可以尝试一下 JBoss AS 6。很少有人会称 JBoss AS 为“轻量级”(在快速硬件上的启动时间至少为 12 秒,下载大小为 181MB),但它是免费和开源的,并且根据您对轻量级的定义,这些数字可能“足够好” .

关于jpa - Jetty 可以用作 Java EE 轻量级应用服务器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4903823/

相关文章:

java - 我可以为数据库表主键设置一个 MAX 值吗?

java - Wildfly 中可用层的完整列表

java - MVP - 注册点击监听器或使用 CDI 事件?

ajax - richfaces popupPanel : commandButton requires two clicks

java - 动态加载样式表(xhtml 文件)

java - rich :column and rich:columns有什么区别

java - 迭代 POJO 属性

spring - 在 Spring Boot Web 应用程序中创建名称为 'entityManagerFactory' 的 bean 时出错

java - 如何使用 Spring security 从 Spring Data JPA 加载经过身份验证的用户实体模型以在其他 JPA 存储库中使用?

java - 子资源可以在 REST 中更改其 "parent"资源吗?