|Hot deployment of plan bundle [message #989288]
||Wed, 05 December 2012 09:42
| Seth Helstrip
Registered: September 2012
Wondering whether someone can help me with a Virgo hot deployment question.
I have an application, that has been wired together, using a plan. The bundles used by the application are installed in the usr repo, and then deployed using a plan in the pickup dir.
What I want to be able to do, within a development environment, is to refresh a bundle, within a plan. i.e. If say, I make a change to my model module, to be able to re-deploy it to the usr repo, and for that change to be dynamically included within my application plan. I intend to do the deployment via the Virgo mvn plugin, but need to know how to get the plan to update to include the new binary. The binary is not envisaged (ideally) to have an increment in bundle version.
Anyone know how this is possible?
|Re: Hot deployment of plan bundle [message #990257 is a reply to message #989288]
||Tue, 11 December 2012 10:59
| Charles Vuijst
Registered: July 2009
Searching the forum I encountered this thread for which I assume my question might be related.
In our product we have an option to dynamically add database drivers to the Virgo container. This enables our customers to use any vendor's flavor they like. We wrote a wrapper tool which generates a wrapped jar as OSGi bundle to expose a service via a predefined interface and also generates a plan-file.
Attached is a zip-file containing a (mysql driver) bundle and the plan file.
The bundle we store in the repository/usr folder and the plan in the pickup folder.
When we want to remove the additional driver (we first make sure that it is not used anymore) by removing the plan file from the pickup folder, we encounter exceptions as shown in the attached General.log file.
The stacktrace mentions something about startup while it's originated from a bundle stop. We also tried to execute a similar scenario with a helloworld bundle; that gave a similar result.
At the end, everything works ok even unloading, replacing the driver by a new version, loading and executing!
However, we see Errors in the log which we and our customers do not like.
Anyone might explain the Error and how to prevent this?
See attached log, error:
java.lang.RuntimeException: Bundle 'com.infor.ion.mysql_5.1.6.r004 ' stopped.
Powered by FUDForum
. Page generated in 0.02933 seconds