写点什么

Gavin King 提供 Web Beans 预览(JSR 299)反映受 Guice 启发的依赖注入特征

2007 年 9 月 28 日

Gavin King 发布了即将面世的 Web Beans( JSR 299 )规范的 4 部分预览( 1 2 3 4 )。Web Beans 由 JBoss 发起,旨在填补在 JEE 5 中 Web 层和事务层之间的断层。JSR 的成员包括 Sun、Oracle 和 Google。King 表示该组件模型深深地受到了 Google Guice Seam 的影响。

本系列的第一部分对该技术进行了介绍:

……Web Beans 是与两个层中的技术都兼容的组件模型。Web Beans 能与 JSF 和 EJB3 都集成,允许 EJB3 会话 Bean 扮演 JSF 管理 Bean,这样就统一了两个组件模型。此外,Web Beans 提供了会话模型和持久化上下文管理,因而解决了状态管理问题以及影响 JSF 和 JPA 的最优化事务管理问题……Web Beans 是包含业务逻辑的应用组件。Web Beans 可以被 Java 代码直接调用,或通过统一 EL 被调用。Web Beans 可以访问事务性资源。Web Beans 间的依赖自动的被 Web Beans 容器管理。大多数 Web Beans 是有状态和上下文相关的。Web Beans 的生命周期总是被容器管理……

本系列的第二部分涵盖了规范的注入、绑定标注和组件类型。支持的注入类型包含:

  • Direct Field
  • Method
  • Constructor
  • Parameter

本系列的第三部分提供了通过XML 替代标注声明组件的例子。最后, King 论及了作用域、上下文和解析器方法。可用的作用域如下:

  • @RequestScoped
  • @SessionScoped
  • @ApplicationScoped
  • @ConversationScoped

正如被期望的,如此数量庞大的内容已有了相同数量级的评论。其中一个较为有趣的言论是:

在过去的几年间,有非常多的言论谈及 Interface 21 或许应该正式推动 Spring 框架成为 JEE 规范的一部分——只要 Rod Johnson 正式宣布对 JEE 6 的支持,这似乎是有可能的……嗯,看起来“疯狂的”Bob Lee 和 Guice 背后的团队可能已经找到了让自己抢先挤入这场聚会的后门——根据关于即将面世的 Web Beans 的新一系列的文章来看,新规范的确被 Seam 和 Guice 联合影响了……我发现这些文章有趣之处在于 Google 明显采用了 JBoss 的方式去支持 JCP——那就是,创建一个独立的产品填补 JEE 规范中的一整块,然后利用 JCP 使那个产品成为规范本身(JPA 就是前车之鉴)……

类似的评论可在这些文章本身中找到:

非常有趣——其中与 Seam 有明显的联系,但这是我第一次看到任何与 Guice 团队有牵连的东西……我不得不怀疑“Web Beans”这一术语是否准确……

King 针对它的回答:

Seam 可能最终将分成两层:1) 核心组件引擎,它将发展成 Web Beans RI 2) 框架层,它将提供所有的内置组件、JSF 组件等等……Bob 为这个规范已经贡献了极大的努力和心血。

查看英文原文: Gavin King Provides Web Beans Preview (JSR 299) Featuring Guice Inspired Dependency Injection

2007 年 9 月 28 日 01:00331
用户头像

