News: Solstice alpha 0.3 released - OSGi framework for Flex

  1. Solstice is a RIA framework which fuses the power of Flex and OSGi to allow development of modular rich internet applications. What is Flex?
    Flex is a highly productive, free open source framework for building and maintaining expressive web applications that deploy consistently on all major browsers, desktops, and operating systems.
    What is OSGi?
    OSGi technology is Universal Middleware. OSGi technology provides a service-oriented, component-based environment for developers and offers standardized ways to manage the software lifecycle. These capabilities greatly increase the value of a wide range of computers and devices that use the Java platform.
    Out of the box, Solstice provides the following features:
    • An OSGi 4 compliant container with Flex based management console.
    • A platform for deploying modular Flex applications as OSGi bundles.
    • Rich server functionality using Blaze DS to expose OSGi services as remote objects.
    Solstice is based on the following technology:Arum uses Solstice to drive it's "DiDo" product. Solstice currently deploys as a WAR file, but eventually will become a pure OSGi stack - no application server required and you can use which ever OSGi platform you prefer. As a user, simply deploy Solstice.war to your application server. So far it has only been tested on JBoss 4.2.2 and please read the documentation for some initial configuration. As a developer, you can develop OSGi bundles containing Flex modules and use the interface to install and control them. Again, see the documentation for more information. I invite readers to check it out and comment as I'm very keen to improve the next version with your feedback and feel I'm still learning how best to serve the open source community. Subject to workload, I'm prepared to respond to queries here, on my personal blog or via the email address on the Solstice web page as best I can.

    Threaded Messages (9)

  2. Equinox and Felix[ Go to top ]

    # Apache Felix [Editor's note: Equinox and Felix? Both are OSGi containers... I wonder why.]
    Equinox is the actual platform we are using to get the OSGi container running inside the web application and we're using a couple of bundles from Felix to make the platform more complete. Namely, the Service Component Registry and Configuration Admin. Regards, Chris
  3. Clarifying point[ Go to top ]

    On the one hand this is a fine example of mixing an matching service implementations. People should realize that in most cases they can use Felix services on Equinox and Equinox services on Felix. That is part of the value. Just to clarify though. Equinox has both DS (Service Component Registry) and ConfigAdmin in its stable of service implementations.
  4. Re: Clarifying point[ Go to top ]

    Hi Jeff, Thanks for that. Those bundles have only just become stable in February and we'd already put this together by then. Personally I would rather use bundles from a single framework for the sake of consistency and I've dealt with ProSyst in the past and know their work is good. In fact my roadmap for Solstice is to have a pure OSGi stack with no application server and recommend deployment of the bundles in to ProSyst's platform. At that stage Solstice will become a slightly different beast as we won't be including the OSGi platform in the distribution. Please expect to see Solstice using 100% Equinox bundles in the future. For the benefit of others, here's Equinox's bundles page: http://www.eclipse.org/equinox/bundles/ Thanks again. Cheers, Chris
  5. ![ Go to top ]

    Now THIS is really interesting - and possibly valuable. Thanks. I would like to try it on WebLogic 10. I have to ask this - hear me now, hate me later ! : how widespread is the adoption of OSGi ? It's like anything else ... even the best ideas are not useful if the people aren't buying, right ?
  6. Adoption of OSGi[ Go to top ]

    I'd say fairly widespread and gaining popularity fast. Do you use Eclipse? If so, you're already using it. Several people have already tipped it as "hot for 2008" even though it's been around for years! In fact, check out when it had a JSR ... number 8 in 1999! http://www.jcp.org/en/jsr/detail?id=8 Several "big" names are also adopting it: http://www.infoq.com/news/2008/02/osgi_jee But of course Sun are trying to ignore it because they didn't write it. Check out what Peter Kriens has to say about JSR 291 here: http://www.osgi.org/blog/2006/02/jsr-291-dynamic-component-support-for.html Any questions about Solstice, just fire them over to me. :) Cheers, Chris
  7. Can you tell us more about data management? You talk about remote objects, but what about domain objects with orm support? Is this included? Or at least is it possible to deploy module with action script classes, java classes and assemblers, and dynamically instanciate destinations? Emmanuel
  8. Data Management[ Go to top ]

    Hi Emmanuel, We define a remote object with an interface and then register it as an OSGi service but because we define the "Solstice-Service" property when we register it the object is also made available for remoting from Flex. You simply have to define your Java objects in the same bundle and you can map them as ActionScript classes in the usual way (i.e. with the RemoteObject binding). Solstice takes care of the serialisation using BlazeDS which has been slightly modified (through extension, not through code changes) in order to load the objects from the bundle that they live in. With regards to ORM, since your remote objects are just regular Java objects you can then call up Hibernate or whatever ORM framework you like. And of course, because you're using an OSGi framework you could use Spring-OSGi to help you with that as well. (We're using db4o so ORM isn't an issue for us since the database is object oriented anyway.) We haven't gone out of our way to implement a "data management" service mainly because we don't need it and secondly we work closely with Adobe and feel it would be treading too much on the toes of their LiveCycle Data Services/Management product. Hope that helps. Cheers, Chris
  9. I don't really make the difference with what is Eclipse, and what is OSGi. Do you know a good book I should read to learn it? And does a real documentation of Solstice exists? I tried it and run it, and it seems to be a great product, particularly for us, as we develop modulable applications. We were hesitating between Eclipse RCP framework or Flex for our future applications... You seems to have the best compromise here.
  10. Hi Emmanuel, Thanks for your comment. I decided to write a blog entry to address your points: http://techy.brindy.org.uk/2008/03/eclipse-vs-osgi-and-solstice-vs-rcp.html But just so you know, the next version of Solstice will really be an update of the documentation. Thanks, Chris