JBoss 규칙의 .drl 파일 간에 개별 규칙을 공유하려면 어떻게 해야 합니까?
-
01-07-2019 - |
문제
우리는 사용하고 있습니다 JBoss 규칙 (일명침) 그리고 여러 가지가 있습니다 .drl 각각 여러 규칙이 포함된 파일입니다.둘 이상의 파일에 사용할 수 있는 공통 규칙을 정의할 수 있도록 파일 간의 중복을 방지할 수 있는 방법이 있습니까? .drl 파일?
아쉽게도 그런 일은 없는 것 같습니다. 포함하다 또는 모듈 시설.
해결책
.drl 파일 내에서 다른 .drl 파일의 규칙을 포함할 수 있는 방법은 없습니다.
그러나 두 개의 .drl 파일을 동일한 ruleBase에 추가하면 동일한 파일에 있는 것처럼 작동합니다.
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "common.drl" ) ) );
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "rules1.drl" ) ) );
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage( builder.getPackage() );
제휴하지 않습니다 StackOverflow