[jboss-jira] [JBoss JIRA] (DROOLS-559) Trying to use a non-existing positional argument causes an IndexOutOfBoundsException
Mario Fusco (JIRA)
issues at jboss.org
Tue Jul 22 05:35:30 EDT 2014
[ https://issues.jboss.org/browse/DROOLS-559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12986933#comment-12986933 ]
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)
More information about the jboss-jira
mailing list