Для ўбудаванага праграмнага забеспячэння Jena на сучасным стэку JDK стварыце агульны рэзервовы шлях да пабудовы выканання запытаў або запуску працоўных працэсаў:

import java.net.InetSocketAddress;
import java.net.ProxySelector;
import org.apache.jena.http.HttpEnv;

var http = HttpEnv.httpClientBuilder()
    .proxy(ProxySelector.of(
        new InetSocketAddress("proxy.example.net", 8080)))
    .build();

HttpEnv.setDftHttpClient(http);

Канструктар Jena захоўвае свае транспартныя значэнні па змаўчанні, дадаючы селектар. Для ўбудаванай нагрузкі, якая выкарыстоўвае дазволеныя публічныя канчатковыя пункты SPARQL і не мае ўліковага запісу проксі, спіс проксі HTTP можа даць адрас HTTP для селектара. Гэта застаецца агульным значэннем па змаўчанні для JVM, а не перамыкачом для кожнага запыту.

АперацыяПарадак выбару кліента
Звычайны канструктар запытаў HTTPЯўны кліент, супадзенне ў рэестры па URL, значэнне па змаўчанні HttpEnv
Убудаваны федэратыўны SERVICEАдпаведны кліент рэестра, кліент кантэксту запыту, глабальнае значэнне па змаўчанні

Такім чынам, лакальнае або рэестравае перакрыццё можа выкарыстоўваць іншы маршрут. Канструктар HTTP вызначае свой кліент пры выкліку build і перадае гэты аб'ект у выкананне; замена значэння па змаўчанні пазней не перапісвае ўжо пабудаванае выкананне.

Трымайце рэзервовы шлях запуску стабільным. Выкарыстоўвайце адпаведны лакальны/кантэкставы/рэестраваны інтэрфейс, калі маршруты розныя.

Асобнаму серверу Fuseki таксама патрэбны спосаб запуску ініцыялізацыі, які падтрымліваецца яго разгорнутай версіяй. Размяшчэнне гэтага кода Java у файле не прымушае сервер выконваць яго.

Падобныя артыкулы