Announcement 1.0.0.Beta7

What’s New?

  • Some new fractions

  • Hibernate Search

  • JAX-RS Validator

  • HTTP endpoints are not reachable until a deployment is complete

  • Static content can be updated in a running instance

  • Removed our custom JAX-RS exception mapper for favicon.ico and replaced it with an Undertow handler

  • Numerous fixes for Ribbon, Hystrix and their examples

  • Ability to provide a Hystrix Events Stream from your application

  • We now publish consolidated javadocs

weld renamed to cdi

To clear some naming up we’ve renamed the weld fraction to cdi, and as part of that change jaxrs-weld is also now jaxrs-cdi.

If you use auto-detection you won’t need to change anything, but if you specify WildFly Swarm dependencies in pom.xml you will need to make this change.

addAllDependencies() behavior

Previous to this release calling myArchive.addAllDependencies() would include the WildFly Swarm dependencies into WEB-INF/lib, as well as any other Maven dependencies of the project.

Unfortunately that behavior was causing lots of class path problems, so we’ve now modified the default behavior such that WildFly Swarm dependencies are no longer included. It is still possible to replicate the previous behavior, if desired, by calling myArchive.addAllDependencies(true).

Health Endpoints

You can now add health checks to your endpoints!

For instance, we can add the following to a JAX-RS Resource:

@Path("/app")
public class HealthCheckResource {

 @GET
 @Path("/diskSpace")
 @Health
 public HealthStatus checkDiskspace() {
    File path = new File(".");
    long freeBytes = path.getFreeSpace();
    long threshold = 1024 * 1024 * 100; // 100mb
    return freeBytes>threshold ?
      HealthStatus.up() :
      HealthStatus.down().withAttribute("freebytes", freeBytes);
 }
}

Which is then accessible at http://localhost:8080/health/app/diskSpace.

For further on information on the API, security, etc, please consult the userguide

Project Generator

Thanks to George Gastaldi, we now provide a Web UI for generating Swarm projects on-the-fly! You can generate a Maven project and choose the fractions (if you don’t want fractions to be auto-detected) to be added in your build descriptor. Check it out at http://wildfly-swarm.io/generator

Changelog

Release notes for 1.0.0.Beta7 are available here.

  • [ SWARM-10 ] Combined javadoc for -swarm and config-api
  • [ SWARM-121 ] Enable messaging to cluster
  • [ SWARM-189 ] HTTP endpoint should not be reachable before deployment is finished
  • [ SWARM-230 ] Static content not reloaded on local change when running org.wildfly.swarm.Swarm
  • [ SWARM-267 ] Hystrix Metrics Event Stream
  • [ SWARM-297 ] Use ShrinkWrap descriptor for web.xml
  • [ SWARM-305 ] Provide RESTful endpoints for common runtime data
  • [ SWARM-321 ] Upgrade to Keycloak 1.9.1.Final
  • [ SWARM-327 ] Unable to create an exception mapper for javax.ws.rs.NotFoundException
  • [ SWARM-328 ] Hibernate-Search Fraction
  • [ SWARM-332 ] addContextParam fails with ClassCastException
  • [ SWARM-333 ] System#setProperty fails for swarm.http.port
  • [ SWARM-338 ] All fractions should have a wildfly-swarm-bootstrap.conf
  • [ SWARM-355 ] Wildfly Swarm Maven Plugin does not use proxy configured in settings.xml
  • [ SWARM-358 ] Ribbon archive auto advertise a service by virtue of Maven dependency presence
  • [ SWARM-363 ] Ability to specify the name of the deployment archive without a main()
  • [ SWARM-366 ] Using Template API with a ResponseValidator in Ribbon Example seems to have classpath problems
  • [ SWARM-368 ] Missing resteasy-validator-provider-11 in bom
  • [ SWARM-369 ] Add jaxrs-validator fraction
  • [ SWARM-373 ] JBoss Modules is unable to find timestamped SNAPSHOT versions
  • [ SWARM-374 ] Jackson APIs are not available from jaxrs fraction
  • [ SWARM-377 ] -modules dependencies are not being pulled based on BOM versions
  • [ SWARM-380 ] Autodetect batch-jberet fraction
  • [ SWARM-382 ] mvn install fails when using HttpResponseStatus because class is missing
  • [ SWARM-383 ] WARArchive.addAllDependencies() may create invalid libraries
  • [ SWARM-384 ] Autodetect mail fraction
  • [ SWARM-385 ] Generated JAX-RS application should not take precedence
  • [ SWARM-386 ] addAllDependencies() add unncessary libraries
  • [ SWARM-388 ] Running a main() in Intellij fails with ClassNotFoundException
  • [ SWARM-390 ] Parallel artifact downloads
  • [ SWARM-393 ] Adapt the JSON generated in fraction-plugin to contain the necessary info for the generator
  • [ SWARM-394 ] mvn wildfly-swarm:run does not destroy the process when executed in an embedded maven environment
  • [ SWARM-398 ] Plugin selects older versions of Fractions when using Auto detection
  • [ SWARM-399 ] Ability to depend on sun.jdk module without bringing in non JDK Services
  • [ SWARM-402 ] Add request-controller subsystem
  • [ SWARM-403 ] FractionAnalyzer#detectNeededFractions should return the container fraction only if no other fractions are detected
  • [ SWARM-404 ] mvn wildfly-swarm:run should gracefully shutdown when interrupted
  • [ SWARM-406 ] Wildfly Swarm plugin does not auto-detect the necessary fractions for javax.json and javax.xml.bind
  • [ SWARM-407 ] CNFE for javax/validation/constraints/Size with Swagger
  • [ SWARM-408 ] FractionAnalyzer#detectNeededFractions should remove fractions that depend on each other
  • [ SWARM-409 ] Move the location of exposed-components.json to a repository root
  • [ SWARM-410 ] Rename 'weld' fraction to 'cdi'
  • [ SWARM-413 ] JSF fraction detection does not work for subpackages

Resources

Per usual, we tend to hang out on irc.freenode.net in #wildfly-swarm.

All bug and feature-tracking is kept in JIRA.

Documentation for this release is available.

Thank you, Contributors!

We appreciate all of our contributors since the last release:

Core

  • Heiko Braun

  • Toby Crawley

  • Thomas Diesler

  • Ken Finnigan

  • George Gastaldi

  • Bob McWhirter

Non Core

  • Heiko Braun

  • Toby Crawley

  • Jim Crossley

  • Ken Finnigan

  • George Gastaldi

  • Bob McWhirter

  • Christian Posta

  • sassko

  • Harald Wellmann

Examples

  • Heiko Braun

  • Ben Browning

  • Ken Finnigan

  • Bob McWhirter

  • Jeff Mesnil

Documentation

  • Heiko Braun

  • Antonino Cucchiara

  • Ken Finnigan

  • George Gastaldi

  • Mark Little

  • Bob McWhirter

  • Summers Pittman

  • Christian Posta

  • Harald Wellmann