Я пытаюсь создать сервер Fuseki SPARQL на своей машине. Документация на веб-сайте Jena описывает, как создать такой сервер из командной строки, здесь: http://jena.apache.org/documentation/serving_data/. Я ищу способ создания и инициализации такого сервера, используя Jena Java API. Я просмотрел API Jena, но не успел проработать, как продолжить. Кто-нибудь делал это раньше?Как создать сервер Fuseki SPARQL с использованием API Java Apache Jena?
ответ
Да, это возможно, но это не то, как Fuseki был разработан для работы, поэтому делайте это на свой страх и риск.
Вам нужно будет тянуть в фусеки как зависимость, через мавена это будет следующее:
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-fuseki</artifactId>
<version>0.2.7</version>
</dependency>
Затем вы можете использовать SPARQLServer
класс для создания сервера и вызовите start()
на самом деле запустить сервер и stop()
если сделаете. (Это находится в org.apache.jena.fuseki.server
пакете)
Это важно отметить, что если вы сделаете это сервер встроен в JVM, с которой вы начинаете его, когда что JVM выключается сервер выключается. Это может быть ваше намерение, но это не так.
Кстати, вы не знаете, почему именно вы хотите это сделать? Там могут быть альтернативные пути для достижения своей цели, не внедряя фусеки, если вы объясните ваши цели дальнейшего
Если вы используете
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
<type>pom</type>
<version>2.11.2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-fuseki</artifactId>
<version>1.0.2-SNAPSHOT</version>
</dependency>
Вы можете запустить встроенный сервер.
Dataset dataset = TDBFactory.createDataset(MagicStrings.TDBLocation);
dataset.begin(ReadWrite.WRITE);
Model tdb = dataset.getDefaultModel();
EmbeddedFusekiServer server = EmbeddedFusekiServer.
create(3030,getDataset().asDatasetGraph(), "comp");
- 1. Запрос Sparql COUNT с использованием Jena api
- 2. Как подключить сервер Jena Fuseki к Netbeans, например MySQL
- 3. Как создать Jena Fuseki 2 из источника?
- 4. Jena Fuseki Sparlql INSERT и DELETE в java
- 5. Выполните INSERT в Jena Fuseki с драгоценным камнем SPARQL (Ruby)
- 6. Запрос Scala Sparql с Apache Jena
- 7. Сервер Jena Fuseki на терминале Mac
- 8. Apache Jena полнотекстовый поиск (с внешним содержанием)
- 9. Сервер Jena Fuseki в экземпляре EC2
- 10. Как запросить названный граф в сервере Apache Jena Fuseki
- 11. Зачем нам нужен сервер Fuseki?
- 12. Пользовательские функции в SPARQL с API Jena
- 13. Обновление или вставка Jena ARQ с использованием Fuseki?
- 14. Jena Fuseki, TDB и формирование выходных данных
- 15. Jena fuseki owl ontology
- 16. Jena-Fuseki требует данных, которые задают
- 17. Функция привязки в SPARQL с API Jena
- 18. Параметрированный запрос SPARQL с JENA
- 19. Query SPARQL в Java (Jena)
- 20. Как выгрузить данные с сервера Jena Fuseki
- 21. УДАЛИТЬ ЗАПРОС SPARQL FUSEKI
- 22. Как создать вход списка SPARQL с помощью jena querybuilder?
- 23. Jena SPARQL API с использованием файла правил вывода
- 24. Загрузить дубликат RDF троекратно в Apache Jena Fuseki
- 25. специфический SPARQL запрос с Jena
- 26. Как получить синонимы слова из WordNet с помощью SPARQL на сервере Jena Fuseki?
- 27. HttpException: 400 - Jena Api - Java
- 28. Лист печати запросов SPARQL с использованием JENA JAVA
- 29. Java jena fuseki set OntModelSpec для определения гранул
- 30. ошибка подключения пентахо с Jena Fuseki
Причины (возможно, неправильные) для этого: необходимо разработать систему p2p, где каждый узел имеет rdf-репозиторий и должен быть Java-приложением. Я хочу использовать некоторые функции сервера Fuseki для этого и надеялся, что есть простой способ получить это от некоторого Java-кода. Я не против потери функциональности сервера, если JVM отключается, пока поддержка TDB на сервере по-прежнему сохраняется в rdf-информации. Есть предположения? – lemonWorld
Справедливо, что резервная копия сервера TDB должна сохраняться правильно, поскольку Fuseki использует ее транзакционно, что обеспечивает некоторую степень защиты от неправильного завершения JVM. – RobV