4. System properties

In principle, there is no need to use the following, very low-level, system properties.

Property nameValueDescription
XSL_FO_PROCESSORSList of XSL-FO processor names separated by semi-colons (';').

This property contains the names of all XSL-FO processor plug-ins. Examples: "FOP;XFC", "XEP". For use by some XSLT style sheets.

XXE_ADDON_DOWNLOAD_LOCATIONList of ".xxe_addon" URLs separated by semi-colons (';').

Clicking on the Reset button of the "Install add-on" preferences of the Preferences dialog box resets the list of download URLs to the value specified by this property.

If this property is not set, by default, the list of download URLs is

XXE_CATALOG_RESOLVER_VERBOSITYStrictly positive integer (the larger, the more verbose)Prints on the console messages tracing the resolution by the XML catalog resolver of system identifiers.
XXE_CONFIRM_CREDENTIALS_DELAYStrictly positive number of milliseconds

Workaround for the following problem: when opening a document stored on a server requiring user authentication (e.g. a WebDAV server), a user who typed an incorrect username or password is never prompted again for her/his credentials.

Example: -DXXE_CONFIRM_CREDENTIALS_DELAY=1000, means wait for at least 1000 milliseconds before considering that the credentials specified by the user have been accepted by the server.

When system property XXE_CONFIRM_CREDENTIALS_DELAY has been specified to an appropriate number of milliseconds, a user who typed an incorrect username or password is automatically prompted again for her/his credentials. However, this workaround, based on a heuristic, may be tricky to configure and may be not usable for some protocols. For example, it seems to work for HTTP and it gets in the way for FTP.

XXE_DAV_TRACEAny (example: 1; suffice to set this property).

Causes the WebDAV client to print DAV requests and responses on the console.

XXE_DAV_USE_SIMPLE_REFSAny (example: 1; suffice to set this property).

Causes the WebDAV client to use absolute paths rather than full URIs in the Destination and If headers.

Doing this is allowed by RFC 4918, but not by (obsolete) RFC 2518.

This may be useful when operating through a reverse proxy that does rewrite the Host request header, but not WebDAV-specific headers.

XXE_DAV_URI_ENCODING_USES_8859_1Any (example: 1; suffice to set this property).

Used by the WebDAV client.

Specifies that the WebDAV server expects and returns URIs where accented characters (to make it simple) are escaped using the customary %HH form but where HH is the hexadecimal code of an ISO-8859-1 character.

The standard mandates HH to be UTF-8 codes, not ISO-8859-1 codes.

For example, this flag is needed for Apache/mod_dav running on an ``old'' Linux server where the file system encodes filenames using ISO-8859-1.

XXE_FOP_CONFIGURL of a user-defined FOP configuration file

Specifies the location of a FOP configuration file.

Note that, because this URL is resolved using the XML catalogs of XXE, this allows to bundle a custom FOP configuration file with the FOP plug-in, prior to deploying XXE using Java™ Web Start.

Procedure:

  1. Create the custom FOP configuration file in FOP_plugin_dir/conf/fop.conf.

  2. Create XML catalog fop_catalog.xml in FOP_plugin_dir/. This file should contain:

    <catalog
      xmlns="urn:oasis:names:tc:entity:¬
    xmlns:xml:catalog">
      <rewriteURI uriStartString="fop-plugin:" 
                  rewritePrefix="."/>
    </catalog>
  3. When running deployxxe in XMLmind XML Editor - Configuration and Deployment, do not forget command-line argument "-property XXE_FOP_CONFIG fop-plugin:conf/fop.conf".

XXE_FTP_DISABLE_SESSION_RESUMPTIONAny (example: 1; suffice to set this property).

Used by the FTP virtual drive plug-in. Disable session resumption (by default, it's enabled).

Session resumption is a feature of SSL/TLS, which speeds up the establishment of secure connections by caching certain cryptographic parameters during the first connection, such that they may be used in subsequent connections. This is particularly handy for FTPS which opens a new connection for each file transfer. Occasionally it can cause problems when establishing secure connections on data-channels, so this flag is provided for disabling the feature and thus forcing a full exchange of cryptographic data for every file.

For example, when XXE is a client of the vsftpd FTP server:

With vsftpd option require_ssl_reuse=YES (default)

This system property must not be set.

With vsftpd option require_ssl_reuse=NO

This system property must be set (e.g; -DXXE_FTP_DISABLE_SESSION_RESUMPTION=1)

XXE_JAVA_IMAGE_TOOLKIT_EXCLUDEList of file extensions separated by semi-colons (';').

Example: -DXXE_JAVA_IMAGE_TOOLKIT_EXCLUDE="bmp;wbmp"

This would prevent the built-in Java™ 1.5 image toolkit from handing BMP images.

This is useful in case you find an external image toolkit which handles specified image extensions better than the built-in Java™ image toolkit.

XXE_NETWORK_TIMEOUTA number of milliseconds.

Specifies the default timeout used for creating network connections and reading responses. A negative or null number means: wait indefinitely.

Used at various places in XMLmind XML Editor, for example by WebDAV and FTP virtual drives.

Built-in default value is 120,000ms (2mn).

XXE_PREDECLARE_NAMESPACE_PREFIXESAny value. Suffice for this system property to be set.

Slightly changes the way namespace prefixes are declared in an XML save file, when the document being saved conforms to a DTD.

  • -DXXE_PREDECLARE_NAMESPACE_PREFIXES=1 means: pre-declare on the root element all the namespace prefixes found in the document (regardless on whether this is allowed by the DTD).

  • The standard method is: declare a namespace prefix when needed to (regardless on whether this is allowed by the DTD).

Both methods are flawed. In the general case, XXE simply cannot generate XML documents in which the xmlns attributes are validated against a DTD.

XXE_SHOW_CLIPBOARD_ERRORSAny value. Suffice for this system property to be set.Causes XXE to report system clipboard errors on the console.
XXE_SHOW_SEMANTIC_ERRORSAny value. Suffice for this system property to be set.

Allows to make cross-reference errors less important than semantic warnings and errors (which are typically reported by Schematron validation). This has an influence of the Validity icon found at the bottom left of the main window and on the contents of the Validity tool.

This system property is examined once and for all. Therefore it is best to specify it as a command-line argument (e.g. -DXXE_SHOW_SEMANTIC_ERRORS=1) or in a customize.xxe file (e.g. <property name="XXE_SHOW_SEMANTIC_ERRORS">1</property>). It may also be specified in a .xxe configuration file. However, in this case, you'll have to make sure that this configuration file is loaded before any other one.

XXE_STRICT_CONREFAny value. Suffice for this system property to be set.When transcluding DITA conrefs, check the compatibility of the domains of the referencing document with the domains of the referenced document.
XXE_VIEWPORT_SCROLL_MODEsimple|backingstore|blit

Specifies which scrolling mode to use everywhere in XXE.

Linux example:

~$ XXE_VIEWPORT_SCROLL_MODE=simple xxe &
XXE_XEP_CONFIGURL of a user-defined XEP configuration fileSame as XXE_FOP_CONFIG, but applies to RenderX XEP rather than to Apache FOP.