Parâmetros em páginas/etiquetas/URLs no Portal IBM
Que o produto IBM WebSphere Portal Server é um dos principais produtos de Portal do mercado, ninguém discute. É um produto que possui muitas características positivas e flexíveis que permitem uma administração e customização bem rápidas.
Mas é claro, que dependendo das necessidades do projeto, muitas customizações podem ser necessárias.
A parte de Gerenciamento de Páginas é muito user-friendly, permitindo criar páginas, etiquetas e URLs muito rapidamente. Para páginas e etiquetas é possível, inclusive, definir um ícone para ser exibido na construção dos menus. Mas por algum motivo, que ainda não descobrir, esse recurso não está disponível para criação de uma URL.

Nem na alteração dos dados.

Bom, não está disponível não quer dizer que não seja possível implementar, e até de forma simples.
Todos esses recursos permitem que façamos a inclusão de parâmetros, que podem ser tratados nos códigos disponíveis na construção do Tema.
Nos códigos do Tema, vê-se o tratamento do parâmetro “com.ibm.portal.PageIcon” e intuitivamente podemos tentar adicionar esse parâmetro com o valor da localidade do ícone. Vejam bem, eu disse TENTAR, pois a tentativa mostrar-se-á impossível.

O produto não permite que sejam incluídos parâmetros que o texto seja iniciado com “com.ibm.portal”. Bom, então o que precisamos fazer é adicionar um parâmetro com nome diferente, como “com.SUAEMPRESA.PageIcon”.

Com o parâmetro adicionado, a única coisa que precisamos fazer agora é o tratamento no local onde queiramos exibí-lo.
No Tema do Portal podem existir vários pontos que exibem uma listagem de páginas, como os menus, rodapés, etc. O trecho de código que precisamos encontrar para tratar o parâmetro adicionado é similar ao abaixo.
Object pageIcon = iMetaData.getValue("com.ibm.portal.PageIcon");
if(pageIcon != null){
%>
<img src="<portal-logic:urlFindInTheme file='<%=pageIcon.toString()%>'/>" title="<portal-fmt:title/>" alt="<portal-fmt:title/>" border="0" align="absmiddle"/>
<% }
} else { %>
<img src="<portal-logic:urlFindInTheme file='icons/page/default.gif'/>" border="0" align="absmiddle"/>
<% } %>
Este trecho de código captura um parâmetro, faz uma validação simples e exibe ou não a imagem. O que precisa ser feito é apenas a adição da linha abaixo antes da validação “if”.
if (pageIcon == null) iMetaData.getValue("com.SUAEMPRESA.PageIcon");
Simples assim.
Esta mesma técnica foi muito útil para apenas ESCONDER uma página da construção do menu. A página continua ativa mas apenas não é exibida no menu. Muito útil.