I’ve been watching with interest the work of the OSGi Enterprise Expert Group (EEG). It’s been a slow process, as any standardisation effort should be, but they now appear to be on the home straight and have started releasing deliverables. For example, there is an implementation of the Distributed OSGi draft specification available in the Apache CXF project, which Eric introduces in his post. I’m looking forward to trying it out.
But the reaction to Enterprise OSGi has not been universally positive, even from people who support core OSGi. For example here is one representative comment I saw on Twitter:
So, now OSGi tries to be a distributed communication layer too. There’s even an rfc for transactions. Was a good lightweight thingy, too bad.
I really do understand where this comment is coming from. As a Java programmer watching the JVM turn from a lightweight platform into a bloated monstrosity, it’s natural to associate “more” with “worse”. Heavens, these days the JDK includes a database and comes with the sodding MSN Toolbar. But OSGi is not like the JDK. The comment above fundamentally misunderstands the nature of a modular platform, and makes me wonder if the commenter really knows anything at all about OSGi.
The distributed RFC, the transactions RFC and everything else form an optional layer above the core OSGi framework. That core is just as thin and lightweight as it ever was. There is absolutely no chance that enterprise features are going to find their way into the core framework such that you will no longer be able to use OSGi in embedded devices… in fact I believe that Peter Kriens would literally murder Eric Newcomer and the rest of the EEG before he allowed that to happen.
So I find it hard to stomach the negativity towards Enterprise OSGi, since it comes from simple ignorance. If you think that distribution and transactions are stupid, then just ignore Enterprise OSGi. If you prefer to implement distribution some other way, e.g. with REST, then go ahead. The absolute worst possible outcome from Enterprise OSGi is that a bunch of people wasted some (okay, a lot) of their time writing specs that nobody will use. That’s very unlikely, but even that would have been a useful learning exercise.
分享到:
相关推荐
《企业OSGi实战》一书是OSGi企业应用的权威指南,它不仅涵盖了OSGi在企业环境中的应用,还提供了Java企业版(Java EE)与OSGi特性的融合方法。本书详细介绍了模块化编程的重要性,以及OSGi如何强化Java的模块化能力...
根据提供的文件信息,本书的标题为《Enterprise OSGi in Action》,由Holly Cummins和Timothy Ward撰写,特别使用了Apache Aries作为实例来进行介绍。书中的内容覆盖了OSGi技术在企业级应用开发中的使用,强调了OSGi...
《Enterprise OSGI in Action》是一本专注于企业级OSGI应用的教程书籍,由Holly Cummins和Timothy Ward撰写,利用Apache Aries的实际示例来指导开发者如何构建和管理企业级的应用程序。本书不仅适合初学者入门,也...
在探讨Java企业级应用开发时,Enterprise OSGi(Open Service Gateway Initiative)已成为一个重要的技术选择。OSGi技术标准为Java开发者提供了一种构建模块化Java应用程序的方法,这些应用程序能够与现有的Java EE...
The OSGi Enterprise Expert Group (EEG) is chartered to define the technical requirements and specifications to tailor and extend the OSGi framework to address information technology software ...
This is a book about the enterprise OSGi programming model, and it’s also a book about using OSGi in the enterprise. It shows you how to combine OSGi’s elegant, modular, service-oriented approach ...
HIGHLIGHT OSGi in Action is the definitive guide to OSGi, the hottest technology available for creating modular enterprise Java applications. DESCRIPTION What is OSGi? Simply put, OSGi is a ...
The Java™ programming language is one of the most popular languages today ...That module system is called OSGi. OSGi is nothing more nor less than the way to build modular applications in Java.
### OSGi Enterprise 6规范解析 #### 一、OSGi联盟与OSGi Enterprise Release 6 **OSGi联盟**(OSGi Alliance)是一个由众多企业和个人组成的国际性开源社区组织,致力于制定并推广OSGi标准。OSGi是一种模块化系统...
OSGI(Open Services Gateway Initiative)是一种开放标准,用于创建可模块化的Java应用程序。它提供了一种灵活的框架,使得开发者可以构建、部署和管理模块化组件,这些组件被称为服务或bundle。OSGI的核心理念是将...
OSGI(Open Services Gateway Initiative)是一种模块化系统和Java服务框架,它允许应用程序由一系列可独立更新和替换的模块组成,这些模块称为“bundle”。在本实例中,我们将探讨如何利用OSGI技术来开发Eclipse...
With OSGi this is not the case. No longer will you need to check your CLASSPATH variable to avoid running multiple JARs with the same name that may contain conflicting classes. OSGi eliminates this ...
OSGI(Open Services Gateway Initiative)是一种Java模块化系统,它允许开发者将应用程序分解为一系列可独立部署、更新和交互的服务。林昊所著的《OSGI实战》与《OSGI进阶》是深入理解OSGI技术的重要参考资料,适合...
这个压缩包包含了关于OSGI的重要文档,分别是“OSGi R4核心规范文档”、“OSGi服务文档”以及“OSGi-最佳原理与实践”(王昊编著)。下面将详细介绍这些文档所涵盖的关键知识点。 首先,"OSGi R4核心规范文档"是...
OSGI组件编程是一种在Java平台上构建模块化应用程序的方法,它由OSGi联盟制定标准,并被广泛应用于企业级软件开发,尤其是对于需要高度可扩展性和动态性的系统。在本教程中,我们将深入探讨如何使用Eclipse和Equinox...
OSGi(Open Services Gateway Initiative)是一种Java平台上的模块化服务框架,它定义了一种标准,使得开发者能够构建可互操作的、动态的、模块化的软件系统。OSGi的核心概念是基于Java的模块化,它的主要目标是为...
网上收集的OSGI资料. 包括: OSGi原理与最佳实践(精选版).pdf OSGI实战和源码.rar osgi进阶.pdf Introduce.OSGi.ppt OSGi.in.action.ppt r4.cmpn.pdf r4.core.pdf r4.enterprise.pdf
OSGi(Open Services Gateway Initiative)是一种Java模块化系统,它为开发人员提供了一种动态、模块化的运行时环境。在OSGi中,应用程序被分解为称为“bundle”的独立单元,这些bundle可以相互依赖并独立地加载、...