Konfigurácia SmartWeb aplikácie

Konfigurácia SmartWeb aplikácie

SmartWeb je aplikácia postavená na Spring Boot 4.x (Java 21), ktorá sa spúšťa ako samostatný spustiteľný JAR (smartweb.jar) s vstavaným Apache Tomcatom, alebo alternatívne ako WAR nasadený do samostatného Tomcatu. Celé behové správanie — pripojenie na D2000, autentifikácia, sprístupnenie API (REST, CometD, gRPC, OData, OpenAPI, OAuth2), konektory, monitoring — je riadené jediným konfiguračným súborom application.yaml.

Umiestnenie konfiguračného súboru

Spôsob nasadenia

Umiestnenie súboru application.yaml

Spôsob nasadenia

Umiestnenie súboru application.yaml

Samostatný JAR

<adresár-jar>/config/application.yaml

OCI / kontajnerový image

/config/application.yaml

WAR v externom Tomcate

<tomcat>/conf/applications/<názov-war>/application.yaml

Pri prvom spustení si SmartWeb automaticky vygeneruje predvolený súbor application.yaml z internej šablóny, ak žiadny konfiguračný súbor nenájde. Staršia konfigurácia smartweb.json (používaná v starších verziách) sa pri prvom spustení automaticky zmigruje do formátu YAML.

Konfiguračný súbor je možné meniť aj počas behu servera; zmeny sa však prejavia až po reštarte (redeploymente) SmartWeb aplikácie.

Štruktúra najvyššej úrovne

Všetky vlastnosti špecifické pre SmartWeb sú zaradené pod prefix smartweb.. Všeobecná štruktúra je nasledovná:

server: port: 8443 ssl: # TLS vstavaného Tomcatu — ovplyvňuje HTTPS pre REST, CometD, OData, OpenAPI, OAuth2 aj admin konzolu enabled: true key-store: config/cert/keystore.p12 key-store-type: PKCS12 key-store-password: changeit key-alias: smartweb smartweb: # JAPI konekcie na D2000 (priame alebo reverzné) — viď „Konfigurácia konekcie na D2000“ connections: [ ... ] listenableConnection: { ... } # Konekcia na EDA Server — viď „Konfigurácia konekcie na EDA Server“ edaConnection: { ... } # Autentifikácia: D2000 používatelia, aplikační používatelia, API kľúče, OAuth2 JWT, SPNEGO, klientske certifikáty authentication: { ... } application: # Univerzálne API rozhrania REST, CometD, gRPC a OpenAPI — viď „Konfigurácia univerzálneho API rozhrania“ restApi: { ... } cometApi: { ... } grpcApi: { ... } openApi: { ... } # OAuth2 token endpoint — viď „Konfigurácia OAuth2 a SmartWeb Proxy“ oauth2: { ... } # Konektory Web Push, D2 service, OpenAPI, SmartWeb federácia — viď „Konfigurácia konektorov“ connectors: { ... } # VAPID kľúče pre Web Push notifikácie — viď „Konfigurácia Web Push“ api: vapid: { ... } # Zdroje webovej aplikácie a hot-reload pri vývoji — viď „Konfigurácia web aplikácie a podpory jej vývoja“ webResourceDirectories: [ ... ] development: { ... } # URL Tenkého Klienta — viď „Konfigurácia integrácie s Tenkým Klientom“ tcl: { ... } # Úrovne logovania vstavaného Logbacku logging: level: root: INFO com.ipesoft.smartweb: INFO

Jednotlivé konfiguračné sekcie sú popísané v nasledujúcich kapitolách:

Sekcia

Stránka

Sekcia

Stránka

Pripojenie na jadro D2000 (JAPI)

Konfigurácia konekcie na D2000

Pripojenie na EDA Server

Konfigurácia konekcie na EDA Server

Autentifikácia (D2000, RPC, API kľúče, OAuth2, certifikáty, SPNEGO)

Konfigurácia autentifikácie

Univerzálne API rozhrania (REST, CometD, gRPC, OData, OpenAPI)

Konfigurácia univerzálneho API rozhrania

OAuth2 token endpoint a SmartWeb Proxy

Konfigurácia OAuth2 a SmartWeb Proxy

Web Push notifikácie (VAPID)

Konfigurácia Web Push

Konektory D2 service, OpenAPI a SmartWeb federácia

Konfigurácia konektorov

Zdroje webovej aplikácie a hot-reload pri vývoji

Konfigurácia web aplikácie a podpory jej vývoja

Integrácia s Tenkým Klientom

Konfigurácia integrácie s Tenkým Klientom

[!NOTE] Všetky príklady v nasledujúcich kapitolách používajú formát YAML. Staršia konfigurácia smartweb.json je naďalej akceptovaná ako vstup a pri prvom spustení sa zmigruje do YAML. Nové nasadenia by mali vždy používať YAML.