java - 为什么资源包没有加载到java支持的webscript中

标签 java alfresco spring-surf

我有一个网页脚本定义如下:

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

该网页脚本由如下 java Controller 支持:

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

我无法在 java 代码中检索“mywebscript.get.properties”中定义的某些属性, 我尝试使用 messageServiceI18nUtil.getMessage,但似乎加载了其他属性,但我需要的属性没有加载。

最佳答案

webscriptname.get.properties 文件中的资源无法通过消息服务或 I18NUtil 获取。后两者是全局范围的,而 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 特定属性作为 资源包

关于java - 为什么资源包没有加载到java支持的webscript中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16032076/

相关文章:

javascript - Alfresco:查找节点的关联工作副本

alfresco - 将 Alfresco 上传限制为特定文件扩展名(例如 : users can only upload PDFs)

java - 如何在 Spring surf java webscript 中将上传的文件上传到本地文件夹?

java - Spring surf 和 webscripts 项目消歧

java - 错误: cannot find symbol (using replaceAll ) codenameone

java - 如何在 Eclipse 中从 MoDisco java 模型生成 java 代码?

Java Class.isAssignableFrom 困惑

java - 使用 PrintWriter 在 Java Servlet 上输出 XML

java - 如何将上下文模型值链接到露天的数据列表项?