Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

camel:

...

dot

The camel:dot goal of the Camel Maven Plugin is used to generate Visualisation diagrams for Camel supports Visualisation to be able to turn your Enterprise Integration Patterns into a nice graphical represenation.
If you run the It works like camel:doc goal embedded, it will boot up your CamelContext just like the camel:embedded Spring configuration but it will only keep up for a few seconds. During that time it This will then generate a GraphViz DOT file generated in target/site/cameldoc. Then this

The plugin will then try and convert the DOT file will be converted nicely into a HTML report.

So if you run

, PNG and SVG representation. To do this an installation of GraphViz is required to be on your PATH.

So to use this plugin, please download Graphviz then put it on your PATH.

By default the plugin will evaluate the dot executable, but you can overload this by configuring the plugin's executable property. e.g.

Code Block

<configuration>
 <executable>DOT.EXE</executable>
</configuration>

Trying out camel:dot

A good example application to get you started is the Spring Example.

Code Block

cd examples/camel-example-spring
mvn compile camel:dot
Code Block

mvn camel:doc

Your generated PNG/SVG files will then be in the target/site/cameldoc directory .(Note that you need to have built your project before running this)- assuming Maven could find your DOT executable.

Note that you do not need to explicitly run this goal; you could just integrate this plugin into the normal Maven report generation.

Disabling execution of DOT executable

In Camel 1.4 you can disable the execution of DOT by setting the useDot configuration parameter to false.

Code Block

<reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-maven-plugin</artifactId>
        <configuration>
          <useDot>false</useDot>
        </configuration>
      </plugin>
    </plugins>
</reporting>