Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Introduction

Use of the JADE YADE Client will be significantly changed with the introduction of an XSD schema and XML configuration files with version Release 1.11. The use of the schema is intended to simplify file transfer configuration for the Client - particularly for complex file transfer situations.

File transfer configurations specified for Client versions up to 1.10.x will need to be modified before they can be run with versions 1.11 onwards.

The schema takes account of interdependencies and incompatibilities between parameters and therefore significantly reduces the chances for configuration errors.

The schema uses a standardized parameter syntax and the majority of parameter names will be changed to a greater or lesser degree with its introduction.

A parameter mapping is available for users wishing to compare settings file and XML file transfer configurations or refer to settings file parameters in the XML parameter reference.

File transfer configuration up to Version 1.10.x

File transfer configurations are stored in a settings.ini file.

Individual parameters are grouped together in profiles that can be reused and allow a 'single point of definition' approach to be followed.

Parameters that can be defined separately for the source and target parts of the transfer - for example, the host name and port number - are set with the source_ and target_ prefixes.

This is illustrated in the following example profile:

Code Block
titleA simple profile for transferring files by FTP from a test host to the local file system
[ftp_server_2_local]
;;
 operation               = copy
;;
 source_host             = test.sos-berlin.com
 source_protocol         = ftp
 source_port             = 21
 source_user             = demo
 source_password         = demo
 source_dir              = /
;;
 target_host             = localhost
 target_protocol         = local
 target_dir              = ${USERPROFILE}\jade_demo\a

Running a file transfer profile

A file transfer is started by specifying a settings.ini file and the profile in that file that is to be used.

For example, the profile listed above is called using:

Code Block
titleCalling a file transfer profile on a Windows system
jade.cmd -settings="%USERPROFILE%\jade_demo\jade_settings.ini" -profile="ftp_server_2_local"
Code Block
titleCalling a file transfer profile on a Unix system
./jade.sh -settings="${HOME}/jade_demo/jade_settings.ini" -profile="ftp_server_2_local"

Limitations of this approach

Whilst this approach is relatively straightforward to understand when used with simple file transfer situations:

  • it is prone to configuration errors and
  • becomes difficult to understand and therefore maintain when advanced and complex file transfer configurations are implemented.

More Information

  • Detailed descriptions of the parameter configuration and the use of profiles is available in our JADE Tutorials. These include examples that can be tested using our demonstration FTP and SFTP servers. A download containing a configuration file for the tutorial examples is also available.
  • Parameter Reference & Mapping
    Status
    colourYellow
    titleTo be Completed

.

Example configuration and command line calls for the XML-based configuration are presented on this page.

XML-based file transfer configuration - available from Release

...

1.11 onwards

The XML file transfer configuration introduced with version Release 1.11 of JADE YADE allows parameter dependencies in JADE YADE to be validated before the configuration file is transferred to an operating environment.

Dependencies and conflicts between configuration elements are avoided through the use of an XSD schema

An XML editor is available that will simplify the creation and validation of schema-compatible file transfer configurations.

The basic principles behind the organization of the schema and parameters will be described in on this documentpage. A detailed description of individual parameters can be found in our Parameter Reference and a description of the considerations involved in configuration of a simple file transfer can be found in the Simple File Transfer with Basic Authentication example.

The following screen shot of the SOS XML Editor shows the test host configuration of a simple FTP file transfer example described - in the previous section in the SOS XML Editor:this case the example downloads files from the SOS demo server to the local file system.

  • The left hand pane of the Editor in the screen shot below shows the XML hierarchy of the configuration and the right hand pane the form used to display the child elements - in this case the child element of the Profiles element.

The following code block shows the XML configuration file for the test host FTP file transfer example shown in the XML Editor screen shot above in XML form:

