„OSGi Service Platform” változatai közötti eltérés

[nem ellenőrzött változat][nem ellenőrzött változat]
Tartalom törölve Tartalom hozzáadva
Tiplity (vitalap | szerkesztései)
→‎Támogató szervezet: első fordítás
Tiplity (vitalap | szerkesztései)
227. sor:
** Enterprise Specification (R4.2): March 2010
* OSGi Release 4.3 (R4.3): April 2011
 
== New in OSGi Release 4 ==
The new features of OSGi R4 in brief are as follows:
 
* New modularization capabilities providing enhanced encapsulation of networked services that can share a single [[Virtual Machine]] (VM).
* Modularized class sharing and hiding of implementation details.
* Methods for handling multiple versions of the same classes so old and new applications can execute within the same VM.
* [[Internationalization and localization|Localization]] of OSGi bundle [[Manifest file|manifests]] enabling service deployment anywhere.
* Enhancements in security and policies: The new Conditional Permission Admin service provides an elegant and simple way to manage networked services securely. It also supports dynamic policies that can depend on external (custom) conditions. Combined with R4 support for digital signatures, this provides a central security solution to large deployments of products using the OSGi Service Platform.
* A Declarative Services specification that addresses memory footprint issues that can prevent small embedded devices from using a service oriented architecture to support multiple applications. Additionally, it significantly simplifies the [[Service-oriented architecture|service-oriented programming]] model by declaratively handling the dynamics of services.
* Compatibility with Release 3, requiring no changes for existing OSGi bundles, applications, or services.
 
=== New in Release 4.1 ===
 
OSGi R4.1 was a minor revision intended to clarify certain aspects of bundle [[Booting|initialization]] and loading in order to improve [[Third-party software component|third party]] usage. It added no new services or major features.
 
=== New in Release 4.2 ===
 
OSGi R4.2 was a significant release that added several new services and capabilities,<ref>{{Cite web
| title = OSGi 4.2 released
| url = http://www.infoq.com/news/2009/09/osgi-4-2-released
| accessdate = February 16, 2010}}
</ref> including:
 
* '''Framework launching''': Standardized means to launch OSGi from various providers
* '''Remote Services''': Allows the exporting of services to remote [[Virtual machine|VM]]s (formerly known as Distribute OSGi)
* '''Blueprint Service''': [[Dependency injection]] and [[inversion of control]] (similar to [[Spring Framework|Spring]]) that allows external configuration of bundle dependencies
* '''Bundle Tracker''': Track and respond to changes in bundle presence and state
* '''Service Hooks''': Allow introspection and behavior modification of service calls to inject security or dynamicism
* '''Conditional Permissions''': Support negative permissions, forbidding specific actions instead of just allowing them
 
More information can also be specified in each bundle header, such as license information, [[MIME]] types and icons. Additionally, changes to Declarative Services allow the easier setting of permissions. Finally, OSGi bundles can now have their return values read.
 
OSGi R4.2 also introduced a new specification release for the enterprise<ref>{{Cite web
| title = OSGi ALLIANCE PUBLISHES ENTERPRISE SPECIFICATION
| url = http://www.osgi.org/wiki/uploads/News/2010_03_23_OSGi_Releases_Enterprise_Specification.pdf
| accessdate = November 28, 2011}}
</ref> including support for:
 
* '''Web Applications''': A standardized format for building OSGi web applications packaged using the [[WAR file format (Sun)]]
* '''JPA Service''': Provides a reliable standard mechanism to use the [[Java Persistence API]] in OSGi
* '''JNDI Service''': Allows integration of the OSGi service registry and the [[Java Naming and Directory Interface]]
* '''JDBC Service''': Provides an OSGi lifecycle-aware mechanism to obtain connections to an external [[Database]]
 
=== New in Release 4.3 ===
 
* '''Generics''': The framework now uses JDK5 generics in several places. However, Java 1.4 can still be targeted using "<tt>-source 1.5 -target jsr14</tt>" switches to javac.
* '''Capabilities''': A set of attributes in a namespace in a module's meta information, such as osgi.wiring.package <tt>Export-Package</tt>.
* '''Requirements''': A filter expression over the attribute set of a capability, such as osgi.wiring.package <tt>Import-Package</tt>.
* '''adapt''': Replaces Framework services; adapts Bundle to another type (if supported). Replaces PackageAdmin and StartLevel services with APIs which a Bundle can be adapted to.
* '''WeavingHook''': The WeavingHook services allows load-time bytecode weaving.
* '''ResolverHook'''s and '''BundleHook'''s: Replaces the nested frameworks and composite bundles proposal with low-level capabilities to influence requirement-capability matching.
* '''Service EventListener Hook''': Replaces Service Event Hook with finer-grained event delivery control.
 
== Related RFCs and Java Specifications ==