IO Web Services

    {info} Input/Output (IO) Web Services provide methods for

    • converting molecules to different chemical file formats,
    • analyzing molecule string and defining its file format,
    • preparing molecule file for download,
    • collecting properties from molecule.

    This documentation describes installation, administration and usage of IO Web Services.

    IO Web Services make possible to reach the functionality provided by Chemaxon's toolkit Input and Output System.

    IO Web Services application is available in two modes:

    1. As part of a microservices system

    2. As a standalone web application

    Microservices system mode

    In microservices system mode the IO Web Service runs together with Config service, Discovery service and Gateway service. These three services are mandatory and optionally other services can also be part of the system. All configuration must be done in the Config module.

    The default configuration applies to the microservices system mode.

    The web application runs on host <server-host> and listens on port <gateway-server-port>.

    Standalone web application mode

    In standalone web application mode the IO Web Service runs alone, without the Config service, Discovery service and Gateway service (however the installer installs them, as well).

    The default configuration must be changed according to the standalone web application mode; set

    eureka.client.enabled=false in application.properties file, and


    up to version 22.2.0

    spring.cloud.config.failFast=false and spring.cloud.config.enabled=false in bootstrap.properties file


    from version 22.9.0

    set spring.cloud.config.enabled=false and comment out line spring.config.import= in application.properties file.

    All configuration must be done in the IO module.

    The web application runs on host <server-host> and listens on port <server-port>.

    Download

    See here.

    Software requirements

    See here

    Installation

    See here.

    Module is installed into folder: jws/jws-io

    Licenses

    See here.

    Additionally, IUPAC naming plugin license is required for the usage of Name file format.

    Logging

    See here.

    Configuration

    Default configuration:

    application.properties
    server.port=8061
    logging.file.name=../logs/jws-io.log
    spring.config.import=configserver:${CONFIG_SERVER_URI:http\://localhost\:8888}?fail-fast=true&max-attempts=100&max-interval=60000&multiplier=1.2&initial-interval=3000 Added in version 22.6.0.
    eureka.client.enabled=true set eureka.client.enabled=false to switch to standalone IO Web Services application mode.
    bootstrap.properties
    spring.cloud.config.failFast=true #Removed in version 22.6.0.
    spring.cloud.config.uri=${CONFIG_SERVER_URI:http\://localhost\:8888/} #Removed in version 22.6.0.
    spring.cloud.config.retry.initialInterval=3000 #Removed in version 22.6.0.
    spring.cloud.config.retry.multiplier=1.2 #Removed in version 22.6.0.
    spring.cloud.config.retry.maxInterval=60000 #Removed in version 22.6.0.
    spring.cloud.config.retry.maxAttempts=100 #Removed in version 22.6.0.

    For more settings possibilities see spring documentation page.

    Running the server

    Prerequisites in case of microservices system mode:

    1. Config service is running

    2. Discovery service is running

    3. Gateway service is running

    Run the service in command line in folder jws/jws-io:

    jws-io-service.exe --install
    jws-io-service.exe --start (on Windows in administrator's terminal)

    jws-io-service start (on Linux)

    or

    run-jws-io.exe (on Windows)

    run-jws-io (on Linux)

    API documentation

    Find and try out the API on the Swagger UI.

    Mode URL of Swagger UI Default URL of Swagger UI
    microservices system <serverhost>:<gateway-port>/jwsio/API/ localhost:8080/jwsio/API/
    standalone web application mode <serverhost>:<server-port>/API/ localhost:8061/API/

    Demo site

    For detailed description check out the JWS IO demo site:

    https://jchem-microservices.chemaxon.com/jwsio/api/index.html

    Usage

    The guidelines, examples on the Demo site or on the Swagger UI API documentation of your installed module display the methods and syntax implemented for reaching the functionalities of the Input and Output System toolkit.

    More details about supported output formats: File Formats