پروکسی 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 در یک فایل باعث نمیشود آن سرور آن را اجرا کند.