Apresentacao demoiselle campus_party_2011

Preview:

DESCRIPTION

 

Citation preview

Título daApresentação

00/00/0000Palestrante: Flávio Gomes da Silva Lisboa

Demoiselle 2.0: Demoiselle 2.0: Produtividade com Produtividade com Java EE6 no Java EE6 no Framework Open Framework Open Source Brasileiro Source Brasileiro

Palestrante

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Bacharel em Ciência da Computação, pós-graduado em Aplicações Corporativas usando Orientação a Objetos e Tecnologia Java pela Universidade Tecnológica Federal do Paraná.

Ex-analista da diretoria internacional do Banco do Brasil.

Consultor tecnológico e instrutor do Serviço Federal de Processamento de Dados.

flavio.lisboa@serpro.gov.br

Soluções para a sociedade

Serpro em 5 tempos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Inclusão digital

Serpro em 5 tempos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Telecentros em todos os estados

Oficinas de inclusão

Espaço Serpro Cidadão

Acessibilidade

Serpro em 5 tempos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Liane TTS, sintetizador de voz desenvolvido em parceria com o NCE/UFRJ, para ser usado nos telecentros.

Software Livre

Serpro em 5 tempos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Tecnologias de desenvolvimento

Serpro em 5 tempos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

ASP

NATURAL COBOL

Tecnologia de Propósito Geral Independente de Plataforma

Java em 60 segundos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Propósito de Java...

Java em 60 segundos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Muito abrangente...

Java em 60 segundos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

1 . Facilidade de alteração2 . Reaproveitamento de código3 . Desenvolvimento orientado a componentes4 . Independência de fornecedores

Necessidades em Aplicações JEE

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

1 2 32 4

Demoiselle Framework

Solução

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

2008 2009 2010

1.0 1.0.4 1.0.51.0.4 1.0.6 1.0.71.0.6

1.1.0

1.2.0

2.0

1.1.1 1.1.2 1.1.3 1.1.4 1.1.5

1.2.1

JEE5

JEE6

Arquitetura

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Arquitetura

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

ÁREA DE MUDANÇA

Ferramentas para desenvolvimento

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Components Sample ProcessInfra

Self-service de componentes

Instalação e configuração

Exemplos de aplicações

Processo ágil

Subprojetos

Framework

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Pré-requisitos

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

JEE6: Menos coisas pra

digitar, errar, controlar ...

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

Servlet 3.0 (JSR 315)

Servlets, Listeners, ServletContextListeners e outros podem ser declarados com anotações, evitando sua configuração no web.xml

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

Servlet 3.0 (JSR 315)

Fragmentos de web.xml podem ser colocados dentro do JAR de componentes, evitando a configuração do web.xml da aplicação.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

Servlet 3.0 (JSR 315)

Suporte nativo a chamadas assíncronas (AJAX).

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JSF 2.0 (JSR 314)

Declaração de ManagedBeans via anotações, deixando o faces-config.xml mais enxuto.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JSF 2.0 (JSR 314)

Facelets nativo.

+ Java - XML

Pra que serve isso?Não era nativo?

Não era nativo. É JSF

para webdesigners

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JSF 2.0 (JSR 314)

Não é preciso declarar outcomes no faces-config.xml. O valor de retorno do método invocado já é o endereço da página. Mas você pode declarar se quiser.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JSF 2.0 (JSR 314)

É possível criar um ExceptionHandler personalizado para tratar as falhas da aplicação.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JSF 2.0 (JSR 314)

É possível passar parâmetros nas invocações de métodos via Expression Language.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JPA 2.0 (JSR 317)

Recurso Criteria Queries.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

JPA 2.0 (JSR 317)

Cache de segundo nível.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

EJB 3.1 (JSR 318)

EJB Lite: só o que você realmente precisa. Pouquíssimos casos precisam mesmo de TODOS os recursos de EJB.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Java EE6 (JSR 316)

EJB 3.1 (JSR 318)

Não é preciso criar interfaces remotas e locais, é opcional.

+ Java - XML

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Framework

ComponentsCore Extensions

Dependedo framework

Não dependedo framework

JPA JSF Swing

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Liberdade de escolha

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Injeção de dependência

Aplicação JEE6

01 01

011

10

0

0 1

01

10

1

0

1

11

JSR 299

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Injeção de dependência

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Injeção de dependência

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Código pré-compilação não tem dependências

COMPILAÇÃO

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

COMPILAÇÃO

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

class B { @Inject A a;}

class A {}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

class AFactory {

@Producespublic A create() {

A a = new A(); a.setAllThatINeed();

return a;}

}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

class B { @Inject A a;}

class A {}

class B {

@Inject FacesContext context;

}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Facilidade de manutenção

class AFactory {

@Producespublic A create() {

A a = new A(); a.setAllThatINeed();

return a;}

}

class FacesContextFactory {

@Producespublic FacesContext create() {

return FacesContext.getCurrentInstance();}

}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Controladores

Identificam as camadas e são pré-requisitos para utilização da funcionalidade de tratamentode exceções, através do uso da anotação @ExceptionHandler.

● ViewController● FacadeController

● BusinessController● PersistenceController

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Controladores

@PersistenceControllerclass A {

@Inject EntityManager em;

}

@BusinessControllerclass B {

@Inject A a;

}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Crie seu próprio controlador

@Controller@Stereotype@ViewScopedpublic @interface SeuController { }

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Métodos transacionais

class B {

@Inject A a;

@Transactional public carga () { a.inserir(“1”); a.inserir(“2”); }}

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Métodos transacionais

Caso ocorra uma exceção na execução de um método transacional o mecanismo fará rollback na transação automaticamente.

É possível mudar este comportamento utilizando exceções de aplicação.

Demoiselle Framework 2.0

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

...

www.frameworkdemoiselle.org.br

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

http://sourceforge.net/apps/mantisbt/demoiselle

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Bugs?

Novas funcionalidades?

Melhorias?

http://sourceforge.net/apps/phpbb/demoiselle

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Discussões

Contatos

Demoiselle 2.0: Produtividade com Java EE6 no framework Open Source Brasileiro

Antonio Carlos TiboniCoordenador Institucional da Comunidade Demoiselle

antonio.tiboni@serpro.gov.br

Lista de discussão:

https://lists.sourceforge.net/lists/listinfo/demoiselle-users

Recommended