Skip to main content
Windward

Can I run in headless mode?

Overviewengine-wiki-logo.png

Can I run the Java engine in headless mode?

Resolution

Under UNIX, if you do not have an X-Windows server running, then Java cannot retrieve any font information. There is a headless option, but as of Java 1.4.3 it is generally unusable by itself (with line.break=internal it works).

Windward Reports requires font information in order to determine line breaks and text placement. To handle this situation, you can set the property line.break=internal. This uses Windward’s internal code to make this determination (using iText).

In this case, add the following to your JVM command line:

-Djava.awt.headless=true

This tells Java that you are running in a headless environment.

This code does not implement the complex line break rules of Java. It mainly breaks words using the space (0x20) character. Therefore, it may not meet all your needs. It cannot handle Thai (no spaces between words) and has not been tested with Arabic or Hebrew.

If the system cannot find any font files, it uses the values for Helvetica, Times or Courier depending on if the font you specified is San-Serif, Serif, or fixed-width. However, the final document may be spaced differently than desired.

If possible, tell Windward Reports where you have fonts stored on your system. You can do this using the font.files= property in the WindwardReports.properties file. Restart Windward Reports after setting this property.

  • Was this article helpful?