Velocityでstrをintegerに変更する方法

そもそも扱っている変数のタイプがstrかintかという部分で躓いていたのですが、 扱っている変数がstrだと分かった場合にintに変更する方法を残しておきます。 まず、$theDという変数に “3” が入っている状態です。

#set ($theD = ${portlet.getPortletConfig().getInitParameter("z1a-rows")})
>$theD
"3"

そして $intConv をintで定義して、 $foo2 を $intConv.parseInt( $theD ) で定義すると、

#set ( $intConv = 1 )
#set ( $foo2 = $intConv.parseInt( $theD ) )
#set ($theDay = $foo2 - 1)
>$theDay
2 

となるように、$foo2という形でstrだった変数をintに変えることが出来ました。 かなり躓いた点としては、少し調べていた時に出てきた方法では何度やっても上手くいかなかった部分です。

##$theD== "3"
#set($intString = $theD)
#set($Integer = 0)
$Integer.parseInt($intString)

この方法だと $Integer==0 となってしまいました。 もう少し深い理解が必要です。