Blog

Camunda Spring Boot Starter 2.0.0 released

This post originally appeared on http://blog.camunda.org

Last week was a great week for the camunda spring boot starter extension: after three month of hard (but mostly fun) work, we are proud to announce release 2.0.0.

We decided to switch to a new major version, because a lot of things changed:

  • new maven module structure, new groupId: org.camunda.bpm.extension.springboot
  • switch to Java 8
  • switch to spring boot 1.4.2
  • switch to camunda 7.6.0

Besides those internal enhancements, we worked on stability, convenience and support of the enterprise edition.

What’s new?

Let’s have a quick look at the main improvements. For the full list of changes, check the Release Milestone.

Features

  • Bill of Material
    Instead of adding all different extension modules separately, you can now import camunda-bpm-spring-boot-starter-bom in your dependencyManagement.
  • Testing
    The new camunda-bpm-spring-boot-starter-test module bundles useful testing components like camunda-bpm-mockito and camunda-bpm-assert. Together with the powerful spring-boot 1.4 testing tools, this will probably be the only test-scope import you need.
  • Webjar/EE
    We introduced a maven-plugin that allows integrating the camunda webapp via generated sources. So you no longer need to provide a custom webjar project when you are using the camunda enterprise edition.
  • Provisioning
    When testing locally, you can now start your camunda application with a predefined admin user, empty tasklist-filter and inserted license-key (enterprise edition). Reduces roundtrip times during development.
  • Job Execution
    Threadpool-size and retry-cycle can now be configured via application properties.
  • Process Application
    With the new @EnableProcessApplication annotation you can now turn your application in a camunda process application without extending any super-classes.
    We highly recommend activating this and let camunda handle the process deployment via processes.xml. There were several issues with the spring classpath scanning used when providing deploymentResources in the past.
  • Camunda 7.6.0
    We decided to switch to the latest camunda version, released last week. There have been several enhancements and fixes in the core-platform that simplify the modularization and context setup we need for the starter.
    This means: when you want to use the spring-boot starter 2.0.0, you will have to switch to 7.6.0 as well.

How to use it?

As always, the extension is published on maven central, so if you are using maven, just add the dependency. Mind the new groupId and consider using the BOM.

<dependency>
  <groupId>org.camunda.bpm.extension.springboot</groupId>
  <artifactId>camunda-bpm-spring-boot-starter([-rest|-webapp])</artifactId>
  <version>2.0.0</version>
</dependency>

and then create a simple process application like this one:

// note that when using the ProcessApplication, you still need
// an empty processes.xml under src/main/resources/META-INF!
@SpringBootApplication
@EnableProcessApplication
public class WebappExampleProcessApplication {</code>

  public static void main(String[] args) {
    SpringApplication.run(WebappExampleProcessApplication.class, args);
  } 
}

We enhanced documentation and examples, so make sure to checkout our github pages.

Roadmap

A lot of cool ideas did not make it to this release, so we will not get bored. Focus issues are:

  • let the webapp follow the webjar specification META-INF/resources/webjars/camunda.
  • include cockpit plugins from the marketplace into the generated webapp.
  • get rid of the empty processes.xml, all configuration should be done via application properties.
  • support multiple webapp-contexts so the camunda webapp and your custom application can run on the same spring boot node.

Join us

Developing this extension is fun, but we could need some help! So if you are using the extension: share your thoughts, if you discover problems or have great enhancement ideas: file an issue on github or even provide a pull request.

You can also have a chat with us, we have our own channel in the camunda-forum, or feel free to contact me (Jan Galinski) directly.

Über den Autor

Jan Galinski

Jan Galinski ist Senior Consultant bei der Holisticon AG und seit vielen Jahren als Architekt und Entwickler in agilen Kundenprojekten unterwegs. Er ist ein leidenschaftlicher Prozessautomatisierer und BPM-Craftsman, am liebsten mit Camunda BPM. Als Contributor zu zahlreichen Open Source Projekten aus den Bereichen BPM und JEE gibt er seine Erfahrung und Wissen gerne weiter. 2016 wurde er mit dem Camunda Community Award ausgezeichnet.

Antwort hinterlassen