I'm pleased to announce that JBoss Application Server 4.2.1.GA has been released on July 16th and is available on Sourceforge for downloading.
This is the first bug fixing release of the JBoss Application Server v4.2 series. The aim of this release is to fix the most important bugs reported by the community against JBossAS v4.2.0.GA. There are a few minor components upgrades (Hibernate, JacORB, JBoss TS, JBoss Remoting and Sun JSF) but we have taken extra care for any changes to be fully backwards compatible, so you should be able to switch from 4.2.0 to 4.2.1 without problems.
JBoss 4.2 is a stepping stone from JBoss 4.0 to JBoss 5.0. It combines a lot (but not all) of the exciting new features of JBoss 5, but based on the stable 4.x MicroKernel architecture.
Some of the cool new stuff includes:
The latest version of JBoss EJB3 that is now bundled by default in the .zip distro (no separate installation step), since JBossAS 4.2.x requires a jdk5 runtime.
The JBoss Web container, based on apache tomcat that includes the Apache Portable Runtime (APR) and optional native technologies for achieving truly stellar performance matching and exceeding that of the apache http server.
JBoss Transactions, being the default transaction manager for JBossAS. JBoss Transactions is founded on industry proven technology and 18 year history as a leader in distributed transactions.
Please note that at this point only the .zip distro is released; an installer will come with the final release. Something else to be aware of is that JBossAS will now bind to localhost by default, instead of binding to all available interfaces. This was done because of concerns of users deploying jboss instances without securing them properly.
There will be a stabilization period of about a month before the final release. You are encouraged to test drive the latest and greatest JBossAS and communicate your findings to the JBoss User Forums.
Another succesful event organized by the Java Hellenic User Group (JHUG). It was very interesting to learn the latest developments about the NetBeans platform by R.Strobl & G.Wielengal, active members of the NetBeans community.
The JBoss presentation was essentially a preview in JBoss 5 and some of its advanced features, like the new JBoss Messaging service.
Big thanks to Tim Fox for letting me use his slides on JBM.
JBoss-4.0.5 was released last week and is available for download. If you are looking for the installer bundle, that includes JBossAS-4.0.5.GA, EJB3 CR9 and Portal 2.4 GA, start here.
This new point release includes more than 90 bug fixes and introduces some interesting features, including support for scalable Buddy Replication for http sessions and updates to many important subsystems (hibernate, tomcat, jbossws, etc.). In addition, this is the first release QA'ed against multiple platforms (Linux, Solaris, Windows) and JDKs (both Sun and BEA JRockit). More information about the release can be found in the detailed release notes.
Note that the initial jboss-4.0.5.GA distribution (binary and sources) posted on sourceforge.org included a version of the JBoss.org End User License Agreement (EULA) that was subsequently fine-tuned after internal discussions inside JBoss. Please make sure you have downloaded the latest distribution, by comparing the published checksums. The updated EULA can be found here.
We do appreciate your online feedback for this new release in the JBoss User Forums.
If you can make it, JBossWorld in Berlin will be an excellent opportunity to meet with the development team, discuss what you like or not, learn from other people's experiences with JBoss, and of course, have fun!
Enjoy the new JBossAS & hope to see you in Berlin! dimitris@jboss
The 1st Candidate Release (CR1) for the JBoss Application Server 4.0.5 went out on the 31st of August and it is available for download.
This is a point release with more than 60 bug fixes and a couple of interesting new features, including support for scalable Buddy Replication for http sessions. You are welcome to have a go and tell us what you think.
More information for the release can be found in the related forum announcement and the release notes.
So far in JBoss, the standard and easy way to deploy a service as a Highly Available (HA) Singleton (meaning it will run only on the master node) is to copy it on all nodes of the cluster, in the ./deploy-hasingleton directory. The way it works, is that a special service (hint: look in ./deploy/deploy-hasingleton-service.xml) will essentially deploy whatever is under ./deploy-hasingleton, on the master node only. This is actually how HA-JMS will run in a clustered setup.
Since JBoss 4.0.4/3.2.8 there is an alternative way to do this. You can deploy your service as you would normally do by copying it to ./deploy or ./farm, but remember to add a dependency on:
The service will be deployed normally on all nodes, up to the create step, but will only be started on the master node! The advantage comparing to the previous method is that you can use farming, i.e. automatic distribution of the deployment through the ./farm directory. Or do a normal deployment (copy to ./deploy) on all nodes or just the few ones that will potentially run the singleton service. Note that in both cases you get hot-redeployment (which you don't get with the standard approach).
On the other hand, a disadvantage, or better a difference is that the singleton service is actually deployed (up to the create step) on all the non-master nodes, whereas with the ./deploy-hasingleton approach, it's not deployed at all. So any singleton logic will have to be coded in the start()/stop() methods of the singletonservice.
If you want to find out more details of how this is implemented, take a look here.
I particularly enjoyed Dr. Heinz Kabutz's talk on Essential Java Performance Tuning, with interesting tales from the field where the expert is called to save the day and reduce the average response time of a crawling application. (Heinz is the author of the famous Java Specialists' Newsletter). We'll be probably see more of Dr. Kabutz here due to his great idea for combining Java Courses & Holidays on the island of Crete.
The tech day was a great opportunity to meet with the Java development community and the many JBoss users out there. It was a also a good chance for promoting the very first Advanced JBoss Training in Athens, at the end of September (if you are around, don't miss it :).
Again, kudos to the JHUG team for organizing this (more pics here).
I'm very pleased to announce that the long awaited final (GA) release of the JBoss Application Server 4.0.4 is now available for download!!!
This is really a gargantuan release considering the number of bug fixes (290) and minor new features (70) that were incorporated, as well as other tasks (180) that were dealt with. Just have a look at the length of the Release Notes.
The .zip distro is the good and old canonical jboss server distribution with the three configurations that everyone is familiar with: minimal, default and all. Just unzip and you are all set. The installer version (which can now run headless, too) can be used to produce customized configurations and previews to latest technologies, like an EJB3 RC7+ preview that matches the current EJB3 draft standard.
A lot of interesting features come through updates to the various independent JBoss projects integrated under the JBossAS umbrella, the most prominent being the replacement of the axis-based jboss-ws4ee stack with the first official release of the all-new JBoss Web Services stack. This is developed using jdk5 and retrofitted for jdk1.4 JVMs using JBossRetro.
If you can make it, JBossWorld in Vegas will be an excellent opportunity to meet with the development team, discuss what you like or not, share experiences and learn about innovative uses of JBoss, while getting insights into current and future JBoss technologies and roadmaps (the conference agenda is loaded, take a look here).
A really big thank you to everyone that worked on this release and to the JBoss community as a whole for providing valuable feedback during the two CR stages we went through.
It started as a humble idea: to get together with 30-40 people participating in the Java Hellenic User Group (JHUG) and/or Greek JBoss User Group (GR-JBUG) to talk about technology. We ended up setting up a half-day mini conference with 4 speakers and almost 130 attendants, on a nice Saturday morning in Athens/Greece!
The place was packed with standing people in the back rows and the speakers trying to speak up so everyone could hear. It was absolutely fantastic for me to present in my native language, although embarrassing at times, trying to translate on-the-fly some word you've used a thousand times in English.
My "condition" (working remotely for JBoss from home) often reminds me of that joke, with the guy that he, and a gorgeous lady being the only survivors on a deserted island. After the initial "honeymoon" period, he became so depressed: he was all alone on that little island with that magnificent woman, but there was nobody else to talk about it :)
I had 2 talks, one on the current JBoss status, history, products and professional OpenSource model, and another one on the advanced clustering infrastructure of JBoss. I hope I made my point clear that OpenSource is an undisputable trend with far-reaching and deep impact in the IT industry, and that JBoss and Professional OpenSource is one of the best proofs for that.
I enjoyed also the other 2 talks on JDO (G.Kostaras) and Practical Iterative Development (K.Flokos). I got to meet very interesting people and a Tapestry developer. Again, congrats to the JHUG guys (P.Apostolopoulos/P.Konstantinides) for organizing this.
There are already plans for the next meeting in May, with speakers from abroad this time. If anyone, company or individual is interested in presenting/sponsoring let me know.
The 2nd Candidate Release (CR2) for the JBoss Application Server 4.0.4 went out on the 31st of March and it is available for download.
This release comes with 120+ bug fixes and incorporates new features, mostly through updates to the various independent JBoss projects integrated under the JBossAS umbrella.
For those interested in the latest EJB3 developments, the installer version contains the EJB3 RC5+ preview that matches the current EJB3 draft standard.
We have the latest version (CR6) of the all-new JBoss Web Services stack (JBossWS) that replaces the axis-based jboss-ws4ee stack. This is developed using jdk5 and retrofitted for jdk1.4 JVMs using JBossRetro.
JBossAS 3.2.8 has been out since the beginning of February and this ServicePack1 release came out on the 3rd/March to fix a couple of important bugs, as well as to increase the interoperability with 4.0.2+ jboss versions.
Collectively the 2 releases include a significant amount of fixes (130+) that accumulated since 3.2.7 and a number of features backported from the 4.0.x series, so 3.2.8.SP1 is an important milestone for those that need to stick with the 3.2.x branch.
Users however are encouraged to migrate to our current 4.0.x series, since development of major new features has stopped for the 3.2.x branch.
JBoss v4.0.3 released last week bundles a couple of new monitoring features (still in a experimental state, so they are disabled by default).
There is an Active Alarm Table that can be fed with notifications, either ordinary ones, or special ones that carry severity and state. I've introduced this notion that an alarm can be either stateless (e.g. security violation) or stateful (e.g. free memory low). The difference really is that stateful alarms can clear themselves out (so free memory is back to normal). If we manage to update the alarm table with relevant information (i.e. alarms) it can represent the current fault state of a system.
Any mbean could feed the table, but there are also a couple of mbean services that produce org.jboss.monitor.alarm.AlarmNotification notifications:
JMXNotificationAppender, a simple log4j appender that transforms logging events to JMX notifications, so we can tap into logging information and treat, for example, WARN and ERROR messages as alarms.
MemoryMonitor, a simple free memory monitor service that shows how stateful alarms should work.
ScriptingListener, a scripting facility that can be used, for example, to map existing notifications to alarms. This is quite generic, meaning, you can execute a script in any scripting language supported by BSF, to react to an incoming notification.
There is also a very simple page in the JBoss web-console that shows the alarm table and allows acknowledgement of alarm. You can read about it here.
James Wilson contributed to the JBoss World of MBeans a simple but very useful service for monitoring mbean attributes and logging the results to files. After being on the JBoss wiki for a couple of months with people already using it, I finally got the time to integrate it with the JBoss codebase so it becomes part of the next jboss release, i.e. JBoss v4.0.3.
You can read about this nifty little service here.