Code Block
languagexml
titleA simple profile for transferring files by FTP from a test host to the local file system
collapsetrue
<?xml version="1.0" encoding="UTF-8"?>
<Configurations>
  <Fragments>
    <ProtocolFragments>
      <FTPFragment name="testdemo@test.sos-berlin.com">
        <BasicAuthentication>
          <Account><![CDATA[demo]]></Account>
          <Password><![CDATA[demo]]></Password>
        </BasicAuthentication>
        <BasicConnection>
          <Hostname><![CDATA[test.sos-berlin.com]]></Hostname>
          <Port><![CDATA[21]]></Port>
        </BasicConnection>
      </FTPFragment>
    </ProtocolFragments>
  </Fragments>
  <Profiles>
    <Profile profile_id="ftp_server_2_local">
      <Operation>
        <Copy>
          <CopySource>
            <CopySourceFragmentRef>
              <FTPFragmentRef ref="testdemo@test.sos-berlin.com" />
            </CopySourceFragmentRef>
            <SourceFileOptions>
              <Selection>
                <FilePathSelection>
                  <FilePath><![CDATA[/]]></FilePath>
                </FilePathSelection>
              </Selection>
            </SourceFileOptions>
          </CopySource>
          <CopyTarget>
            <CopyTargetFragmentRef>
              <LocalTarget />
            </CopyTargetFragmentRef>
            <Directory><![CDATA[${USERPROFILE}\jade_demo\a]]></Directory>
          </CopyTarget>
        </Copy>
      </Operation>
    </Profile>
  </Profiles>
</Configurations>

Although longer and seemingly more complex than the a comparable settings file configuration version shown above(see YADE Tutorial 1), the XML code for this example was produced using the graphical editor and therefore has been validated against the JADE YADE Client XSD Schema. It is error and conflict free and dependencies are correctly specified.

Running a file transfer profile

A file transfer is started by specifying an XML configuration file and the profile in that file that is to be used.

For example, the profile listed above is called using: Status

colourYellow
titlecheck syntax (settings)

Code Block
titleCalling a file transfer profile on a Windows system
jade.cmd -settings="%USERPROFILE%\jade_demo\jade_user_manual_configuration.xml" -profile="ftp_server_2_local"
Code Block
titleCalling a file transfer profile on a Unix system
./jade.sh -settings="${HOME}/jade_demo/jade_user_manual_configuration.xml" -profile="ftp_server_2_local"

Moving from a Settings File to an XML Configuration

Comparison of the two approaches reveal a significant difference in the concept behind the two approaches to configuration:

  • Settings file configuration
    Parameters such as host, protocol, user, password and dir (directory) are usually grouped separately in the settings file configuration according to whether they apply to the transfer source or target. This usually has no functional meaning (the files are processed from top to bottom) and is partly simply for convenience (grouping parameters together makes them easier to find) and partly to allow their reuse in the form of so-called profile fragments if required.
  • XML configuration
    • Parameters are divided up between profile and fragment branches. (Note that these expressions are defined differently to elements in the settings file configuration with the same names.)
      • authentication and connection parameters (Account & Password and Hostname & Port respectively) and the protocol (defined through the use of FTP) are part of the Fragments branch of the configuration.
      • the operation (copy) and the source and target file paths (FilePath and LocalTarget respectively) are specified in the Profiles branch.
      • the CopySourceFragmentRef element refers to the FTPFragment specified in the Fragments branch
    • The division between Fragments and Profiles branches allows the reuse of elements whilst working within the strict hierarchical structure of XML.
      • The use of a reference in the Profiles branch (in the example, using the CopySourceFragmentRef element) to specify the authentication and connection parameters in the Profiles branch allows any number of Profiles elements to be defined and specified as required.

More Information

Further Information

Related Sections of this User Manual:

See the Configuration Formats & Tools article for a comparison between the XML Configuration and its predecessor, the *.ini File.

See JobScheduler Monitoring Interface - XSD Schema Reference article for more detailed information about the XML configurationSee JADE User Manual - XSD Schema  articlefor more detailed information about the XML Configuration.

 

Display children header

...