[
https://issues.jboss.org/browse/JBRULES-3562?page=com.atlassian.jira.plug...
]
RH Bugzilla Integration commented on JBRULES-3562:
--------------------------------------------------
Mario Fusco <mfusco(a)redhat.com> made a comment on [bug
851310|https://bugzilla.redhat.com/show_bug.cgi?id=851310]
That repository works for me. Also I added a further unit test in the code base of the
5.3.x branch using exactly the same DRL generated by that repository and it passes without
any problem. I am pasting the source code of that test below:
@Test
public void testMvelFunctionWithDeclaredTypeArg() {
// JBRULES-3562
String rule = "package testPackage\n" +
"declare Person\n" +
"name: String\n" +
"age: Integer\n" +
"end\n" +
"\n" +
"function String PersonToString(Person p) {\n" +
"String result = \"\";\n" +
"result = p.getName() + \", age: \" + p.getAge();\n"
+
"return result;\n" +
"}\n" +
"\n" +
"rule \"testRule1\"\n" +
"dialect \"mvel\"\n" +
"when\n" +
"p : Person( )\n" +
"then\n" +
"System.out.println(PersonToString(p));\n" +
"end\n" +
"\n" +
"rule 'testRule2'\n" +
"dialect 'mvel'\n" +
"when\n" +
"$p : Person()\n" +
"then\n" +
"System.out.println(PersonToString($p));\n" +
"end";
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add( ResourceFactory.newByteArrayResource(rule.getBytes()),
ResourceType.DRL );
if ( kbuilder.hasErrors() ) {
fail( kbuilder.getErrors().toString() );
}
KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
}
Drools cannot resolve functions when argument is a fact type
------------------------------------------------------------
Key: JBRULES-3562
URL:
https://issues.jboss.org/browse/JBRULES-3562
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-compiler
Affects Versions: 5.3.0.Final
Environment: Linux Ubuntu, JBoss 5.1.0
Reporter: Nedo Nedic
Assignee: Mario Fusco
Fix For: 5.5.0.Beta1
Note that this only fails when MVEL dialect is used with functions using non-primitive
argument types (for an instance using
fact types arguments).
This error appeared when we migrated from Drools 5.0.1.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira