Exemplo: Configurando o Descritor de Implementação do Portlet Estendido para Desativar PortletServingServlet
O atendimento de URL suporta acesso direto a todas as funções e estados de um portlet, criando as URLs apropriadas. Em uma configuração de produção, em que o portlet é atendido por meio de um aplicativo de portal corporativo que aplica seu próprio controle de acesso, é considerado risco à segurança. Definindo a propriedade portletServingEnabled como false, um administrador pode assegurar-se de que um portlet sensível nunca seja acessado por atendimento de URL direta.
As extensões para o descritor de implementação de portlet são definidas dentro de um arquivo chamado ibm-portlet-ext.xmi. Esse descritor de implementação é um descritor opcional que você pode usar para configurar extensões do WebSphere para o aplicativo de portlet e seus portlets. Por exemplo, você pode desativar o servlet PortletServingServlet para o aplicativo de portlet no descritor de implementação do portlet estendido.
O arquivo de extensão ibm-portlet-ext.xmi é carregado durante a inicialização do aplicativo. Se não houver arquivos de extensão especificados com essa configuração, os valores padrão do contêiner de portlet serão utilizados.
O padrão para o atributo portletServingEnabled é true. Segue um exemplo de como configurar o aplicativo para que um servlet PortletServingServlet não seja criado para nenhum portlet no aplicativo de portlets.
<?xml version="1.0" encoding="UTF-8"?>
<portletappext:PortletApplicationExtension xmi:version="1.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:portletappext="portletapplicationext.xmi"
xmlns:portletapplication="portletapplication.xmi"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmi:id="PortletApp_ID_Ext"
portletServingEnabled="false">
<portletappext:portletApplication href="WEB-INF/portlet.xml#myPortletApp"/>
</portletappext:PortletApplicationExtension>