发布了 255 篇内容, 共 45.4 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
  • 第 185 讲 | 狼叔:2019 年前端和 Node 的未来—大前端篇(下)

    今天继续分享移动端局面、多端拉齐的必然性等内容,以及2019年不可忽视的TypeScript和WebAssembly这两大技术。

    2019 年 3 月 12 日

  • 网易严选企业级 Node 及 Serverless 应用实践

    演讲嘉宾金炳,网易资深前端开发工程师,网易严选Node负责人。 2016年加入网易,负责过邮箱大师、网易严选等产品前端开发,做过前端、后端、产品设计,是一名全栈工程师。目前致力于Node应用框架研究开发与生态建设,实践Node应用在Serverless、Faas场景下的迁移和落地,探索Service Mesh在Node应用中的价值。内容介绍网易严选作为原创生活类自营电商品牌,其供应链、采购、财务、数据等,具有业务变更频繁、流程复杂性高、跨系统协作多的现状,使得业务系统前端开发在开发和维护中变得越来越困难。因此,构建一个架构设计优良、功能全面、质量稳定的Node应用框架显得尤为重要。我们基于TypeScript设计和开发了严选Node框架,抽象了应用生命周期管理,完成了Node生态建设,建立了与业务系统和技术中台的对接规范。在整个框架的开发和落地过程中,我们还实践了Serverless场景的应用,探索了Service Mesh在Node应用中的价值,希望能给大家带来一些思想的碰撞。

    2019 年 7 月 24 日

  • 构建 Java API 的艺术:Do's and Don'ts(英文演讲)

    演讲嘉宾Jonathan Giles,微软资深云开发者布道师。内容介绍作为Java开发者,我们都是站在巨人的肩膀上,使用其他人开发的API,从而走的更远。有时我们也要提供自己的API供其他人使用。构建Java API也不是没有风险的,我们必须非常熟悉语言特性,必须理解破坏兼容性的影响,必须担负起创建完美的文档等责任,还有最重要的,我们必须保持克制。Jonathan Giles将带来的这场演讲,将向开发者分享如何构建自己的API,不管是内部使用、开源项目还是商用库。重点谈的也是构建Java API,而不是REST API或其他内容。Jonathan有十多年的Java API构建经验,他最初在Sun和Oracle的Java团队,参与了 Java 7、8、9和10等版本的开发工作;最近他加入微软担任云开发者布道师,和工程师团队紧密协作,改进Azure上的Java API。演讲将分享开发者应该遵循的技巧,以及应该避免的问题。

    2018 年 11 月 8 日

  • JavaOne 大会谈 JBI 2.0

    Sun公布了JBI2.0技术委员会,在JavaOne举行了一场面对面讨论会,并接下来举行了整晚JBI相关的活动。

  • 为 Web 应用构建 Spring—Seam 混合型组件

    Spring和JBoss Seam框架为企业web应用的开发分别提供了不同的特性,但能否在web应用中将这两个框架结合使用呢?最近有一篇文章就以这个问题为中心而展开,并且,java社区论坛也引发了关于如何在同一个应用中同时使用这两个框架的讨论。

  • SCA 访谈

    自从SCA于2005年发布面世以来,它已成为许多热门讨论的主题。在2007年,这些规范被捐献给OASIS并且创建了OpenCSA论坛。最近,这些OpenCSA成员举行了第一次全体大会,同时举行了首次标准工作组的面对面会议。我们有机会就SCA、标准化和应用这些话题采访部分与会者。

  • 微信小程序之 API 概述

    2018 年 4 月 12 日

  • 未来可期的 TypeScript

    2019年,越来越多的知名前端开源项目选择使用 TypeScript 做为其新版本的开发语言,TypeScript 的社区支持也日趋完善,VS Code + TypeScript 的组合拳让不少原本持怀疑,甚至抵制态度的前端开发者们不禁喊出“真香!”。本次,分享者将讲述自己从一名 TypeScript 抵制者转变为支持者的心路历程,以及 TypeScript 在腾讯在线教育团队中的实践经验,并对团队新项目是否该引入 TypeScript、如何快速搭建、以及现有项目如何向 TypeScript 迁移提供策略性建议与方案。讲师简介郭翔,腾讯高级前端工程师,IMWEB 团队成员。2013年从澳大利亚 Monash University 取得硕士学位后加入 AWD 公司,从事 Web 前端领域的技术研究工作。2016年加入腾讯,先后负责手机 QQ 浏览器话题圈、信息流,企鹅辅导的前端架构与研发工作。工作之余,积极参与公司内外的开源协同工作。现阶段主要致力于通用可视化页面编辑系统的架构设计与研发工作。对跨端、可视化运营、前端工程化、设计师与前端协同系统等领域有着深入的研究和丰富的实践。

    2020 年 1 月 20 日

  • Spring 泛型集合类型辅助类:GenericCollectionTypeResolver

    2020 年 6 月 4 日

  • Caucho Resin 通过 Java EE 6 Web Profile 的官方认证

    Caucho公司的Resin,从4.0.17版本开始,成为兼容EE 6 Web Profile实现的认证产品。该公司透露了他们取得认证的目的,实现细节可参照免费的PDF白皮书。

发现更多内容

解决 Jenkins 中使用代理来执行 npm install 的问题

jerry.mei

Docker DevOps 运维 jenkins

架构师训练营总结 -2

River Tree

架构 总结 软件设计原则

第二周 作业

chinsun1

架构师训练营-作业2

Jemmy

架构师训练营第二周作业

aoeiuvzcs

极客时间第 0 期架构师训练营第二周作业

2流程序员

第2周 学习总结

sunpengjian

架构师训练营 No.2 周总结

连增申

第二周作业

ruettiger

架构师课程第二周总结

dongge

课堂作业week2

Dennis

架构师训练营丨第二周丨学习总结

Frode

极客大学架构师训练营

第二周作业 - 命题作业

molly

极客大学架构师训练营

设计模式与设计原则(第二周总结)

麻辣

[笔记]Reportlab生成PDF(表格)

森蓝Senlan

Python PDF

接口隔离原则优化 Cache 类设计

张磊

架构师训练营-Week 02 命题作业

华乐彬

极客大学架构师训练营 设计原则

Week02总结

张磊

面向对象设计的基本原则 --周总结

独孤魂

作业

架构师训练营WEEK2作业

班戟鱼

Week001总结作业

徐培

第二周作业

田振宇

<<架构师训练营>> 第二周学习总结

0x12FD16B

架构师训练营week2 命题作业

a晖

第二周总结:设计原则

远方

Week2学习总结

丿淡忘

极客大学架构师训练营

第二课学习总结

lwyanhao

【第二周】命题作业——软件设计原则

三尾鱼

面向对象 极客大学架构师训练营

第二周 软件设计原则 小结

chinsun1

架构师训练营第 02周—— 练习

李伟

极客大学架构师训练营

第二课作业

lwyanhao

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

Gavin King提供Web Beans预览(JSR 299)反映受Guice启发的依赖注入特征-InfoQ