2013-04-29 2 views
0

У меня есть веб-приложение PHP, которое должно выполнять рассуждения на документе OWL (онтологический веб-язык). Я знаю двух аргументов, оба из которых написаны на Java, но у меня есть стандартный сервер Apache в моем распоряжении, поэтому я могу вводить PHP, а не JSP.Как выполнить Java-метод OWL на сервере Apache (не Tomcat)?

Есть ли способ выполнить Java-код на сервере, например: PHP-скрипт отправляет данные в код Java (reasoner), а затем код Java выполняет рассуждения и возвращает данные в PHP-скрипт? Есть ли способ, чтобы одна Java-программа была, возможно, каким-то образом завернута в нечто на сервере или что-то еще?

Thanx, Martin

ответ

1

Вы должны сначала быть в состоянии запустить некоторые Java-код на вашем компьютере, и вы должны установить JVM на вашем сервере.

Затем вы можете посмотреть на следующий ответ: calling java code from PHP. Это должно дать вам представление о том, как вызывать Java-программу из PHP.

Альтернативный взлом, если вы не слишком полагаетесь на аргументацию, заключается в том, чтобы открыть онтологию с помощью Protege, классифицировать ее и затем сохранить как таковой. Поэтому вам не придется использовать Java на стороне сервера, и вы просто будете использовать данные, имеющиеся в онтологии.

+0

Thanx для ответа! JRE на сервере означает много переговоров с технической поддержкой, но эта часть может быть возможной - и я рассмотрю решения из предложенного вами ответа. И что мне нужно? У меня есть пользователи, взаимодействующие с семантикой. Пользователь может добавить новое отношение между двумя объектами (я говорю очень общее, но вы получите идею). Затем, когда пользователи добавляют новые операторы OWL, некоторые неявные данные появятся там ... поэтому мне нужно вызвать аргументатора после взаимодействия каждого пользователя (или, лучше сказать, вклада в семантику). Как онтология вики в контексте электронного обучения. – Martin

2

Я думаю, что хороший подход в вашем случае состоит в том, чтобы разоблачить аргументатора через конечную точку SPARQL и написать ваше приложение в PHP против протокола SPARQL.

Вызов на Java из PHP звучит как хак, и кажется хрупким. Если вы основываете свое приложение на протоколе SPARQL, вы можете уйти с помощью только HTTP, JSON, & XML-библиотек, вам не нужно ничего строго определенного RDF или OWL. Может немного упростить вашу реализацию.

Кроме того, если вы используете протокол SPARQL, он изолирует вас от конкретных конкретных сведений о конкретном предназначении/базе данных, которую вы используете. Вы можете переключиться на новый аргумент и до тех пор, пока он отображается как конечная точка SPARQL, вам не нужно менять код в своем веб-приложении.

Ничего из того, что вам действительно нужно, нужно запустить на компьютере, и, скорее всего, вам понадобится контейнер сервлетов, хотя некоторые параметры могут работать автономно.

+0

Thanx. Это звучит как хорошая стратегия ... и тогда я, вероятно, могу подключить свое веб-приложение к разумному хозяину, размещенному на физически другом сервере - хосте, который предоставляет веб-материал Java. А также тогда я разумно-прозрачный. – Martin

Смежные вопросы