Hi,

I'd just like to give a quick report on what's been going on in Hiveapp, 
even though nobody seems to be interested in that thing. :)


* Incompatible changes to the core:

- JMX support reworked completely. It's not based on annotations  
anymore, instead, you apply an interceptor to register the MBean. This 
gives you more flexibility, as the MBean configuration is not hardcoded 
anymore, but part of the module configuration.

* Compatible changes/improvements to the core:

- Interceptors now intercept *all* interfaces the class implements, not 
just the service interface. This enables several event mechanisms in 
HiveMind, including proper module context changes.

- To achieve the above, ProxyFactory has been extended to support 
building proxies for several interfaces plus a utility method to add 
all interfaces of a class with one method call.

- lots of bug fixes (esp. in the VFS) and several minor improvements 
(ExportManager/Classloader)


* Improvements to hiveapp-maven:

- The plugin is now fully reactor-aware and will mount the output 
directory instead of the JAR file in the repository for any project 
that can be found in the reactor. Like that, you can now completely 
work from within the IDE, no more Maven builds needed during 
development.


* Introducing: hiveapp-jconsole

This is a plugin for JConsole that provides a nice GUI to investigate 
the runtime states of application modules. It contains a searchable 
classloader report (what class as been loaded from where and why) and a 
browser for the module's VFS. All this information is available using 
standard JMX, this plugins only adds a nice GUI. Start JConsole like 
this:

  $ jconsole -pluginpath /path/to/hiveapp-jconsole.jar

and connect to a Hiveapp application to get a new tab in JConsole. 
Screenshots:

  http://www.raffael.ch/stuff/hiveapp-jconsole-1.png
  http://www.raffael.ch/stuff/hiveapp-jconsole-2.png


* Introducing: hiveapp-http

Embed Jetty into your application and get the full drop-in plugability 
of Hiveapp for web applications with just a few lines:

- VFS for resources and JSPs

- Modules can contribute servlets, JSPs, resources etc. just as usual

- Servlets can use gobal modules allowing web applications to partially 
run in their own context while still being able to easily access global 
functionality

- The full class loader functionality of Hiveapp (imports etc) is 
enabled for JSP files, just as it was a "normal" servlet

- A new service model "web-context" is provided; a service using this 
service model is instantiated once per web context

Note that this is a proof-of-concept only. Build hiveapp-http, change to 
testing/boot and run 
ch.raffael.hiveapp.modules.http.test.boot.HiveappHttpTest with its 
classpath (see pom.xml). Then go to http://localhost:8080/index.html to 
see some demos.


Cheers,
   Raffi

-- 
The difference between theory and practice is that in theory, there is
no difference, but in practice, there is.

[EMAIL PROTECTED] · Jabber: [EMAIL PROTECTED]
PGP Key 0x5FFDB5DB5D1FF5F4 · http://keyserver.pgp.com

_______________________________________________
general mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/general

Reply via email to