Antes de criar qualquer Plugin EXT leia bem o tópico no link a seguir:
https://www.liferay.com/pt/documentation/liferay-portal/6.1/development/-/ai/ext-plugi-4
Eu aprendi da pior maneira que tinha que apagar todos os arquivos em
docroot/WEB-INF/ext-web/docroot/WEB-INF que não estão sendo customizados!Assim, este post registra como criar um plugin EXT apenas estendendo as funcionalidades do Liferay, criando um ext-spring.xml onde alteramos o comportamento de um bean específico fazendo o Liferay utilizar a nossa nova classe ao invés de sobrescrever uma classe original.
Todos os beans de classes do Liferay estão disponíveis no portal-impl/src/META-INF/portal-spring.xml do fonte. Basta ir até esse arquivo,
- copiar apenas o bean que gostaria de estender
- colar no seu docroot/WEB-INF/ext-impl/src/META-INF/ext-spring.xml (não se esqueça de copiar a tag <beans> mais externa!)
- alterar o nome da classe que implementa esse bean!
Para fazer o deploy basta gerar o war, copia-lo para a pasta deploy e reiniciar o liferay
Já para o undeploy o Liferay é meio burrinho. É preciso parar o Liferay e apagar tudo manualmente (ou por script). Mas note que o "undeploy" só é possível porque não fizemos nenhuma modificação nas classes do Liferay, estamos apenas incluindo um novo comportamento.
tomcat_home="./tomcat" app_name="$1" rm -rf $tomcat_home/temp rm -rf $tomcat_home/work rm -rf $tomcat_home/webapps/$app_name-ext rm -rf $tomcat_home/webapps/ROOT/html/portlet/ext rm -f $tomcat_home/lib/ext/ext-$app_name-ext-service.jar rm -f $tomcat_home/webapps/ROOT/WEB-INF/lib/ext-$app_name-ext-util-bridges.jar rm -f $tomcat_home/webapps/ROOT/WEB-INF/lib/ext-$app_name-ext-util-taglib.jar rm -f $tomcat_home/webapps/ROOT/WEB-INF/lib/ext-$app_name-ext-util-java.jar rm -f $tomcat_home/webapps/ROOT/WEB-INF/lib/ext-$app_name-ext-impl.jar rm -f $tomcat_home/webapps/ROOT/WEB-INF/ext-$app_name-ext.xml rm -f $tomcat_home/webapps/ROOT/WEB-INF/tiles-defs-ext.xml
fontes:
Nenhum comentário:
Postar um comentário