portal-post-upgrade falha no deploy de aplicativos personalizados
A task portal-post-upgrade utiliza os conteúdos exportados da task portal-pre-upgrade. Estes conteúdos são exportados da versão anterior do portal com o parâmetro -DbackupDirectory. Dentro deste pacote estão listados todos os portlets da versão anterior. A task portal-post-upgrade absorve a lista de portlets listados no pacote exportado e instala na nova versão. Porém, é comum que aplicativos personalizados ocorram erros no momento do re-deploy. Um erro comum é na descompactação do aplicativo .war. No momento do deploy ele tenta descompactar o aplicativo em wp_profile/installedApps_migated. Se o war estiver corrompido, não será possível continuar com o deploy, neste caso é necessário atualizar o war corronpido por uma versão estável e funcional. Outro erro que também pode ocorre é a aplicação não possuir a extensão .war. Exemplo: app.war.v10. A aplicação em questão está instalada na versão anterior do portal porém o portal no momento do re-deploy na nova versão não entende a extenção .v10. Veja o exemplo abaixo.
“message id=”EJPPD0035E”com.ibm.wps.command.applications.
AppWarFileException: EJPPD0035E: The WAR file /opt/websphere/wp_profile/PortalServer/deployed/app.war.v10 could not be extracted into directory /opt/websphere/wp_profile/PortalServer/deployed/temp/app .war.v10.
WrappedException is: java.io.IOException: The given input stream is not an archive. java.io.IOException: The given input stream is not an archive.“
A solução para esse problema é atualizar o aplicativo app.war.v10 para app .war na versão anterior do portal. Depois, executar novamente o portal-pre-upgrade. Copiar o conteúdo do parâmetro -DbackupDirectory para um diretório no novo portal. No novo portal rodar novamente a task portal-post-upgrade direcionando para o parâmetro -DbackupDirectory que contém a cópia da versão anterior.