Наладзьце праксі HTTP па змаўчанні ў Jena да запуску запытаў
Зразумейце кліент па змаўчанні HttpEnv для ўсёй JVM, час яго запуску і кліенты, якія могуць яго перакрыць для выклікаў SERVICE.
Для ўбудаванага праграмнага забеспячэння 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 у файле не прымушае сервер выконваць яго.