WildFly 9 introduction

As anticipated in the wildfly-dev mailing list, a new major release (wildfly 9) of the application server will be available within the end of the year. Let’s see the new emperor clothes’ summary.  

Welcome to WildFly 9

At the time of writing the latest release of WildFly 9 is the Beta2 which is available from: http://wildfly.org/downloads/

As discusses in the mailing list, the new features that we can expect from wildfly 9 are as follows:

– Core/Servlet/Full Split
– Graceful shutdown
– Elytron (Security improvments)
– Switching to the JDK ORB from JacORB
– Undertow as a mod_cluster frontend
– Subsystem Capabilities and Requirements

Probably the feature that will impact more the application server is the switch to the new Security Provider named Elytron which will eventually replace the current implementation (PicketBox + JAAS). The amount of new features that will be available using the Elytron are extensive: I’ll mention just a few which seem especially interesting:

  • Provide support for secure server-side authentication mechanisms supporting HTTP, SASL (and SASL+GSSAPI), and TLS [5] connection types, as well as supporting other authentication protocols in the future without change (RADIUS, GSS, EAP)
  • Provide a simple way to support multiple security associations per security context (one per authentication system, including local and remote application servers, remote databases, remote LDAP, etc.)
  • Provide support for password credential types using the standard JCE archetypal API structure (including but not only, UNIX DES/MD5/SHA crypt types, bcrypt, mechanism-specific pre-hashed passwords, etc.)
  • Provide SPIs to support all of the above, such that consumers like Undertow, JBoss SASL, HornetQ etc. can use them directly with a minimal integration overhead

Another interesting feature that was announced is having Undertow as a mod_cluster frontend. This leads me to think that we could shift from the following architecture:

to the following one:

That being said, at the moment you can start downloading and keep track the wildfly project.


Downloading WildFly 9

You can either download the source code and build the project by yourself as follows:

git clone https://github.com/wildfly/wildfly.git

mvn install -DskipTests

If you prefer, you can download the latest snapshot build from Jenkins which is available here: https://ci.jboss.org/hudson/job/WildFly-latest-master/

Whatever is your choice, once downloaded and (maybe) compiled the project, you can start is as usual using the standalone.sh/domain.sh script:

As new features will be added to WildFly 9, we will update this article with practical examples so stay tuned !