[
https://issues.jboss.org/browse/DROOLS-559?page=com.atlassian.jira.plugin...
]
Mario Fusco edited comment on DROOLS-559 at 7/22/14 5:33 AM:
-------------------------------------------------------------
Also explicitly specifying position not in a compact order like in:
{code}
declare Person
name : String @position(4)
age : int @position(2)
end
{code}
causes the following exception
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.set(ArrayList.java:426)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.processFieldsPosition(TypeDeclarationBuilder.java:275)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.initTypeDeclaration(TypeDeclarationBuilder.java:216)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.getAndRegisterTypeDeclaration(TypeDeclarationBuilder.java:137)
at
org.drools.compiler.builder.impl.KnowledgeBuilderImpl.getAndRegisterTypeDeclaration(KnowledgeBuilderImpl.java:1543)
was (Author: mfusco):
Also explicitly specifying position not in a compact order like in:
{source}
declare Person
name : String @position(4)
age : int @position(2)
end
{source}
causes the following exception
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.set(ArrayList.java:426)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.processFieldsPosition(TypeDeclarationBuilder.java:275)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.initTypeDeclaration(TypeDeclarationBuilder.java:216)
at
org.drools.compiler.builder.impl.TypeDeclarationBuilder.getAndRegisterTypeDeclaration(TypeDeclarationBuilder.java:137)
at
org.drools.compiler.builder.impl.KnowledgeBuilderImpl.getAndRegisterTypeDeclaration(KnowledgeBuilderImpl.java:1543)
Trying to use a non-existing positional argument causes an
IndexOutOfBoundsException
------------------------------------------------------------------------------------
Key: DROOLS-559
URL:
https://issues.jboss.org/browse/DROOLS-559
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 6.1.0.CR2
Reporter: Mario Fusco
Assignee: Mario Fusco
Fix For: 6.1.0.Final
The attempt of using a non-existing positional argument should be reported as a compile
time error while at the moment it causes the following exception:
java.lang.IndexOutOfBoundsException: Error trying to access field at position 2
at org.drools.core.factmodel.ClassDefinition.getField(ClassDefinition.java:185)
at
org.drools.compiler.rule.builder.PatternBuilder.processPositional(PatternBuilder.java:609)
at
org.drools.compiler.rule.builder.PatternBuilder.processConstraintsAndBinds(PatternBuilder.java:518)
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)