CQ5.X: Os pacotes OSGi contidos no pacote de conteúdo em /apps/appname/install nem sempre são reinstalados

Problema

Os pacotes OSGi da nossa aplicação incluídos no nosso pacote de conteúdo CQ5 sob /apps/<appname>/ install nem sempre são instalado quando instalamos o pacote?

Causa

Esse problema é devido aos critérios usados pelo módulo jcrinstall do Apache Sling ao decidir se um pacote deve ser atualizado ou não.

  • Para mais informações sobre jcrinstall consulte aqui

Solução

Para resolver este problema para que toda vez que você instalar o pacote, o jsp será reinstalado (através do módulo jcrinstall do Sling):

  1. Adicione a seguinte regra de filtro no início de seu filter.xml em META-INF/vault/filter.xml:
    <workspaceFilter version="1.0">
    <filter root="/apps/<appname>">
    <include pattern="/apps/<appname>(/.*)?" />
    <exclude pattern="/apps/<appname>/install(/.*)?" />
    </filter>
    ...

Esse filtro fará com que os pacotes antigos sejam excluídos e as substituições sejam instaladas.

Observação: <appname> no código acima deve ser substituído pelo nome do seu aplicativo.

Aplica-se a

CQ 5.3

Reference

1 http://sling.apache.org/site/jcr-installer-jcrjcrinstall-and-osgiinstaller.html

Observação:

Não aplique esta solução alternativa para as instalações do CQ5.4, pois isso causará mais problemas.  Se você estiver enfrentando esse problema no CQ5.4, envie um ticket DayCare.

 Adobe

Receba ajuda com mais rapidez e facilidade

Novo usuário?