2010-03-04 7 views
5

Aquí está el scenerio: Tenemos una aplicación que se ejecuta en Webphere Portal Server 6.1 y Spring MVC. Hay una página con un solo portlet que muestra una grilla llena de registros. Una vez que se hace clic en uno de esos registros, debe navegar a otro portlet que reside en una página diferente, posiblemente incluso una aplicación de portlet diferente en el mismo servidor de portal, y mostrar ese registro específico.portlets Navegación de la página con parámetros - Spring MVC, WebSphere Portal, y JSR 286

aquí está la pregunta: He leído que, mediante el uso de Portal de 2.0 "Render Pública Parámetros", puede compartir datos entre módulos de función - y que debe resolver la mayoría de mis problemas. El problema es que no puedo encontrar cómo funciona cuando uso Spring MVC. No puedo encontrar una referencia a "Parámetros de representación pública" en la documentación técnica de Spring MVC, pero algunas personas han dicho que lo están haciendo funcionar. ¿Puede alguien mostrarme específicamente dónde está la documentación detallada sobre esto, o darme un pequeño snippit de código de un ejemplo que muestra cómo puedo acceder a estos parámetros de representación pública en mis clases de controlador? Además, si hay una forma mejor de lograr esto en mi entorno, ¿qué es y dónde puedo encontrar un ejemplo? No responda con "Si necesita hacer esto, no debe utilizar un portal" o "Si utiliza la tecnología XYZ, puede hacer esto y aquello". No puedo cambiar el entorno, es lo que es, ¡solo necesito hacerlo funcionar! :) ¡Gracias!

Respuesta

3

Puede usar los parámetros de representación pública de la misma forma que usa sus propios parámetros de representación . Solo tienes que declararlos en tu portlet.xml. Tenga en cuenta que no tiene permitido tener parámetros de representación públicos que tienen el mismo nombre que los parámetros de representación "privados".

Sólo tiene que añadir algo como esto a su portlet.xml:

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

y añadir la siguiente línea a su descriptor de portlet:

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

continuación, puede utilizar las llamadas regulares getRenderParameter para "myParam" en todos los portlets que tienen esta entrada en su descriptor de portlet.

Para más información: http://blogs.oracle.com/deepakg/entry/jsr286_public_render_parameter_feature

+0

Sí - creo que esto va a funcionar. Mi confusión vino con el modelo basado en anotaciones para los controladores, porque no heredas de una clase ni implementas una interfaz. Después de ver algunos ejemplos más junto con su ejemplo, lo entiendo. ¡Gracias nuevamente por ayudar a un desarrollador de portlets inexperto! Hay cerca de 16 frameworks java que estamos usando en una aplicación Portal fuertemente basada en SOA. ¡Es mucho para tomar viniendo de un fondo .net! –

Cuestiones relacionadas