[
https://issues.apache.org/jira/browse/FREEMARKER-152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17155281#comment-17155281
]
Dániel Dékány commented on FREEMARKER-152:
------------------------------------------
FreeMarker comes from Android Studio in this case. But you can still print the
version with {{$\{.version}}} (unless it's a very very old version).
I can't reproduce this problem with current version (but I don't think that
such bug ever existed). So I can still only say, check what the actual value of
`activityName` is, in the situation where the error occurs. Maybe sometimes
it's not properly set.
It's also strange that the error message says index 1, not 0.
> error while executing freemaker template
> ----------------------------------------
>
> Key: FREEMARKER-152
> URL: https://issues.apache.org/jira/browse/FREEMARKER-152
> Project: Apache Freemarker
> Issue Type: Bug
> Reporter: Gyan Sai Kallury
> Priority: Blocker
>
> Error executing FreeMarker template
> FreeMarker template error:
> No error description was specified for this error; low-level message:
> java.lang.StringIndexOutOfBoundsException: String index out of range: 1
> The failing instruction (FTL stack trace):
> ----------
> ==> ${activityName[0]?lower_case} [in template
> "${activityName[0]?lower_case}${activityName[1..]}" at line 1, column 1]
> ----------
> Java stack trace (for programmers):
> ----------
> freemarker.core._MiscTemplateException: [... Exception message was already
> printed; see it above ...]
> at
> freemarker.core.DynamicKeyName.dealWithNumericalKey(DynamicKeyName.java:136)
> at freemarker.core.DynamicKeyName._eval(DynamicKeyName.java:104)
> at freemarker.core.Expression.eval(Expression.java:111)
> at freemarker.core.Expression.evalAndCoerceToString(Expression.java:115)
> at
> freemarker.core.StringBuiltins$StringBuiltIn._eval(StringBuiltins.java:87)
> at freemarker.core.Expression.eval(Expression.java:111)
> at freemarker.core.Expression.evalAndCoerceToString(Expression.java:115)
> at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
> at freemarker.core.Environment.visit(Environment.java:265)
> at freemarker.core.MixedContent.accept(MixedContent.java:93)
> at freemarker.core.Environment.visit(Environment.java:265)
> at freemarker.core.Environment.process(Environment.java:243)
> at freemarker.template.Template.process(Template.java:277)
> at
> com.android.tools.idea.templates.StringEvaluator.evaluate(StringEvaluator.java:58)
> at
> com.android.tools.idea.templates.ParameterValueResolver.computeParameterValue(ParameterValueResolver.kt:57)
> at
> com.android.tools.idea.templates.ParameterValueResolver.computeUpdatedValues(ParameterValueResolver.kt:108)
> at
> com.android.tools.idea.templates.ParameterValueResolver.computeParameterValues(ParameterValueResolver.kt:98)
> at
> com.android.tools.idea.templates.ParameterValueResolver.resolve(ParameterValueResolver.kt:48)
> at
> com.android.tools.idea.templates.ParameterValueResolver$Companion.resolve(ParameterValueResolver.kt:135)
> at
> com.android.tools.idea.npw.template.ConfigureTemplateParametersStep.evaluateParameters(ConfigureTemplateParametersStep.kt:350)
> at
> com.android.tools.idea.npw.template.ConfigureTemplateParametersStep.onEntering(ConfigureTemplateParametersStep.kt:275)
> at
> com.android.tools.idea.wizard.model.ModelWizard.goForward(ModelWizard.java:309)
> at
> com.android.tools.idea.wizard.model.ModelWizard.<init>(ModelWizard.java:136)
> at
> com.android.tools.idea.wizard.model.ModelWizard.<init>(ModelWizard.java:47)
> at
> com.android.tools.idea.wizard.model.ModelWizard$Builder.build(ModelWizard.java:560)
> at
> com.android.tools.idea.actions.NewAndroidComponentAction.actionPerformed(NewAndroidComponentAction.kt:158)
> at
> com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:298)
> at
> com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:315)
> at
> com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:293)
> at
> com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:263)
> at
> com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:77)
> at
> com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
> at
> javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
> at
> com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:110)
> at
> com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:83)
> at
> com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:107)
> at
> com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:116)
> at
> com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:121)
> at
> com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:110)
> at
> com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:517)
> at
> com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:36)
> at
> com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:539)
> at java.awt.Component.processMouseEvent(Component.java:6550)
> at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
> at java.awt.Component.processEvent(Component.java:6315)
> at java.awt.Container.processEvent(Container.java:2239)
> at java.awt.Component.dispatchEventImpl(Component.java:4899)
> at java.awt.Container.dispatchEventImpl(Container.java:2297)
> at java.awt.Component.dispatchEvent(Component.java:4721)
> at
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
> at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
> at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
> at java.awt.Container.dispatchEventImpl(Container.java:2283)
> at java.awt.Window.dispatchEventImpl(Window.java:2746)
> at java.awt.Component.dispatchEvent(Component.java:4721)
> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
> at java.awt.EventQueue.access$500(EventQueue.java:98)
> at java.awt.EventQueue$3.run(EventQueue.java:715)
> at java.awt.EventQueue$3.run(EventQueue.java:709)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
> at java.awt.EventQueue$4.run(EventQueue.java:739)
> at java.awt.EventQueue$4.run(EventQueue.java:737)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
> at
> com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:908)
> at
> com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:846)
> at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:778)
> at
> com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:424)
> at
> com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:698)
> at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:423)
> at
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
> at
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
> at
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
> Caused by: java.lang.StringIndexOutOfBoundsException: String index out of
> range: 1
> at java.lang.String.substring(String.java:1963)
> at
> freemarker.core.DynamicKeyName.dealWithNumericalKey(DynamicKeyName.java:134)
> ... 78 more
--
This message was sent by Atlassian Jira
(v8.3.4#803005)