Network Deployment (Distributed operating systems), v8.0 > Administer applications and their environment > Administer OSGi applications > Maintain an OSGi composition unit
Update an OSGi composition unit
If a new OSGi application deployment is available, you can update the OSGi composition unit so that the business-level application uses the newer configuration. If any of the updates contain configuration options, a wizard prompts you to update the configuration information.
Before you begin
This topic assumes that we have either updated the asset that the composition unit contains, or added a composite bundle as an extension to the composition unit. You do not have to update the composition unit every time you update the asset or add a composite bundle extension. We cannot update the composition unit until all bundle downloads are complete.
We can update an OSGi composition unit by as described in this topic, or by using wsadmin commands as described in Update an OSGi composition unit using the editCompUnit command.
About this task
An OSGi composition unit consists of an EBA asset, (optionally) one or more composite bundle extensions, and configuration information for running the asset and composite bundle extensions in a business-level application. The configuration information can include HTTP session management, context roots, virtual hosts, security roles, run-as roles, and web application or Blueprint resource reference bindings for your OSGi application.
When all bundle downloads are complete, you can update the OSGi composition unit so that the business-level application uses the newer configuration. If any of the updates contain configuration options, a wizard prompts you to update the configuration information. We can also take the opportunity to make additional, non-essential configuration changes.
For transitioning users: In the WAS v7 Feature Pack for OSGi Applications and Java Persistence API 2.0, bundle changes to the asset are applied by restarting the business-level application, rather than by updating the composition unit. The current approach means that many bundle changes can be applied in place, without restarting the running business-level application.
This topic describes the specific task of updating an OSGi composition unit. The more generalized task of updating the configuration of any composition unit is described in Update business-level applications.
Procedure
- Start the administrative console.
- Navigate to Applications > Application Types > Business-level applications > application_name > composition_unit_name.
The Composition unit settings panel is displayed. The deployment status is displayed under [General Properties] OSGi application deployment status, and shows one of the following values:
- Use latest OSGi application deployment.
- New OSGi application deployment not yet available because it requires bundles that are still downloading.
- New OSGi application deployment available.
- New OSGi application deployment cannot be applied because bundle downloads have failed.
If the status is "New OSGi application deployment available", the Update to latest deployment ... button is available.
- Update the composition unit to use the latest version of the EBA asset or composite bundle extension.
If the status is "New OSGi application deployment available", click Update to latest deployment .... The Preview composition unit upgrade [Settings] panel is displayed.
Because multiple updates might be available, and because updates do not have to be applied immediately, you might not be fully aware of the changes that you are about to make to the deployed application. So that you can see the cumulative effect of all the changes, this panel displays the complete list, bundle by bundle, of the updates that are about to be applied. If the result is not what you want, you can cancel the update. Otherwise, click OK.
- Update the configuration information for running the asset or composite bundle extension in the business-level application.
Bundle changes might also require configuration changes to the composition unit. For example, if you update a bundle in an EBA asset, or replace a composite bundle extension, you might introduce a resource that requires additional configuration, such as a new or changed Blueprint resource reference, or security role mapping.
If any of the updates contain configuration options, a wizard prompts you to update the configuration information. This wizard is based on the Set options settings wizard that you use when creating a new OSGi composition unit. See Add an EBA asset to a composition unit .
- Save your changes to the master configuration.
Results
When you save the changes to the composition unit, the associated business-level application is updated to use the new configuration. If the business-level application is running, the bundle and configuration updates are applied immediately. If possible (that is, depending on the nature of the updates) the system applies the updates without restarting the application. If you update a bundle that provides only OSGi services to the rest of the application, then only that bundle is restarted. If you update a bundle that provides one or more packages to other bundles, then those bundles and any bundles to which they provide packages are restarted. If, however, a new package or service dependency is added, or an existing package or service dependency is removed, then the application is restarted; a newly added package and service can come from a newly-provisioned bundle, or from a bundle that has already been provisioned. Messages relating to any restart operations are written to the WAS SystemOut.log file.
Subtopics
- Update an OSGi composition unit using the editCompUnit command
Use the editCompUnit command to select a composition unit that contains an enterprise OSGi application, and update the composition unit so that the business-level application uses the newer configuration. If any of the updates contain configuration options, run the editCompUnit command a second time to update the configuration information. We can also take the opportunity to make additional, non-essential configuration changes.
Parent topic: Maintain an OSGi composition unit
Parent topic: Update bundle versions in a deployed OSGi application
Parent topic: Extend a deployed OSGi application
Related concepts:
About OSGi ApplicationsRelated tasks:
Add or removing extensions for an OSGi composition unit
Modify the configuration of an OSGi composition unit
Check the bundle download status of an EBA asset
Update bundle versions for an EBA asset
Check the update status of an OSGi composition unit
Develop a composite bundle
Secure OSGi ApplicationsRelated reference:
OSGi Applications: Troubleshooting tipsRelated information:
Preview composition unit upgrade [Settings]
Task topic Feedback
Copyright IBM Corporation 2009, 2011. All Rights Reserved.
This information center is powered by Eclipse technology.