当我将速度从1.7更新为2.0时,$ velocityCount无法正常工作,并出现错误:

[org.apache.velocity.rendering] - Left side ($velocityCount) of comparison operation has null value


发生什么事?

我的代码如下:

"images": [
       #foreach($image in $cl.images)
        #if($velocityCount <= 3)
        #set($img = $cot.encryptUrlForTrans($image.imageUrl))
        #set($_img = "http://tf.example.com/tc/img/")
        #if($velocityCount != 1),#end
        {
           "url": "$_img$img?enable=&w=120&h=80&cut=",
           "width": 120,
           "height": 80
         }
     #end
     #end
     ]


并且行#set($img = $cot.encryptUrlForTrans($image.imageUrl))具有NullPointerException吗?如果可以执行,则$ image必须不为null,我不知道错误如何发生?因为方法cryptoUrlForTrans(null)具有正确的返回值。

最佳答案

您需要遵循upgrading instructions并检查日志中是否存在先前的错误。

需要改变依赖关系


  为了最大限度地提高与Velocity 1.x的向后兼容性,
  确保在Velocity配置中包括以下几行:
  
  runtime.conversion.handler =无space.gobbling = bc

关于java - velocity2.0中的$ velocityCount不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45855409/

10-10 09:05