 |
JSR 175, JBoss and AOP
Posted by johnreynolds on February 25, 2004 at 06:51 AM | Comments (5)
Marc Fleury came to Austin this week and took the opportunity to speak at the monthly Austin JUG meeting. This was the first time that I'd heard Marc Fleury in person, and I am happy to say that he's rather entertaining. The meeting was standing room only, and before I knew it I had spent two and a half hours on my feet listening to his vision of the future of JBoss and Java.
It's a darn good vision.
Fleury's web presence has always seemed a bit abrasive to me, but "in the flesh" he is self-deprecating and readily willing to give credit where credit is due. He readily admits stealing every good idea he comes across if it can help make JBoss better, and based on what he presented at the Austin JUG he'd be in for serious jail time if purloining good ideas was a felony.
Of most interest to me are the plans in JBoss 4 to support the declaration of aspects through the use of metadata (initially XDoclet tags, transitioning to JSR 175 metadata when the spec is released).
The JBoss platform has always provided services for object persistence, remote access, and transaction support as have all J2EE app servers, it's called supporting the EJB spec. With the introduction of JBoss 4 these services will be decoupled from each other, and they will be made available to developers on a mix and match basis, only use the services (aspects) that you need. For example, if all you want is persistence for a Plain Old Java Object (POJO), JBoss will provide it.
As with all good ideas, decoupling the aspects of EJBs seems so obvious that one wonders how all the complexity of EJB ever got rolled into one package in the first place. This is certainly a step in the right direction.
Much to my relief the mechanism JBoss will use to specify aspects is also an improvement. Rather then introducing yet more complexity to the plethora of XML configuration files, JBoss will let you specify the aspects that you want on a class by class, field by field basis through the use of XDoclet tags. The declaration of the aspects that you want for your objects will be in the source code, not in a seperate XML document that you have to track down and maintain.
Here's an example from the JBoss site for defining transaction aspects on a method:
/**
* @jboss-aop.metadata group="transaction" trans-attribute="Required"
*/
public void someMethod()
{
}
Fleury also announced that you will be able to precompile JBoss aspects into your class files. Classes with embedded JBoss aspects will be deployable and executable on other J2EE app servers such as BEA's WebLogic. If they can pull that off I will be ecstatic. If features aren't portable they aren't nearly as interesting to me.
Fleury and the JBoss team have made a lot of promises. I for one wish them all the luck in the world in fulfilling those promises.
For more info on JBoss AOP, follow this link...
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
Where is the Beef?
I know myself how good Marc can speak but so far JBoss AOP seems to be an empty promise because they still have the same version for download since July last year. Unfortunately Marc does not code and half of the JBoss core developer left last year starting the Geronimo project competing with JBoss. So far JBoss AOP is a poor man's implementation compared to AspectWerkz even thought they lack to instrument constructors but that is probably just a minor short comming. So Marc, I am still waiting...
Posted by: schaefa on February 25, 2004 at 09:42 PM
-
Where is the Beef?
I was curious to ask about the recent JBoss departures and the Geronimo project, but there simply wasn't time.
Based on the Geronimo web site, the project seems to have entered a quite phase, and there is a very disturbing allegation that some folks simply took JBoss source code and swapped the Apache copyright for the LPGL one: http://incubator.apache.org/projects/geronimo/20031031_jboss.pdf
I would really hate to see a feud in the Open Source community spoil the climate for everyone. Can "Professional Open Source", "Corporate Open Source", "Academic Open Source", and "Enthusiast Open Source" get along with each other?
Posted by: johnreynolds on February 26, 2004 at 06:43 AM
-
Is JBoss still Open-Source?
I know Marc quit well and I learned, the hard way, that he is a slick salesman looking to pull the strings of others. Even thought a project like JBoss needs someone like that the ownership of the project on SourceForge, the JBoss trademark and being the CEO of the JBoss Group is, in my opinion, to much power in one person. But even with that the copyright of the source code in JBoss is with the creator and therefore everyone can take its own code, donate it to another project and/or change the license. Which leads me to believe that the allegation of JBoss was just a marketing gag but the Geronimo project handled it in a very professional manner. For my taste JBoss is not an open-source or shall I say community project anymore. Marc and some in the JBoss Group has no scruple to kick out anyone from the project that is going to compete with them in any way even when it means that they drop the support for a open-source Web container like Jetty if the lead goes to another project. In the last year politics and power games poisoned the JBoss project and showed that open-source, power and money do not mix well.
Posted by: schaefa on February 26, 2004 at 11:16 AM
-
Copyright owner vs. licencing terms
Thanks for the response with respect to the LPGL/Apache licensing issues. I had one of those "Doh!" moments or realization that copyright ownership is seperate from licensing terms. Regardless of the licensing terms (LPGL/Apache), as long as ownership is maintained (rather then assigned), the owner can change the terms in subsequent releases. I found some good info on this at: http://www.linux-mag.com/1999-07/opensource_02.html
Posted by: johnreynolds on February 27, 2004 at 09:38 AM
-
Gemini answer to JBoss
Gemini's response to JBoss claims can be found at:
http://cvs.apache.org/viewcvs.cgi/*checkout*/incubator-geronimo/docs_nopublish/JBoss_20031031.html?rev=1.4
Posted by: johnreynolds on February 27, 2004 at 11:14 AM
|