0

次のように定義されたWebスクリプトがあります。

  • mywebscript.get.desc.xml
  • mywebscript.get.properties
  • mywebscript.get.json.ftl

この Web スクリプトは、次のような Java コントローラーによって支えられています。

<bean id="webscript.mypackage.mywebscript.get"
    class="javapackage.MyWebscriptGet" parent="webscript">
    <property name="serviceRegistry" ref="ServiceRegistry" />
    <property name="messageService" ref="messageService" />
</bean>

messageService「mywebscript.get.properties」で定義された一部のプロパティを Java コードで取得できません。 andを使用しようとしましたI18nUtil.getMessageが、他のプロパティが読み込まれているようですが、必要なものは読み込まれていません。

4

1 に答える 1

3

ファイル内のリソースはwebscriptname.get.properties、メッセージ サービスまたは I18NUtil 経由では利用できません。後者の 2 つはグローバルにスコープされますが、webscript プロパティはその Webscript だけに固有です。それらを取得するには、WebScript 定義を使用する必要があります。

Java では、次のようなことを意味します。

protected Map<String, Object> executeImpl(WebScriptRequest req,
      Status status, Cache cache) 
{
   Map<String, String> templateVars = req.getServiceMatch().getTemplateVars();
   WebScript webscript = req.getServiceMatch().getWebScript();
   ResourceBundle webscriptRB = webscript.getResources();

   ....
}

から をWebScriptRequest取得しMatch、そこから を取得するWebScriptと、Webscript 固有のプロパティがResourceBundle

于 2013-04-16T09:09:20.063 に答える