HelloWorld с использованием Drools Workbench & KIE Server
Установите KIE Drools Workbench 6.2.0 Final внутри локального экземпляра сервера приложений JBoss 7, а Kie Server 6.2.0 Final - в локальном экземпляре Tomcat 7.
Использование веб-приложения KIE Workbench строго для целей оценки (я использую его для кодирования при создании проектов Maven на основе Java и не использую конкретную среду IDE, например Eclipse или IntelliJ IDEA):
Создан новый репозиторий под названием testRepo
Создан новый проект под названием HelloWorld
Создан новый объект данных с именем HelloWorld со свойством String с именем message:
package demo;
/**
* This class was automatically generated by the data modeler tool.
*/
public class HelloWorld implements java.io.Serializable {
static final long serialVersionUID = 1L;
private java.lang.String message;
public HelloWorld()
{
}
public java.lang.String getMessage()
{
return this.message;
}
public void setMessage(java.lang.String message)
{
this.message = message;
}
public HelloWorld(java.lang.String message)
{
this.message = message;
}
}
Создан новый ДХО, содержащий следующее содержание:
package demo;
import demo.HelloWorld;
rule "hello"
when
HelloWorld(message == "Joe");
then
System.out.println("Hello Joe!");
end
Когда я разверну его на своем Kie Server по этому URL:
Когда я копирую и вставляю вышеуказанный URL в Google Chrome, я получаю следующий ответ:
<response type="SUCCESS" msg="Info for container hello">
<kie-container container-id="hello" status="STARTED">
<release-id>
<artifact-id>Hello</artifact-id>
<group-id>demo</group-id>
<version>1.0</version>
</release-id>
<resolved-release-id>
<artifact-id>Hello</artifact-id>
<group-id>demo</group-id>
<version>1.0</version>
</resolved-release-id>
<scanner status="DISPOSED"/>
</kie-container>
</response>
Когда я пытаюсь сделать POST, используя следующую полезную нагрузку (используя Postman или SoapUI):
<batch-execution lookup="defaultKieSession">
<insert out-identifier="message" return-object="true" entrypoint="DEFAULT">
<demo.HelloWorld>
<message>Joe</message>
<demo.HelloWorld>
</insert>
Получил следующее:
HTTP Status 415 - Невозможно использовать тип содержимого. Сообщение о состоянии. Сообщение Невозможно использовать тип содержимого.
описание Сервер отклонил этот запрос, потому что объект запроса находится в формате, который не поддерживается запрошенным ресурсом для запрошенного метода.
Что я, возможно, делаю не так? Я пошел в Deploy -> Rule Deployments и зарегистрировал свой kie-сервер вместе с созданием контейнера с именем helloworld, и, как видно из шага № 5, это сработало. Возможно, я не правильно его развернул?
Кстати, я использовал следующее переполнение стекасообщение в качестве основы (до того, как задать этот вопрос) ...
В большинстве результатов поиска Google просто объясняется, как программно создавать проекты Drools путем настройки проектов на основе Maven. Я оцениваю KIE Drools Workbench, чтобы увидеть, как легко нетехнический специалист может использовать KIE Drools Workbench для генерации правил на основе Drools и их выполнения.
Я пропускаю шаг? В Tomcat 7 он содержит только следующие каталоги в каталоге apache-tomcat-7.0.64 / webapps / kie-server-6.2.0.Final-webc:
META-INF
WEB-INF
Спасибо, что нашли время, чтобы прочитать это ...