2014-10-13 100 views
0

是否有一些与Oracle Policy Automation类似的功能 - Drools中的Oracle Web确定?这怎么能用Drools来实现?使用Drools的Oracle策略自动化

+0

得到一个硬编码数据类的对象Drools是一个生产规则系统,不包含任何“与X类似的功能”,除非X是另一个基于规则的系统。 Drools是图灵完备的,所以任何可以编程的东西都可以使用Drools来实现。至于如何:聘请顾问。 – laune

回答

0

我正在Oracle Policy Automation和Drools中工作。根据我的观察,OPA纯粹是自动的,它也需要许可证。而Drools是开源的。与OPA相比,它缺少很多东西。但是,到目前为止,我还没有遇到过Drools的问题。

就OPA中的Oracle Web Determinations屏幕而言,我认为Drools中没有内置功能来复制它。由于Drools完全基于编码,如果可以编码,您可以实现任何功能。您可以创建jsp页面,执行内部绑定,从屏幕收集数据并设置为类对象。最后,在屏幕上的按钮上,您可以将包含屏幕数据的该对象传递给Drools规则引擎。

由于我的项目不需要屏幕,我通过创建类的对象来测试。然后我会将数据硬编码到类对象属性中。请参阅下面的代码;

public static final void main(String[] args) { 
    try { 
     // load up the knowledge base 
     KieServices ks = KieServices.Factory.get(); 
     KieContainer kContainer = ks.getKieClasspathContainer(); 
     KieSession kSession = kContainer.newKieSession("ksession-process"); 

     // start a new process instance 
     MainGlobal mainGlobal = MainRequestFactory.getMainRequest(); 
     kSession.insert(mainGlobal); 
     System.out.println("======== START PROCESS ========"); 

    } catch (Throwable t) { 
     t.printStackTrace(); 
    } 
} 

MainGlobal - 是我的班级。我通过调用MainRequestFactory.getMainRequest();