Commit 583e551cd1a5305949c02ceb66e02c7bb7080993
1 parent
0b451500
Exists in
master
Adição de capítulo sobre o Demoiselle Properties no Guia de Referência.
Showing
4 changed files
with
200 additions
and
28 deletions
Show diff stats
documentation/reference/pt-BR/authorgroup.xml
documentation/reference/pt-BR/master.xml
... | ... | @@ -42,6 +42,7 @@ |
42 | 42 | <xi:include href="templates.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
43 | 43 | <xi:include href="security.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
44 | 44 | <!-- <xi:include href="paginacao.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> --> |
45 | + <xi:include href="properties.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> | |
45 | 46 | </part> |
46 | 47 | <!-- parte 2 --> |
47 | 48 | <!-- <part id="2">--> |
... | ... | @@ -52,4 +53,4 @@ |
52 | 53 | <!-- apêndices --> |
53 | 54 | <xi:include href="instalacao.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
54 | 55 | |
55 | -</book> | |
56 | 56 | \ No newline at end of file |
57 | +</book> | ... | ... |
documentation/reference/pt-BR/paginacao.xml
... | ... | @@ -36,9 +36,11 @@ |
36 | 36 | |
37 | 37 | <section> |
38 | 38 | <title>Códigos de suporte</title> |
39 | + <!-- | |
39 | 40 | <para> |
40 | 41 | // TODO: explicar Pagination e PaginationContext |
41 | 42 | </para> |
43 | + --> | |
42 | 44 | <para> |
43 | 45 | Veremos na seção seguinte como implementar a paginação em uma aplicação Java. |
44 | 46 | |
... | ... | @@ -69,7 +71,7 @@ public class PaginationContext { |
69 | 71 | |
70 | 72 | public Pagination getPagination(Class<?> clazz) { ... } |
71 | 73 | |
72 | - public Pagination getPagination(Class<?> clazz, boolean create) { ... } | |
74 | + public Pagination get -->Pagination(Class<?> clazz, boolean create) { ... } | |
73 | 75 | |
74 | 76 | } |
75 | 77 | |
... | ... | @@ -147,30 +149,6 @@ frameworkdemoiselle.pagination.max_page_links=10 |
147 | 149 | |
148 | 150 | <section> |
149 | 151 | <title>Implementação na aplicação</title> |
150 | - <!-- | |
151 | - <para> | |
152 | - A fim de utilizar o mecanismo inerente do <emphasis>Demoiselle Framework</emphasis>, é preciso simplesmente anotar os métodos | |
153 | - contendo as instruções desejadas com <literal>@Startup</literal>, para a <emphasis>inicialização</emphasis>, ou | |
154 | - <literal>@Shutdown</literal>, para a <emphasis>finalização</emphasis>. | |
155 | - </para> | |
156 | - <tip> | |
157 | - <para> | |
158 | - O mecanismo de inicialização do <emphasis>Demoiselle Framework</emphasis> é independente da natureza da aplicação Java, isto é, | |
159 | - visa tanto aplicações do tipo Web quanto do tipo desktop (ex: Swing). | |
160 | - </para> | |
161 | - </tip> | |
162 | - <para> | |
163 | - As instruções contidas em um método anotado com <literal>@Startup</literal> serão executadas automaticamente quando a aplicação | |
164 | - Java for inicializada, seja ela hospedada em um contêiner Web ou executada através de um método <literal>main()</literal>. | |
165 | - Nenhum outro arquivo ou classe precisa ser definido. A anotação <literal>@Startup</literal> permite a indicação do argumento | |
166 | - <literal>priority</literal>, um número inteiro que serve para definir a prioridade de execução do respectivo método na existência | |
167 | - de mais de um inicializador para a aplicação. | |
168 | - </para> | |
169 | - <para> | |
170 | - De maneira análoga, um método anotado com <literal>@Shutdown</literal> será executado no momento de finalização de uma aplicação, | |
171 | - obedecendo também à ordem de prioridade definida com o argumento <literal>priority</literal>. | |
172 | - </para> | |
173 | - --> | |
174 | 152 | <para> |
175 | 153 | Eis um exemplo de implementação de paginação em uma aplicação: |
176 | 154 | </para> |
... | ... | @@ -198,7 +176,7 @@ frameworkdemoiselle.pagination.max_page_links=10 |
198 | 176 | </note> |
199 | 177 | </section> |
200 | 178 | |
201 | - <section> | |
179 | +<!--<section> | |
202 | 180 | <title>Um exemplo usando PrimeFaces</title> |
203 | 181 | <para> |
204 | 182 | Eis um interessante caso de uso de paginação: ????. |
... | ... | @@ -259,6 +237,7 @@ public class AuditMB extends AbstractListPageBean<Audit, Long> { |
259 | 237 | value="#{auditMB.lazyModel}" lazy="true" paginator="true" |
260 | 238 | rows="#{auditMB.pageSize}" pageLinks="#{auditMB.maxPageLinks}">]]></programlisting> |
261 | 239 | </section> |
240 | + --> | |
262 | 241 | |
263 | 242 | <section> |
264 | 243 | <title>Referências</title> |
... | ... | @@ -267,7 +246,7 @@ public class AuditMB extends AbstractListPageBean<Audit, Long> { |
267 | 246 | <listitem>Implementing Search Result Pagination in a Web Application (http://www.developer.com/java/other/article.php/3696226/)</listitem> |
268 | 247 | <listitem>A Pagination Technique Using Spring (http://www.developer.com/java/web/article.php/10935_3830886_1/)</listitem> |
269 | 248 | <listitem>Spring JDBC Pagination Tutorial (http://www.codefutures.com/tutorials/spring-pagination/)</listitem> |
270 | - <listitem>PrimeFaces DataTable - Lazy Loading (http://www.primefaces.org/showcase/ui/datatableLazy.jsf)</listitem> | |
249 | + <!-- <listitem>PrimeFaces DataTable - Lazy Loading (http://www.primefaces.org/showcase/ui/datatableLazy.jsf)</listitem> --> | |
271 | 250 | </itemizedlist> |
272 | 251 | </section> |
273 | 252 | ... | ... |
... | ... | @@ -0,0 +1,188 @@ |
1 | +<?xml version='1.0' encoding="utf-8"?> | |
2 | +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" | |
3 | + "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ ]> | |
4 | +<chapter id="properties"> | |
5 | + | |
6 | + <title>Demoiselle Properties</title> | |
7 | + | |
8 | + <para> | |
9 | + Em um projeto com o <emphasis>Demoiselle Framework</emphasis>, algumas propriedades e configurações | |
10 | + do <emphasis>Framework</emphasis> podem ser ajustadas no arquivo <literal>demoiselle.properties</literal>. | |
11 | + Além disso, a partir da versão 2.3.0 também é nesse arquivo que devem ser definidas as estratégias de | |
12 | + <emphasis>Transação</emphasis>, <emphasis>Autorização</emphasis> e <emphasis>Autenticação</emphasis>. | |
13 | + </para> | |
14 | + <para> | |
15 | + A seguir listamos as propriedades e configurações do <emphasis>Demoiselle Framework</emphasis> que o usuário pode modificar, | |
16 | + acompanhados de alguns exemplos ilustrativos. Também mostraremos como escolher as estratégias para | |
17 | + <emphasis>Transação</emphasis>, <emphasis>Autorização</emphasis> e <emphasis>Autenticação</emphasis>, oferecidas pelo | |
18 | + <emphasis>Demoiselle</emphasis>. | |
19 | + </para> | |
20 | + | |
21 | + <section> | |
22 | + <title>Configurações do Core</title> | |
23 | + <para> | |
24 | + <itemizedlist> | |
25 | + <listitem> | |
26 | + <para> | |
27 | + <literal>frameworkdemoiselle.pagination.page.size</literal> - Configura o número de linhas que será | |
28 | + exibido na grade de uma página. Por padrão, esse número é 10. | |
29 | + </para> | |
30 | + <para> | |
31 | + Exemplo de configuração: <literal>frameworkdemoiselle.pagination.page.size = 15</literal>, ajusta em 15 | |
32 | + a quantidade de linhas em uma grade | |
33 | + </para> | |
34 | + </listitem> | |
35 | + <listitem> | |
36 | + <para> | |
37 | + <literal>frameworkdemoiselle.pagination.max.page.links</literal> - Configura a quantidade de links que | |
38 | + será exibido em uma página. Por padrão, esse valor é 5. | |
39 | + </para> | |
40 | + <para> | |
41 | + Exemplo de configuração: <literal>frameworkdemoiselle.pagination.max.page.links = 20</literal>, configura em 20 | |
42 | + o número de links que podem ser exibidos em uma página. | |
43 | + </para> | |
44 | + </listitem> | |
45 | + <listitem> | |
46 | + <para> | |
47 | + <literal>frameworkdemoiselle.security.enabled</literal> - Configura a habilitação das funcionalidades do | |
48 | + <emphasis>Demoiselle</emphasis> relacionadas a segurança (como autenticação de usuário e verificação de | |
49 | + permissão de acesso à recursos). Por padrão, essas funcionalidades ficam habilitadas. | |
50 | + </para> | |
51 | + <para> | |
52 | + Exemplo de configuração: <literal>frameworkdemoiselle.security.enabled = false</literal>, desabilita as | |
53 | + funcionalidades de segurança do <emphasis>Demoiselle</emphasis>. | |
54 | + </para> | |
55 | + </listitem> | |
56 | + </itemizedlist> | |
57 | + </para> | |
58 | + </section> | |
59 | + | |
60 | + <section> | |
61 | + <title>Configurações da extensão JSF</title> | |
62 | + <para> | |
63 | + <itemizedlist> | |
64 | + <listitem> | |
65 | + <para> | |
66 | + <literal>frameworkdemoiselle.security.login.page</literal> - Configura a página de login. Por padrão, a página | |
67 | + configurada é <emphasis>“/login”</emphasis>. | |
68 | + </para> | |
69 | + <para> | |
70 | + Exemplo de configuração: <literal>frameworkdemoiselle.security.login.page = “/inicial”</literal>, configura a | |
71 | + página <emphasis>“/inicial”</emphasis> como a página de login. | |
72 | + </para> | |
73 | + </listitem> | |
74 | + | |
75 | + <listitem> | |
76 | + <para> | |
77 | + <literal>frameworkdemoiselle.security.redirect.after.login</literal> - Configura a página que será acessada após | |
78 | + o login. Por padrão, a página configurada é <emphasis>“/index”</emphasis>. | |
79 | + </para> | |
80 | + <para> | |
81 | + Exemplo de configuração: <literal>frameworkdemoiselle.security.redirect.after.login = "/menu"</literal>, configura | |
82 | + a página <emphasis>“/menu”</emphasis> para ser acessada no redirecionamento após o login do usuário. | |
83 | + </para> | |
84 | + </listitem> | |
85 | + | |
86 | + <listitem> | |
87 | + <para> | |
88 | + <literal>frameworkdemoiselle.security.redirect.after.logout</literal> - Configura a página para a qual a aplicação | |
89 | + será direcionada após o logout do usuário. Por padrão, a página configurada é <emphasis>“/login”</emphasis>. | |
90 | + </para> | |
91 | + <para> | |
92 | + Exemplo de configuração: <literal>frameworkdemoiselle.security.redirect.after.logout = "/index"</literal>, configura | |
93 | + a página "/index" para ser acessada no redirecionamento após o logout do usuário. | |
94 | + </para> | |
95 | + </listitem> | |
96 | + | |
97 | + <listitem> | |
98 | + <para> | |
99 | + <literal>frameworkdemoiselle.security.redirect.enebled</literal> - Configura a habilitação do redirecionamento da página | |
100 | + após <emphasis>login</emphasis> e <emphasis>logout</emphasis>. Por padrão, o valor dessa propriedade é <emphasis>true</emphasis>. | |
101 | + </para> | |
102 | + <para> | |
103 | + Exemplo de configuração: <literal>frameworkdemoiselle.security.redirect.enebled = false</literal>, desabilita os | |
104 | + redirecionamentos de páginas após <emphasis>login</emphasis> e <emphasis>logout</emphasis>. | |
105 | + </para> | |
106 | + </listitem> | |
107 | + | |
108 | + <listitem> | |
109 | + <para> | |
110 | + <literal>frameworkdemoiselle.handle.application.exception</literal> - Define se a extensão vai capturar ou não alguma exceção | |
111 | + lançada pela aplicação. Por padrão, essa configuração vem marcada como “true”, que diz para a extensão capturar a exceção. | |
112 | + </para> | |
113 | + <para> | |
114 | + Exemplo de configuração: <emphasis>frameworkdemoiselle.handle.application.exception = false</emphasis>, desabilita a captura | |
115 | + de exceções lançadas pela aplicação. | |
116 | + </para> | |
117 | + </listitem> | |
118 | + | |
119 | + <listitem> | |
120 | + <para> | |
121 | + <literal>frameworkdemoiselle.handle.aplication.exception.page</literal> - Configura a página para a qual a aplicação será | |
122 | + direcionada em caso de exceção. Por padrão, a página configurada é <emphasis>“/application_error”</emphasis>. | |
123 | + </para> | |
124 | + <para> | |
125 | + Exemplo de configuração: <emphasis>framework.handle.aplication.exception.page = “/exception_x_page”</emphasis>, redireciona a | |
126 | + aplicação para a página <emphasis>/exception_x_page</emphasis> caso ocorra alguma exceção. | |
127 | + </para> | |
128 | + </listitem> | |
129 | + </itemizedlist> | |
130 | + </para> | |
131 | + </section> | |
132 | + | |
133 | + <section> | |
134 | + <title>Configurações da Extensão JPA</title> | |
135 | + <para> | |
136 | + <itemizedlist> | |
137 | + <listitem> | |
138 | + <para> | |
139 | + <literal>frameworkdemoiselle.persistence.unit.name</literal> - Quando é definida mais de uma unidade de persitencia | |
140 | + no arquivo <literal>persistence.xml</literal>, muitas vezes é conveniente escolher uma unidade padrão, ao invés de | |
141 | + definir as unidades individualmente em cada <emphasis>Entity Manager</emphasis>. Esse parametro é utilizado para | |
142 | + indicar qual é a unidade de persistência que deve ser utilizada quando no <emphasis>Entity Manager</emphasis> não | |
143 | + houver essa definição. | |
144 | + </para> | |
145 | + <para> | |
146 | + Exemplo de configuração: <literal>frameworkdemoiselle.persistence.unit.name = database1-ds</literal>, configura a | |
147 | + unidade de persistencia <literal>database1-ds</literal> como padrão da aplicação. | |
148 | + </para> | |
149 | + </listitem> | |
150 | + </itemizedlist> | |
151 | + </para> | |
152 | + </section> | |
153 | + | |
154 | + <section> | |
155 | + <title>Escolhendo Estratégias</title> | |
156 | + <para> | |
157 | + Para escolher as estratégias de <emphasis>Transação</emphasis>, <emphasis>Autorização</emphasis> e <emphasis>Autenticação</emphasis> | |
158 | + devem ser configuradas as propriedades: <literal>frameworkdemoiselle.transaction.class</literal>, | |
159 | + <literal>frameworkdemoiselle.security.authorizer.class</literal> e <literal>frameworkdemoiselle.security.authenticator.class</literal> | |
160 | + , respectivamente. | |
161 | + </para> | |
162 | + <para> | |
163 | + Para utilizar as estratégias fornecidas pelo próprio <emphasis>Framework Demoiselle</emphasis>, você deve configurar essas | |
164 | + propriedades da seguinte forma: | |
165 | + <itemizedlist> | |
166 | + <listitem> | |
167 | + <para> | |
168 | + <literal>frameworkdemoiselle.transaction.class = br.gov.frameworkdemoiselle.transaction.JPATransaction</literal>, | |
169 | + para transações <emphasis>JPA</emphasis>, e <literal>frameworkdemoiselle.transaction.class = | |
170 | + br.gov.frameworkdemoiselle.transaction.JTATransaction</literal>, para transações <emphasis>JTA</emphasis>; | |
171 | + </para> | |
172 | + </listitem> | |
173 | + <listitem> | |
174 | + <para> | |
175 | + <literal>frameworkdemoiselle.security.authorizer.class = br.gov.serpro.inscricao.security.Autorizador</literal>; | |
176 | + </para> | |
177 | + </listitem> | |
178 | + <listitem> | |
179 | + <para> | |
180 | + <literal>frameworkdemoiselle.security.authenticator.class = br.gov.serpro.inscricao.security.Autenticador</literal>. | |
181 | + </para> | |
182 | + </listitem> | |
183 | + </itemizedlist> | |
184 | + As instruções para você construir e utilizar sua própria estratégia estãodescritas nos capítulos <link linkend="transacao">Transação</link> | |
185 | + e <link linkend="security">Segurança</link>. | |
186 | + </para> | |
187 | + </section> | |
188 | +</chapter> | ... | ... |