安装程序流Kie执行服务器凭据



我正在尝试设置由kie-dools-wb-webapp-6.2.0提供的kie执行服务(kie-server-services-6.2.0),当我试图通过遵循执行服务器的webapp url来获取访问权限时,它显示了BASIC身份验证,并且不知道如何继续获取对执行服务器的访问权限,也不知道如何获取端点url,用于提供kie-wb的内置规则示例,并使REST或WSDL正常工作。kie-wb有一个角色为"admin"的用户名,我可以正确地构建规则。非常感谢!!

为了回答您的问题,我从一开始就决定创建HOWTO,我所做的就是在远程服务器上执行Drool规则。

我的任务是集成Kie Workbench和Execution Server,以便业务用户能够创建Drools规则并将其部署到Repo,而开发人员可以通过调用独立Drools执行服务器的REST服务来使用这些规则。

您应该遵循以下步骤:

在使用Drools Execution Server之前,让我使用这样的术语:

  • Kie Drools Workbench-是用于创建和部署模型和Maven存储库的规则文件
  • Kie Execution Server-是一个独立的Drools执行服务器。它使用命令的REST调用并返回执行结果
  • 假设您安装了Tomcat 7.0/8.0和Maven

Drools Workbench的部署

目前要部署的Kie Drools Workbench的最稳定版本是6.1.0.Final。仅在Tomcat 7.0上使用此版本进行部署!

  • 您可以从Jboss sonar repo下载名为kie-dlols-wb distribution wars的文件,使用6.1.0.Final和tomcat7.war

  • 请确保将以下jar添加到Tomcat的lib目录:javax.security.jac-api-1.4.jar、kie-Tomcat-integration.jar、slf4j-api-1.7.2.jar

  • 确保您在tomcat的tomcat-users.xml中拥有或添加了以下角色/用户:

<role rolename="admin"/> <!-- Tomcat Admin role -->
<role rolename="analyst"/> <!-- Kie Workbench Analyst role. -->
<role rolename="kie-server"/> <!-- Kie Drools Execution Server role. Needed to make REST Rules execution request -->
<user username="admin" password="admin" roles="manager-gui,manager-script" /> <!-- Tomcat Admin user -->
<user username="user1" password="user1" roles="admin, kie-server" /> <!-- Kie Drools Execution Server user. Needed to make REST Rules execution request -->

  • 将tomcat7.war部署到Tomcat。我相信你知道怎么做
  • 打开链接:http://localhost:8080/kie-drools-wb-distribution-wars-6.1.0.Final-tomcat7.0/。使用上一步中配置的管理员凭据进入Workbench。在我们的案例中,user1/user1
  • 在Kie Workbench中创建一个模型、规则文件。验证它们,然后单击部署。确保您有一个jar文件,您的项目将被放入Maven repo!

    例如,您可以使用我为测试目的创建的规则和模型:Drool规则文件:

    import com.arty.drlwb.MyExampleType;
    rule "one"
    when 
    MyExampleType(message == "Hello Worlddddd")
    then
    System.out.println("Hello World:)");
    end
    

Kie Drools执行服务器的部署

目前,Kie Drools Execution Server最稳定的版本是Kie-Server-services-6.2.0.Beta3.war。您可以在这里下载,Jboss sonar repo:

  • 在Tomcat上部署kie-server-services-6.2.0.Beta3.war
  • 在上发出GET请求http://localhost:8080/kie-server-services-6.2.0.Beta3/services/rest/server/。如果您要求提供用户/密码,请使用您在tomcat users.xml中为kie服务器角色配置的用户/密码。您应该看到相同的响应:

    <response type="SUCCESS" msg="Kie Server info">
      <kie-server-info>
      <version>6.2.0.Beta3</version>
      </kie-server-info>
    </response>

  • 如果你看到的结果和我看到的一样,现在是时候部署kie容器了:在发出PUT请求http://localhost:8080/kie-server-services-6.2.0.Beta3/services/rest/server/containers/{your_container_id}使用以下XML格式:

<kie-container>
       <container-id>{your_container_id}</container-id>
       <status/> 
       <release-id>
            <group-id>{your_project_group_id}</group-id>
            <artifact-id>{your_project_artifact_id}</artifact-id>
            <version>{your_project_version}</version>
      </release-id>
     <resolved-release-id/>
</kie-container>

  • 如果您得到SUCCESS状态响应,您现在可以检查所有容器都已部署。打开http://localhost:8080/kie-server-services-6.2.0.Beta3/services/rest/server/contacters。您应该看到您的容器已部署:

<response type="SUCCESS" msg="List of created containers">
 <kie-containers>
 <kie-container container-id="{your_container_id}" status="STARTED">
 <release-id>
<artifact-id>{your_project_artifact_id}</artifact-id>
<group-id>{your_project_group_id}</group-id>
<version>{your_project_version}</version>
</release-id>
 <resolved-release-id>
<artifact-id>{your_project_artifact_id}</artifact-id>
<group-id>{your_project_group_id}</group-id>
<version>{your_project_version}</version>
</resolved-release-id>
</kie-container>
</kie-containers>
</response>

  • 现在启动您创建并放入项目jar的所有规则:在http://localhost:8080/kie-server-services-6.2.0.Beta3/services/rest/server/containers/{your_container_id}

使用XML格式。原因使用您自己的模型而不是MyExampleType:

<batch-execution lookup="defaultKieSession">
<insert out-identifier="message" return-object="true" entry-point="DEFAULT">
    <com.arty.drlwb.MyExampleType>
          <message>Hello Worlddddd</message>
    </com.arty.drlwb.MyExampleType>
</insert>
<fire-all-rules/>
</batch-execution>

  • 检查Tomcat控制台。如果您收到Hello World:)消息和SUCCESS响应类型,现在一切都适用

p.S由于有关于该主题的文档,我从GitHub中查看了Server的来源。请查看kie服务器客户端kie服务器集成测试代码和测试。希望这能有所帮助。

相关内容

  • 没有找到相关文章

最新更新