2012-05-04 4 views
2

私はVelocityテンプレートをレンダリングするために、単純なHTTPサーブレットを開発しようとしています。TemplateRendererを使用したJira-Servlet-Plugin

マイサーブレット:

Map<String, Object> context = Maps.newHashMap(); 
resp.setContentType("text/html;charset=utf-8"); 
templateRenderer.render("/templates/test/input.vm", context, httpRespnse.getWriter()); 

アトラシアン-plugin.xmlの

<webwork1 key="newactions1" name="New actions1" class="java.lang.Object"> 
    <actions> 
     <action name="test.ActionAlpha" alias="FirstNewAction"> 
      <view name="success">/templates/test/input.vm</view> 
      <view name="error">/templates/test/input.vm</view> 
      <view name="input">/templates/test/input.vm</view> 
     </action> 
    </actions> 
</webwork1> 

(参照:https://developer.atlassian.com/display/JIRADEV/Plugin+Tutorial+-+Internationalising+Your+Plugin

すべては、これまで正常に動作しますが、ページの後にメニュー - レンダリングされます左側のバーが見付かりません(ウェブセクションの他のメニュー - ウェブアイテム)

ブラウザでURLを手で呼び出すと、アクション名の後ろに "!default"が付き、サイドバーが表示されます。

http://host:port/jira/secure/FirstNewAction!default.jspa 

しかし、私は「!のデフォルトの」なしURLを呼び出すと、サーブレットが生成すると出力が同じです。 TemplateRendererが "!default"という用語を追加する可能性はありますか?

答えて

2

は、私はあなたがwebResourcesを含み、デフォルトのコンテキストが渡されるべきコンテキストパラメータを省略した場合

Map<String, Object> context = Maps.newHashMap(); 
templateRenderer.render("/templates/test/input.vm", context, httpRespnse.getWriter()); 

は、renderメソッドに空のマップを渡すと思います。もう一つのアイデアは、ヘッド部分

meta name="decorator" content="atl.admin" 

のようなものを追加することです