My Oracle Support Banner

DecisionPointBuilder Failed With IndexOutOfBoundsException (Doc ID 2850894.1)

Last updated on NOVEMBER 15, 2023

Applies to:

Oracle Business Process Management Suite - Version 12.2.1.4.0 and later
Information in this document applies to any platform.

Symptoms

After migrating rule files from 11g to 12c , when calling build() method of DecisionPointBuilder fails with
IndexOutOfBoundsException using Oracle Rule SDK

javax.servlet.ServletException: java.lang.IndexOutOfBoundsException: Index:1, Size: 0
at
weblogic.servlet.internal.StubSecurityHelper.initServletInstance(StubSecurityHelper.java:102)
at
weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:87)
at
weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:74)
at
weblogic.servlet.internal.StubLifecycleHelper.(StubLifecycleHelper.java:57)
at
weblogic.servlet.internal.StubLifecycleHelper.(StubLifecycleHelper.java:31)
at
weblogic.servlet.internal.ServletStubImpl.initStubLifecycleHelper(ServletStubImpl.java:676)
at
weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:615)
at
weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:417)

at
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:307)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:169)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at oracle.security.jps.ee.http.JpsAbsFilter$3.run(JpsAbsFilter.java:175)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
at
oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:650)
at
oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:112)
at
oracle.security.jps.ee.http.JpsAbsFilter.doFilterInternal(JpsAbsFilter.java:293)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:150)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:94)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:248)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at
oracle.jrf.servlet.ExtensibleGlobalFilter.doFilter(ExtensibleGlobalFilter.java:92)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at
weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:32)
at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3797)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3763)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:344)
at
weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197)
at
weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71)
at
weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2451)
at
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2299)
at
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2277)
at
weblogic.servlet.internal.ServletRequestImpl.runInternal(ServletRequestImpl.java:1710)
at
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1670)
at
weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:272)
at
weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)
at
weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)
at
weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)
at
weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at
weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:360)
Caused by: java.lang.IndexOutOfBoundsException: Index: 1, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at
oracle.rules.sdk2.dictionary.DictionaryComponentTable.get(DictionaryComponentTable.java:760)
at
oracle.rules.sdk2.dictionary.DictionaryComponentTable.get(DictionaryComponentTable.java:34)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.getPrevious(DictionaryComponent.java:445)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.getPrevious(DictionaryComponent.java:449)
at oracle.rules.sdk2.ruleset.Pattern.inScopeVariables(Pattern.java:847)
at
oracle.rules.sdk2.ruleset.RuleComponent.inScopeVariables(RuleComponent.java:241)
at
oracle.rules.sdk2.ruleset.RuleComponent.genVarName(RuleComponent.java:550)
at oracle.rules.sdk2.ruleset.FactBinding.get(FactBinding.java:293)
at oracle.rules.sdk2.ruleset.Pattern.get(Pattern.java:226)
at oracle.rules.sdk2.ruleset.Pattern.getVariable(Pattern.java:659)
at oracle.rules.sdk2.ruleset.Pattern.getVariable(Pattern.java:664)
at oracle.rules.sdk2.ruleset.Pattern.getAlias(Pattern.java:787)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.getAlias(DictionaryComponent.java:202)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.getAlias(DictionaryComponent.java:189)
at oracle.rules.sdk2.ruleset.ExprParser.sameValue(ExprParser.java:3128)
at oracle.rules.sdk2.ruleset.Action.doSync(Action.java:1878)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.sync(DictionaryComponent.java:2128)
at oracle.rules.sdk2.ruleset.Action.get(Action.java:1645)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.replaceTempIDs(DictionaryComponent.java:3094)
at
oracle.rules.sdk2.dictionary.DictionaryComponentTable.replaceTempIDs(DictionaryComponentTable.java:1312)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.replaceTempIDs(DictionaryComponent.java:3096)
at
oracle.rules.sdk2.dictionary.DictionaryComponentTable.replaceTempIDs(DictionaryComponentTable.java:1312)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.replaceTempIDs(DictionaryComponent.java:3096)
at
oracle.rules.sdk2.dictionary.DictionaryComponentTable.replaceTempIDs(DictionaryComponentTable.java:1312)
at
oracle.rules.sdk2.dictionary.DictionaryComponent.replaceTempIDs(DictionaryComponent.java:3096)
at
oracle.rules.sdk2.dictionary.RuleDictionary.initFromElement(RuleDictionary.java:1975)
at
oracle.rules.sdk2.repository.impl.RuleRepositoryImpl.docToDictionary(RuleRepositoryImpl.java:933)
at oracle.rules.sdk2.store.mds.MDSStore._get(MDSStore.java:531)
at
oracle.rules.sdk2.repository.impl.RuleRepositoryImpl.load(RuleRepositoryImpl.java:193)
at
oracle.rules.sdk2.decisionpoint.DecisionPoint.loadDictionaryFromRepository(DecisionPoint.java:201)
at
oracle.rules.sdk2.decisionpoint.DecisionPoint.init(DecisionPoint.java:172)
at
oracle.rules.sdk2.decisionpoint.DecisionPointBuilder.build(DecisionPointBuilder.java:147)
at RuleServlet.init(RuleServlet.java:41)
at
weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:356)
at
weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:307)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:344)
at
weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197)
at
weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71)
at
weblogic.servlet.internal.StubSecurityHelper.initServletInstance(StubSecurityHelper.java:99)



Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.