Установить переменную для массива в Escape Velocity - PullRequest
1 голос
/ 14 мая 2019

Я пытаюсь установить переменную для массива в Escape Velocity, как это делается в документации :

#set ($my = "blah")
#set ($say = ["not", $my, "fault"])

Однако я получаю следующую ошибку:

error: An error occurred in the @AutoProtoModel processor while processing com.google.protobuf.contrib.autoprotomodel.prototype.AlbumModel:
  com.google.escapevelocity.ParseException: Expected an expression, on line 46, at text starting: ["not", $my, "fault"...
    com.google.escapevelocity.Parser.parseException(Parser.java:1093)
    com.google.escapevelocity.Parser.parsePrimary(Parser.java:923)
    com.google.escapevelocity.Parser.parseUnaryExpression(Parser.java:890)
    com.google.escapevelocity.Parser.parseExpression(Parser.java:797)
    com.google.escapevelocity.Parser.parseSet(Parser.java:401)
    com.google.escapevelocity.Parser.parseDirective(Parser.java:328)
    com.google.escapevelocity.Parser.parseNode(Parser.java:218)
    com.google.escapevelocity.Parser.parseTokens(Parser.java:126)
    com.google.escapevelocity.Parser.parse(Parser.java:118)
    com.google.escapevelocity.Template.parseFrom(Template.java:112)
    com.google.escapevelocity.Template.parseFrom(Template.java:94)
    com.google.protobuf.contrib.autoprotomodel.prototype.BackingClassGenerator.loadTemplate(BackingClassGenerator.java:97)
...

Почему это не работает?

Это ошибка в проекте Escape Velocity ?

1 Ответ

0 голосов
/ 15 мая 2019

Кажется, что Escape Velocity не поддерживает установку массива Java (из документов):

В отличие от Velocity, EscapeVelocity не позволяет $ indexme быть массивом Java.

Почему бы не использовать Velocity? EscapeVelocity использует старую версию 1.7 вместо новой 2.0, и у вас есть дополнительные инструменты для скорости

EscapeVelocity - это шаблонизатор, который можно использовать из Java. Это переопределение подмножества функциональных возможностей Apache Velocity.

Это не официальный продукт Google.

...