日曜日, 20 3 月 2005

#Obfuscateが効かない この記事(#Obfuscateが効かない)を「はてなブックマーク」に追加 この記事をクリップ! この記事(#Obfuscateが効かない)を「del.icio.us」に追加

« blojsom 2.24リリース | Main | ネットワーク監視一行シェルコマンド »
このブログを運用しているblojsomも2.24にバージョンアップしたところ不具合らしき現象が見つかった。
テンプレートにasualを指定している場合、asual-column.vmの中に#Obfuscate($BLOJSOM_BLOG.getBlogOwnerEmail())というマクロが使用されているが、2.24に上げるとこの#Obfuscate()がそのまま表示されてしまう。
この#Obfuscate()マクロはブログオーナーのメールアドレスを16進変換し表示するためだけのものだが、このマクロが無いとメールアドレスがそのまま表示されてしまいスパマー用クローラにメールアドレスを収集されるかも知れない、困った。
とりあえず原因を探るために調べ始めた。
#Obfuscate()がそのまま表示されてしまうということはVelocityに解析対象とみなされていないということなので#Obfuscate()が定義されているvmファイルを探すことに。
どうやらblojsom-plugins-templates-2.24.jar内のorg/blojsom/plugin/velocity/page-macros.vmに定義されているようだ。
早速開いて見てみると
#macro(Obfuscate $text)$BLOJSOM_PLUGIN_SIMPLE_OBFUSCATION.obfuscate($text)#end
と定義されていたが特に問題は無いように思える。
その下に#RSSEnclosure()というマクロも定義されていたので試しにこのマクロは使用できるかテンプレートでテストしてみたところこのマクロもそのまま表示されてしまった、やっぱりおかしい。
#Obfuscate()の前にある#MultiBlogFriendlyPermalink()もそのまま表示される。
しかしその前にある#MathCommentFormItem()は正常に処理され表示された。
どうやら#MultiBlogFriendlyPermalink()マクロに何か問題があるようだ。
見ると
#set ($entryLink = $entry.getMetaData().get("BLOJSOM_PLUGIN_INTERNAL_AGGREGATOR_BLOG_URL")
$categoryForEntry$entry.getDateAsFormat("yyyy")/$entry.getDateAsFormat("MM")/
$entry.getDateAsFormat("dd")/$entry.getPermalink()")
の部分に対応の取れていない"があったのでこれを削除してみた。
が、何も変わらず…。
その後足したり引いたりしてみて色々試してみたところ
$categoryForEntry$entry.getDateAsFormat("yyyy")/$entry.getDateAsFormat("MM")/
$entry.getDateAsFormat("dd")/$entry.getPermalink()"
の部分を削除すれば正常に処理される事が判明したが、削除するわけにもいかないのでとりあえずこの#MultiBlogFriendlyPermalink()マクロのブロックをpage-macros.vmの一番最後に移動させて#Obfuscate()マクロと#RSSEnclosure()マクロを有効にさせた。
結果として#Obfuscate()マクロは使えるようになったが#MultiBlogFriendlyPermalink()マクロはそのままなので依然使用できない。
でもこの#MultiBlogFriendlyPermalink()マクロはどこにも使用されていないようだし、そもそも使い道が分からないので気にしない。
Posted by tsujitako at 3:02 午前 in Java/blojsom/

Comments on this entry:

Left by leon at 木, 6 7 12:01 午後

Here you can leave your mark

Left by Damian Walker at 月, 20 11 1:28 午前

http://www.watch-football.net/contactus.html http://www.watch-football.net/feed.html http://www.watch-football.net/about.html
Futball Futball Feed Watchfutball

Left by warsaw hotels at 火, 5 12 10:20 午後

I do not think so, go to
http://www.apartments.waw.pl

Your comment:

(not displayed)
 
 
 

Live Comment Preview: