[Design of OSGi Integration] - Re: OSGiControllerContext design
by adrian@jboss.org
"alesj" wrote :
| In order to register OSGi service, one must have current bundle's BundleContext.
| This changes the concept that we are currently used to - (mostly) one mbean server, main bootstrap kernel - multiple contexts with multiple (m)beans pluged via 'central' state machine.
| Here we have multiple beans / services coresponding to certain bundle context. Where to keep this bundle context information in order to be accessable by MC beans marked as an OSGi exposed / lookup services?
|
The BundleContext should come from the deployment, it is an object that lives
outside the core microcontainer like the KernelDeployment aggregation.
It should be held on the OSGiControllerContext and passed to the OSGi
api facade in which the OSGi service lives.
If you want to integrate other contexts that are not native OSGi (like POJOs mbeans),
this will need an "on the fly" implementation of the bundle context or whatever OSGi
expects.
I can't remember the exact details, since it is a while since I looked at the OSGi api.
I do remember there are some notifications required in there somewhere.
For an example of a simple facade., see the ServiceControllerContext
which pretends to provide a legacy ServiceController,
which is now just a wrapper to the MC.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025047#4025047
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025047
19 years, 1 month
[Design of POJO Server] - Re: Still have insufficient separation of metadata
by adrian@jboss.org
"scott.stark(a)jboss.org" wrote : For example, the ServiceMetaData contains ServiceInjectionValueMetaData which has a transient dependency that can be non-serializable (apparently, I cannot remember now why I marked it as transient):
|
The dependency object is just a "name".
Making it transient, breaks the ServiceInjectionValueMetaData.
When I created the MC api, I left open the possiblity that names could
be something other than String, e.g. I anticapted that we might want to use ObjectName
directly when integrating with JMX.
As it turns out, that would be difficult to implement, since different contexts
won't be able to compare each other's names.
So in the actual code, ObjectName's are turned into their string canonical form.
I still like the idea of being able to use a structured name/id when
this is understood by all users.
Like any serializable contract, if a user uses a name that is not serializable
then they won't be able to serialize the metadata.
But that doesn't mean I'm convinced that we should enforce
a name to be serializable since the user may not want to serialize the metadata.
So basically, I don't see why the dependency field should be transient?
It isn't in AbstractDependencyValueMetaData in the MC metadata (it reuses
the value field from the super class).
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025033#4025033
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025033
19 years, 1 month
[Design of Security on JBoss] - exception when run jboss-4.0.4 with the jboss federation sso
by charles751
help me!
i installed jboss federation sso in jboss-4.0.4.GA as the jboss-sso-1.0CR1
readme.txt file step by step.
when i performed:
run -c default -b node1.jboss.com
the jboss-4.0.4.GA console threw the following exception:
2007-03-05 13:32:38,906 DEBUG [org.jboss.deployment.SARDeployer]
create operation failed for package file:/D:/jboss-4.0.4.GA/server/default/deploy/jboss-sso.sar/
org.jboss.deployment.DeploymentException:
Error parsing the XML file: ;
- nested throwable: (org.jboss.mx.util.JBossNotCompliantMBeanException: Error parsing the XML file: )
at org.jboss.system.ServiceConfigurator.install(ServiceConfigurator.java:196)
at org.jboss.system.ServiceController.install(ServiceController.java:226)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4024980#4024980
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4024980
19 years, 1 month