2022 June Release

Working With Fabasoft app.ducx Projects Using EclipsePermanent link for this heading

If you are a Folio developer, you have to consider following additional aspects when working with app.ducx projects.

Adding Additional ContentsPermanent link for this heading

Additional contents may be specified within Fabasoft app.ducx project settings. It is solely for additional contents, e.g. help contents (Compiled Help Files) or contents for a specific platform, e.g. Windows x64 only. These contents will be part of your software component.

Contents are simply added by dropping a bunch of files from the file system. Additional properties may be set after drop. The basename is initially constructed from the basename of the file. The type is CCT_NORMAL by default. The basename may be changed.

Fabasoft app.ducx tries to identify available variables. The longest match is used. Variables include environment variables and variables available within in Eclipse.

Note: When using a build process out of eclipse, Eclipse variables might not be available.

Fabasoft app.ducx BuildersPermanent link for this heading

Running app.ducx in Eclipse requires the setting “Project” > “Build Automatically” to be enabled, so that cross-referencing between different source code sections can be established. This setting will be automatically enabled once after installing the Fabasoft app.ducx feature.

Generating output of a Fabasoft app.ducx project is done by the Fabasoft app.ducx builder. This builder can be configured to run on each automatically triggered build by the Eclipse Platform. The corresponding setting (“Generate COO-file on automatic build”) has to be set in each project’s preferences. By default, this setting is disabled because generating output is not necessary on each save operation in Eclipse.

Exporting a Fabasoft app.ducx ProjectPermanent link for this heading

Exporting a Fabasoft app.ducx project allows you to distribute your project to customers. A Fabasoft app.ducx project represents a single software component. Related software components can be encapsulated in a software product. Several software products build up a software edition. A software edition is a complete product. To customize a software edition depending on customer wishes is done with a software solution.

Software products, software editions and software solutions are defined as instances within a Fabasoft app.ducx project.

Exporting Software Components

In Eclipse, open the “File” menu and click “Export”. Navigate to “Fabasoft app.ducx” > “Extract Component” to export your Fabasoft app.ducx project to a container file (with a .coo extension) that can be installed in another domain by loading it using the management tool.

Exporting Software Products, Software Editions, and Software Solutions

In Eclipse, open the “File” menu and click “Export”. Navigate to “Fabasoft app.ducx” > “Extract Solution” to export a software product, software edition or software solution of your Fabasoft app.ducx project.

Environment VariablesPermanent link for this heading

The following Java-specific environment variables may be used in the Fabasoft app.ducx project file. If this is the case, make sure that the environment variables are also set in the build environment or that the corresponding values are defined in the Apache Ant build.xml.

Environment variable for the java compiler.

  • To ensure correct java libraries, the java compiler has to be specified by the environment variable DUCX_JAVA_HOME[_X] This variable is used to specify the java compiler required for specific versions of Fabasoft Folio. X stands for the java version. Currently most versions require Java 8 so to be sure that every java compiler from 8 up to the current version generates compatible code, set the variable in an appropriate way (e.g. DUCX_JAVA_HOME_8="C:/Java/jdk1.8.0_332).
  • The order of variable checking is:
    • DUCX_JAVA_HOME_X
    • DUCX_JAVA_HOME
    • JAVA_HOME

If you compile a Fabasoft app.ducx project containing Java source code, the manifest of the generated JAR file can be populated with following environment variables:

  • DUCX_SPEC_TITLE=SPEC_TITLE (string)
    Defines the title of the specification.
  • DUCX_SPEC_VENDOR=SPEC_VENDOR (string)
    Defines the organization that maintains the specification.
  • DUCX_SPEC_VERSION=SPEC_VERSION (string)
    Defines the version of the specification.
  • DUCX_IMPL_TITLE (string)
    Defines the title of the implementation.
  • DUCX_IMPL_URL (string)
    Defines the URL from which the implementation can be downloaded from.
  • DUCX_IMPL_VERSION (string)
    Defines the version of the implementation.
  • DUCX_IMPL_VENDOR (string)
    Defines the organization that maintains the implementation.
  • DUCX_IMPL_SEALED (true|false)
    Should be set true because all classes defined in all package are archived in the same Fabasoft app.ducx JAR file.

Creating Your Own Setup KitPermanent link for this heading

To create a setup kit including your own software solution perform the following steps:

  1. Copy the Fabasoft Folio kit on a writeable media.
  2. Copy your software solution in the Setup directory.

The base product extended by your own software solution can now be installed or updated using setup.exe or setup.sh.

Note:

  • The property COOSYSTEM@1.1:solallowedbaseeditions of a software solution contains the references of allowed base software editions for this software solution. At least one of the allowed base software editions must be installed in the domain to be able to install this software solution. Leave this property empty, if the software solution should be a stand-alone solution instead of an add-on solution. Keep in mind that only one stand-alone software edition or software solution can be installed in a domain.
  • Make sure that all COO files of your additionally needed software components (Fabasoft app.ducx projects) are copied in the software solution folder. The software components have to be referenced in the property COOSYSTEM@1.1:prodcomponents.