JSP Portlets é a forma mais simples de se criar portlets no Liferay Portal. Estes slides, parte do curso de Liferay ministrado pela SEA Tecnologia, ilustram sua criação e detalha algumas de suas estruturas internas.
3. O Liferay possui diversos níveis de
customização
Customização
Liferay
Extension Código
Plugins
Environment Fonte
Portlets Temas Layouts
3
Monday, November 16, 2009
14. O mais comum, entretanto, é
o uso da classe
GenericPortlet, que
‘substitui’ o método render
por outros 3 métódos
doView, doEdit e doHelp
14
Monday, November 16, 2009
15. O mais comum, entretanto, é
o uso da classe
GenericPortlet, que
‘substitui’ o método render
por outros 3 métódos
doView, doEdit e doHelp
Invocado para
renderização do
portlet no modo
View
14
Monday, November 16, 2009
16. O mais comum, entretanto, é
o uso da classe
GenericPortlet, que
‘substitui’ o método render
por outros 3 métódos
doView, doEdit e doHelp
Invocado para
renderização do
portlet no modo
Edit
14
Monday, November 16, 2009
17. O mais comum, entretanto, é
o uso da classe
GenericPortlet, que
‘substitui’ o método render
por outros 3 métódos
doView, doEdit e doHelp
Invocado para
renderização do
portlet no modo
Help
14
Monday, November 16, 2009
18. JSP Portlets
a forma de portlet mais simples
Monday, November 16, 2009
23. <portlet>
<portlet-name>hello-liferay</portlet-name>
<display-name>Hello Liferay</display-name>
<portlet-class>com.sample.jsp.portlet.JSPPortlet</portlet-class>
<init-param>
<name>view-jsp</name>
<value>/view.jsp</value>
</init-param>
<init-param>
<name>edit-jsp</name>
<value>/edit.jsp</value>
</init-param>
(...)
<supports> Vamos
<mime-type>text/html</mime-type> acrescentar
<portlet-mode>view</portlet-mode> também o
<portlet-mode>edit</portlet-mode> suporte o modo
</supports>
(...)
Edit
20
Monday, November 16, 2009
24. <portlet>
<portlet-name>hello-liferay</portlet-name>
<display-name>Hello Liferay</display-name>
<portlet-class>com.sample.jsp.portlet.JSPPortlet</portlet-class>
<init-param>
<name>view-jsp</name>
<value>/view.jsp</value> Quando mais de
</init-param> um modo é
<init-param> suportado pelo
<name>edit-jsp</name> portlet, é preciso
<value>/edit.jsp</value> especificá-los
</init-param>
(...)
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>view</portlet-mode>
<portlet-mode>edit</portlet-mode>
</supports>
(...)
21
Monday, November 16, 2009
25. Criamos a página
edit.jsp para o
modo Edit do
portlet
22
Monday, November 16, 2009
26. Fazemos o
deploy do
portlet...
23
Monday, November 16, 2009
27. Modo Edit
habilitado...
24
Monday, November 16, 2009
32. Evita o conflito de nomes
na página do portal
(lembre-se que este é apenas um
fragmento de HTML)
29
Monday, November 16, 2009
33. Qual URL deverá ser
chamada no submit do
formulário?
29
Monday, November 16, 2009
34. De fato, não sabemos.
o portlet é quem tem que nos dizer
30
Monday, November 16, 2009
35. A classe GenericPortlet
disponibiliza 3 métódos de
renderização de portlet
doView, doEdit, doHelp
...que são chamados antes do
portlet entrar em um modo
específico
31
Monday, November 16, 2009
36. Portanto, vamos modificar o
método doEdit para que a
URL a ser utilizada pelo
formulário de edit.jsp seja
previamente disponibilizada
32
Monday, November 16, 2009
37. E modificar a página
edit.jsp para que a action
do formulário seja
corretamente configurada
33
Monday, November 16, 2009
38. Visualmente,
nada mudou...
34
Monday, November 16, 2009
40. Já temos um portlet com
suporte ao modo Edit.
Temos um formulário para
configuração do portlet.
Só nos resta tratar a
submissão do formulário
36
Monday, November 16, 2009
41. Em portlets,
submit de dados
são tratados pelo
método
processAction()
37
Monday, November 16, 2009
42. Vamos criar alguma
lógica no
processAction()
38
Monday, November 16, 2009
43. Captura
parâmetros da
requisição
38
Monday, November 16, 2009
44. Guarda valor
enviado
38
Monday, November 16, 2009
45. Redireciona
portlet para seu
modo View
38
Monday, November 16, 2009
50. Existem técnicas mais avançadas mas,
com isso, 80% das portlets existentes
(cadastros) podem ser desenvolvidos
http://www.flickr.com/photos/dejay181/395737393/in/set-72157594529615566/ 43
Monday, November 16, 2009
51. It’s up to you!
http://www.flickr.com/photos/shutter/105497713/ 44
Monday, November 16, 2009
52. Quer ajuda?
o/
sea@seatecnologia.com.br
45
Monday, November 16, 2009