Spring mvc 带参数的Portlet页面导航-SpringMVC、WebSpherePortal和;JSR 286

Spring mvc 带参数的Portlet页面导航-SpringMVC、WebSpherePortal和;JSR 286,spring-mvc,portal,websphere-portal,Spring Mvc,Portal,Websphere Portal,这是场景: 我们有一个在WebSphere Portal Server 6.1和Spring MVC上运行的应用程序。有一个包含单个portlet的页面,其中显示了一个充满记录的网格。单击其中一条记录后,它必须导航到驻留在不同页面上的另一个portlet(甚至可能是同一门户服务器上的不同portlet应用程序),并显示该特定记录 问题是: 我已经读到,通过使用Portal2.0的“公共渲染参数”,您可以在Portlet之间共享数据,这应该可以解决我的大部分问题。问题是,在使用SpringMVC时

这是场景: 我们有一个在WebSphere Portal Server 6.1和Spring MVC上运行的应用程序。有一个包含单个portlet的页面,其中显示了一个充满记录的网格。单击其中一条记录后,它必须导航到驻留在不同页面上的另一个portlet(甚至可能是同一门户服务器上的不同portlet应用程序),并显示该特定记录

问题是:
我已经读到,通过使用Portal2.0的“公共渲染参数”,您可以在Portlet之间共享数据,这应该可以解决我的大部分问题。问题是,在使用SpringMVC时,我找不到它是如何工作的。我在SpringMVC技术文档中找不到对“公共渲染参数”的引用,但有些人说他们可以使用它。有人能具体告诉我详细的文档在哪里吗,或者给我一个小代码示例,演示如何在控制器类中访问这些公共渲染参数?另外,如果在我的环境中有更好的方法来实现这一点,那是什么?我在哪里可以找到一个例子?请不要回答“如果您需要这样做,您不应该使用门户”或“如果您使用XYZ技术,那么您可以这样做和那样做”。我不能改变环境——它就是这样——我只需要让它运转起来!:)谢谢

使用公共渲染参数的方式与使用自己的渲染参数的方式相同 渲染参数。您只需要在portlet.xml中声明它们。 请注意,不允许使用 与“专用”渲染参数同名

您只需要向portlet.xml中添加如下内容:

<public-render-parameter>
      <identifier>myParam</identifier>
      <qname xmlns:x="http://sun.com/params">x:myParam</qname>
</public-render-parameter>

myParam
x:myParam
并将以下行添加到portlet描述符:

<portlet>
      . . .
     <supported-public-render-parameter>myParam</supported-public-render-parameter>
</portlet>

. . .
myParam
然后,您可以在portlet描述符中包含此项的所有portlet中使用常规getRenderParameter调用“myParam”

有关更多信息:

是的-我认为这会奏效。我对控制器的基于注释的模型感到困惑,因为您不是从类继承的,也不是从接口实现的。在结合你的例子看了更多的例子后,我明白了。再次感谢您帮助一位经验不足的portlet开发人员!我们在一个高度事务化的基于SOA的门户应用程序中使用了大约16个java框架。从.net的背景中可以学到很多东西!