OSGi Blueprint Services
I gave a presentation on Monday at the OSGi DevCon in Zurich about Blueprint services.
Blueprint Services is the OSGi standardized version of Spring-DM which I've been working on (both the spec and the implementation over the last weeks).
Below is the presentation. The spec is not published yet, but the implementation code is currently available at:
http://svn.apache.org/repos/asf/geronimo/sandbox/blueprint
This implementation is now integrated into Apache Felix Karaf, a ready to use distribution of OSGi for enterprise / server side applications.
Blueprint Services is the OSGi standardized version of Spring-DM which I've been working on (both the spec and the implementation over the last weeks).
Below is the presentation. The spec is not published yet, but the implementation code is currently available at:
http://svn.apache.org/repos/asf/geronimo/sandbox/blueprint
This implementation is now integrated into Apache Felix Karaf, a ready to use distribution of OSGi for enterprise / server side applications.
OSGi Blueprint Services
View more Microsoft Word documents from gnodet.
Comments
The Karaf link should be: http://felix.apache.org/site/apache-felix-karaf.html
Also, the old Servicemix Kernel docs can still be found at - http://servicemix.apache.org/SMX4KNL/
-Donald
Blueprint is really good.
I'm getting a String Exception, I think it has to do with this code (the LOGGER.debug part):
public Object getComponentInstance(String id) throws NoSuchComponentException {
if (repository == null) {
throw new NoSuchComponentException(id);
}
try {
LOGGER.debug("Instantiating component {}", id);
return repository.create(id);
} catch (ComponentDefinitionException e) {
throw e;
} catch (Throwable t) {
throw new ComponentDefinitionException("Cound not create component instance for " + id, t);
}
}
Additionally, I'm unable to compile Blueprint from source to try a fix.
[INFO] [compiler:compile]
[INFO] Compiling 88 source files to /home/ceefour/vendor/geronimo-blueprint/blueprint-core/target/classes
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Compilation failure
/home/ceefour/vendor/geronimo-blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/container/AggregateConverter.java:[285,49] incompatible types
found : java.lang.reflect.Constructor< ? >
required: java.lang.reflect.Constructor< T >
/home/ceefour/vendor/geronimo-blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/container/AggregateConverter.java:[291,49] incompatible types
found : java.lang.reflect.Constructor< ? >
required: java.lang.reflect.Constructor< T >
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.BuildFailureException: Compilation failure
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:699)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
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:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.CompilationFailureException: Compilation failure
at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:516)
at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:114)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
... 16 more
And I'd like to ask something that's been puzzling me as well, how can I refer to Spring(-DM) beans in META-INF/spring/*.xml from my OSGi Blueprint XML?
And: where can I get the Blueprint XSD? I mean, to put the schema on the XML so the XML editor can give completion assistance.
Thank you.
How many more do we need?