Preconditions: Sophora Server and Repository Configuration
The Teletext Generator requires a Sophora Server with a repository where special teletext nodetypes are configured.
Customizing
The Teletext Generator can be customized using a Plugin API.
If a custom plugin is implemented, it has to be packaged as a Java Archive file (.jar) which will then be installed alongside the main application.
Installation and Configuration
The application is distributed as an executable Spring Boot jar file.
Installation
- Unpack the
teletext-generator-X.X.XX-bin.tar.gz
. - Create /var/run/teletext-generator and /var/log/teletext-generator directories.
- Adjust
application.yml
if needed. - Create a lib directory within the directory that contains the executable teletext-generator jar, and put the teletext plugin jar there.
Application Properties
To configure the application, an application.yml
file has to be placed in the same directory as the jar file. An example file is included in the packaging.
For the configuration of the Sophora Client we use the library Spring Boot Sophora Commons, further details about all available configuration properties can be found on the project page.
.conf File
A .conf
file is recommended to manage the location of the applications PID-file and logs. The file must be named just like the jar but with the .conf
postfix instead of .jar
. For a complete reference of configuration options in the .conf
file, see the Spring Boot documentation.
Please make sure to create the configured folders for PID and logs as configured in the .conf
file. It is recommended to create a folder in /var/run/ (for PID) and /var/log/ (for logs), both named like the jar file (without postfix).
There is an example .conf
file included in the package.
Logging
Logging can be configured via application.yml
or by placing a logback.xml
in the config directory. Please refer to the Spring Boot documentation for further reference.
Adding a Teletext-Generator Plugin
By default, a customer-specific teletext plugin must be placed into the lib directory within the directory that contains the executable Teletext Generator jar. The directory can be customized in the loader.properties
.
The base Java package of the plugin needs to be specified in the pluginPackages
property in application.yml
.
If the plugin is depending on libraries which are not shipped with the core Teletext Generator application, the jar files of these libraries may be put into the lib directory as well. As these jar files end up in the core classpath of the Teletext Generator, refrain from adding differing versions of libraries already provided by the Teletext Generator.
You can verify that a plugin was loaded in the log output during the startup of the Teletext Generator ("Picked up plugin-provider bean of type 'PluginClassName'.
").
Launching the Application
Since the jar is executable (contains an embedded launch script), it may simply be launched like this:
$ ./teletext-generator.jar start
Also, the application may be registered as an init.d
or systemd service. See the Spring Boot documentation for further details on this.
The running Teletext Exporter provides different HTTP endpoints at the port configured in the application.yml
file. For instance, the preview for teletext documents could be at http://localhost:8082/preview?sophoraId=test100
.