[JBoss OSGi Development] - PROPERTY_AUTO_START
by adrian@jboss.org
Further to the resolver discussion;
I've removed the use of PROPERTY_AUTO_START since this is already
available in the deployment layer as DeploymentUnit.getRequiredStage()
Any processing done in OSGi, should respect what other apis choose for this flag,
although AFAIK nobody else uses it?
As far as I understand it, the purpose is to not "start" (resolve) bundles
unless they are needed by classloading or something in persistent storage says
they should be started.
The setting of the RequiredStage is already done by the OSGiBundleStateDeployer
when the bundle is installed, but there is currently no persistent state, so there is a
TODO there.
I've still yet to understand what all this extra processing is actually doing.
>From what I described on a different thread, this processing is also broken:
http://www.jboss.org/index.html?module=bb&op=viewtopic&t=160839
I don't mean the choice of wrapper versus extension which is just a choice
of elegance and maintainability.
NOTE: This is very different from the lazy start feature of OSGi
where we should leave the deployment in the CLASSLOADER/RESOLVED stage
until somebody loads a class. What is happening here is things are being moved
to the INSTALLED/ACTIVE stage out of the normal sequence.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4265118#4265118
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4265118
14 years, 11 months
[JBoss OSGi Development] - Re: Handle potential bundle:// protocol with VFS
by david.lloyd@jboss.com
"alesj" wrote : "dml" wrote :
| | However this is done, it shouldn't use the host name field (recall the problems with vfsmemory URLs).
| |
| What was the vfsmemory problem again?
| Or what do you suggest - apart from the below idea?
|
The problem was that the uuid in the host name field isn't a valid host name, so things that expect it to be one failed when they tried to do DNS lookups and so forth. This is the real abuse - the lesson is that for URLs, the host name field should only contain a host name, and the port field should only contain a port. If there is no host name or port, then the URL scheme-specific part should start with "///" and any additional data should be contained afterwards. Or, use a URI instead.
"alesj" wrote : "dml" wrote :
| | Personally I think the best solution would be to have a global VFS location where bundles can be found by ID, e.g. file:///osgi/bundles/by-id/[id]/[path] in VFS3 or the equivalent in VFS2.
| |
| I don't think we should abuse file protocol too much.
|
It's not an abuse, it's in line with the design (well, of VFS3 anyway). Also, using file: has the advantage of working with the default security manager policy parser without having to add yet more handler stubs to the boot classpath.
I think there's a lot of power to be had by mounting OSGi bundles in a consistent file-based scheme for VFS3. It would make finding resources a snap, and it could potentially simplify bundle classloaders as well. Basically it solves all the problems that bundle: does, and it has additional benefits besides. Seems like a perfect fit to me.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4265108#4265108
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4265108
14 years, 11 months