desenvolvimento de sistemas - middlewares

49
Instituto Federal de Educação, Ciência e Tecnologia Triângulo Mineiro Campus Uberlândia Centro Pós Graduação em Análise e Desenvolvimento de Sistemas Aplicados à Gestão Empresarial 1 Desenvolvimento de Sistemas Prof. Carlos Eduardo de Carvalho Dantas [email protected]

Upload: carlos-eduardo-dantas

Post on 15-Aug-2015

37 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Desenvolvimento de Sistemas - Middlewares

Instituto Federal de Educação, Ciência e Tecnologia

Triângulo Mineiro – Campus Uberlândia Centro

Pós Graduação em Análise e Desenvolvimento de Sistemas Aplicados à Gestão Empresarial

1

Desenvolvimento de Sistemas

Prof. Carlos Eduardo de Carvalho Dantas

[email protected]

Page 2: Desenvolvimento de Sistemas - Middlewares

Parte I – Conceitos em Desenvolvimento de Sistemas

2

Page 3: Desenvolvimento de Sistemas - Middlewares

AGENDA

1. Middlewares• Definições

• Especificação Java EE

• Servidores de aplicação

• Servlet Container

• Estudo de caso: Wildfly

3

Page 4: Desenvolvimento de Sistemas - Middlewares

DEFINIÇÕES

- Sites WEB vs Sistemas WEB• Até o final do século XX, páginas HTML com scripts no lado cliente

(JavaScript), ou no lado servidor (PHP, ASP, JSP, CGI,etc..) eramutilizados quase que exclusivamente para construção de Sites para aInternet. Sistemas empresariais com suas regras de negócio possuíam acamada view em formato GUI (graphical user interface);

• Com o surgimento de tecnologias como AJAX, ADOBE FLEX, JSF eASP.NET, aliado com as vantagens de centralização que a web oferece,os Sistemas empresariais começaram a migrar a camada view doformato GUI para web.

• Com isso, Sistemas empresariais começaram a ser executados a partirde Middlewares, facilitando a criação dos ERPs.

4

Page 5: Desenvolvimento de Sistemas - Middlewares

DEFINIÇÕES

- ERP• ERP é um Software que visa a integração de todos os departamentos e funções de

uma empresa, ou seja, do chão de fábrica à logística, em um único sistema.• O objetivo dos ERPs é eliminar o conjunto de sistemas que as organizações possuem

para os diversos departamentos, centralizando o controle.• Uma consequência natural nos ERPs é que cada sub-sistema se transforme em um

módulo, fornecendo e consumindo serviços de outros sub-sistemas.• Exemplo: Sub-Sistema de Pedidos precisa saber se determinado produto possui estoque. O

sub-sistema de Estoque irá fornecer a resposta.• A descentralização de sistemas pode gerar cadastros duplicados, assim como rotinas

duplicadas.• Exemplo: Diversos sistemas possuírem a regra de negócio que verifica se determinado

produto possui estoque. Caso essa regra sofra mudança, todos os sistemas deverão seralterados.

5

Page 6: Desenvolvimento de Sistemas - Middlewares

Sistemas

DEFINIÇÕES

Sistemas

6

Pedidos Estoque Cadastro

Sistema Operacional

Arquitetura sem o uso de Middleware

Sistema Operacional

Arquitetura com o uso de Middleware

CadastroEstoque

Pedidos

Sistemas

Middleware

Bibliotecas

Executáveis

Page 7: Desenvolvimento de Sistemas - Middlewares

DEFINIÇÕES

- Requisitos Funcionais e não-funcionais• Softwares geralmente possuem regras de negócio relativamente complicadas

• Estes são os requisitos funcionais• Com o avanço da tecnologia, os Softwares precisam de uma infraestrutura cada vez

mais robusta: persistência em banco de dados, transação, acesso remoto, webservices, gerenciamento de threads, gerenciamento de conexões HTTP, cache deobjetos, gerenciamento da sessão web, balanceamento de carga, entre outros.• Estes são os requisitos não-funcionais.

• Implementar código-fonte que trate requisitos não-funcionais é bastante trabalhoso.• Seria interessante possuir uma infraestrutura já pronta, e reutilizá-la em vários sistemas.

Desta forma, o Middleware não apenas funcionaria como um centralizador, mas tambémseria um facilitador, fornecendo recursos complexos que os sistemas necessitam.

7

Page 8: Desenvolvimento de Sistemas - Middlewares

DEFINIÇÕES

- Exemplos de Middlewares para ERPs• Java – Servidores de Aplicação que implementam a Especificação Java EE

• .Net – Servidores IIS com suporte para componentes MTS/COM+

8

Page 9: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- Java EE• Consiste em uma série de especificações (ou APIs) bem detalhadas, dando

uma receita de como deve ser implementado um Software que faz cada umdos serviços de infraestrutura.• Softwares poderão consumir esses serviços, sem necessidade de implementar requisitos

não-funcionais, consequentemente liberando o desenvolvedor para se concentrar naimplementação dos requisitos funcionais.

• Contudo é necessário que o desenvolvedor conheça profundamente os conceitosenvolvidos nos requisitos não-funcionais, pois precisará parametrizar as diversasvariáveis envolvidas nestes serviços, para utilizá-los de maneira correta.

• Especificações geralmente não possuem vendor lock-in, permitindo a troca defornecedores dos serviços sem muitas alterações no código-fonte doSoftware.

9

Page 10: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- Histórico Java EE

10

J2EE 1.4 – Servlets 2.4 (JSR-154), JSP 2.0 (JSR-152), JSTL 1.1 (JSR-52), JSF 1.1 (JSR-127), EJB 2.1 (JSR-

153), JTA 1.0 (JSR-58),etc..

J2EE 1.3 – JDBC 2.0, JSP 1.2, Servlet 2.3, JSTL 1.0, EJB 2.0, JMS 1.0,JAXP 1.1

J2EE 1.2 – JNDI 1.2, RMI-IIOP 1.1, Servlet 2.2, JSP 1.1, EJB 1.1, JavaMail 1.1

Page 11: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- Histórico Java EE (cont.)

11

Java EE 7 – JSF 2.2 (JSR-344),JPA 2.1 (JSR-338), CDI 1.1 (JSR-346), EJB 3.2 (JSR-345), JAX-RS 2.0 (JSR-339), JMS 2.0

(JSR-343), Bean Validation 1.1 (JSR-349),etc..

Java EE 6 – Servlets 3.0 (JSR-315), JSF 2.0 (JSR-314), Bean Validation 1.0 (JSR-303), JPA 2.0 (JSR-317), JAXB 2.2 (JSR-222), JAX-WS 2.2 (JSR-109), JAX-RS 1.1 (JSR-311), DI

1.0 (JSR-330),etc..

Java EE 5 – JSF 1.2 (JSR-252), EJB 3.0 (JSR-220), JPA 1.0 (JSR-220), Servlets 2.5 (JSR-154), JMS 1.1 (JSR-914),JTA

1.1(JSR-907),etc..

Page 12: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- JCP (Java Community Process)• Grupo responsável por gerir as especificações Java EE

• http://www.jcp.org

- JSR (Java Specification Request)• São basicamente novos pedidos de bibliotecas e especificações para o Java, seja para

o Java SE ou Java EE.

• Executive Committee (EC) - Os membros que guiam a evolução dastecnologias Java. O EC representa os maiores interessados e outrosmembros da comunidade Java. Eles são nomeados em uma eleição anual.

• Expert Group (EG) O grupo de Experts que desenvolvem e fazem revisõessignificativas na especificação.

12

Page 13: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- APIs Java EE- As idéias em torno da criação de cada API surge em função das novas técnicas

implementadas em frameworks, especialmente open source- Java EE 5 – JPA 1.0 e EJB 3.0 surgiram como fruto de diversas técnicas

implementadas em frameworks como Hibernate (MOR) e Spring (IOC)- Java EE 6 – JPA 2.0 incrementou diversas técnicas já implementadas emframeworks MOR, como a API Criteria. Bean Validation surgiu de idéias comoo Hibernate Validator.

- Java EE 7 – soluções como Web Sockets e processamento JSON surgiram emfunção do crescente uso destas soluções no lado front-end. JAX-RS em funçãoda ampla adoção de REST como solução de alta interoperabilidade.

- Java EE 8 (previsão 1º semestre 2017) – irá adotar novas APIs como JCache1.0, inspirado em soluções como EhCache e MVC 1.0, inspirado em soluçõescomo o framework V-Raptor.

13

Page 14: Desenvolvimento de Sistemas - Middlewares

ESPECIFICAÇÃO JAVA EE (cont.)

- Java (ou Java SE) != Java EE• Java é uma plataforma, máquina virtual e linguagem de programação. Java EE

é uma especificação onde o código-fonte é escrito em Java;

• A cada nova versão do Java, novos recursos são disponibilizados.Consequentemente, a especificação Java EE também avança com uma novaversão, utilizando estes novos recursos.• Exemplo: Com o lançamento do Java 5, recursos como anotações (annotations) foram

disponibilizados. Com isso, algum tempo depois a especificação Java EE 5 foi lançadacom diversas novas especificações que utilizam anotações.

14

Page 15: Desenvolvimento de Sistemas - Middlewares

SERVIDORES DE APLICAÇÃO

- Introdução• O Java EE é apenas um arquivo em PDF que detalha a especificação, e quais

especificações internas fazem parte deste.

• Para utilizar o Software, é necessário efetuar o download de umaimplementação destas especificações. Estas implementações são chamadasServidores de Aplicação.

• Cada versão da especificação Java EE possui um conjunto de Servidores deAplicação que implementa seus recursos.

15

Page 16: Desenvolvimento de Sistemas - Middlewares

SERVIDORES DE APLICAÇÃO (cont.)

- Servidores de Aplicação por versão do Java EE

16

J2EE 1.2 J2EE 1.3 J2EE 1.4 Java EE 5 Java EE 6 Java EE 7

WildFly 8.x, Glassfish 4.x,

Websphere 8.5.x

Jboss 7.x, Glassfish3.x, Websphere

8.x, Geronimo 3.0, Weblogic 12

Jboss 5.x, Glassfishv2, Websphere 7.x,

Geronimo 2.1.4, Weblogic 10g

Weblogic 6.1, Websphere 4.0, Sun ONE AS 3

Weblogic 7, Websphere 5.x, Sun ONE AS 5

Weblogic 9.2, Websphere 6.x,

Jboss 4.x,Sun ONE AS 8

Page 17: Desenvolvimento de Sistemas - Middlewares

SERVIDORES DE APLICAÇÃO (cont.)

- APIs exclusivas vs não exclusivas• Algumas APIs são exclusivas da especificação Java EE, e somente podem ser

utilizadas em Softwares Java que utilizam servidores de aplicação. Outraspodem ser utilizadas em Softwares Java que não utilizam servidores deaplicação.

• APIs exclusivas de Servidores de Aplicação• JTA, EJB, JMS,etc..

• APIs que podem ser utilizadas sem necessidade de um Servidor de Aplicação• JPA, JSF, Servlet, CDI, etc..

17

Page 18: Desenvolvimento de Sistemas - Middlewares

SERVIDORES DE APLICAÇÃO (cont.)

- Implementações de APIs• APIs são basicamente um conjunto de interfaces que padronizam

determinada funcionalidade.• Exemplo: JDBC é uma API, onde seu código é padronizado independente do banco de

dados utilizado.

• As APIs da especificação Java EE precisam de uma implementação, ou seja,uma engine que implemente as interfaces definidas na API.

• Cada Servidor de Aplicação já possui embutido uma implementação paracada API.

18

Page 19: Desenvolvimento de Sistemas - Middlewares

SERVIDORES DE APLICAÇÃO (cont.)

- Implementações de APIs (cont.)

19

CDI

JPA

JAX-RS

API Implementação

Page 20: Desenvolvimento de Sistemas - Middlewares

SERVLET CONTAINER

- Introdução• Algumas das especificações Java EE são específicas para lidar com o

desenvolvimento de aplicações web• Servlet, JSP, JSTL, JSF,etc..

• Um Servlet Container é um servidor que suporta apenas a parte web daespecificação Java EE• Mais indicado para aplicações web de pequeno e médio porte

-Exemplos• Tomcat• Jetty• Google App Engine• Undertow

20

Page 21: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY

- Introdução• Servidor de Aplicação criado pela Red Hat, substituindo o antigo JBoss.

• Mantido por desenvolvedores no formato código aberto. Boas soluçõescontinuam servindo de base para o pacote pago do JBoss EAP.

• O Wildfly é full certified Java EE 7. Versões antigas do Jboss possuem umhistórico de dificuldades para possuírem o selo full certified Java EE.

• Link: http://wildfly.org . Versão estável mais recente: 8.2.1

21

Page 22: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Wildfly 9• Versão que também é full certified Java EE 7, contudo possui alguns incrementos

em relação à versão 8.• HTTP/2 – nova versão do protocolo HTTP. Reduz a latência em conexões usando multiplexação• Front End Load Balancer Support – consegue balancear requisições para o backend com os

protocolos HTTP,HTTP/2, SPDY, mod_cluster• Server suspend Mode / graceful shutdown – reiniciar o servidor sem interromper sua execução• Offline CLI Support – executar comandos adm no servidor sem este estar rodando• New Servlet-Only distribution – versão do wildfly que fornece apenas algumas especificações• Management Console – melhoria no layout, com novas configurações

• A versão 8 será adotada por implementar todo o conteúdo necessário dadisciplina, além de ter uma base maior de usuários em atividade, com diversosbugs corrigidos.

• Link: http://wildfly.org/news/2015/07/02/WildFly9-Final-Released/

22

Page 23: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Instalação• O arquivo wildfly-8.2.1.Final.zip pode ser baixado e descompactado em

qualquer lugar;

• Para que o Wildfly funcione juntamente com o Eclipse, é necessário instalar oplugin JBoss Tools no Eclipse. Passos:• Menu Help > Eclipse Marketplace.

• No campo Search, digite o texto: “Jboss Tools”.

• Na sequência, será mostrado o plugin JBoss Tools (Luna) 4.2.2.Final. Clique então nobotão Instalar

23

Page 24: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Instalação (cont.)

• O WildFly 8 será incluído entre os servidores mapeados pelo Eclipse• Acessar o menu New > Other > Server

• Clicar no link de criar um novo servidor

• Selecionar os itens Jboss Community > WildFly 8.x

• Adicionar o caminho em Home directory.

24

Page 25: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Instalação (cont.)

• Clicar com o botão direito do mouse no servidor, e iniciar.

• Comando http://localhost:8080 e o servidor mostrará sua página inicial

25

Page 26: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Recursos• Modos de funcionamento

• Standalone – servidor funciona em um único processo da JVM

• Domain – baseados em vários processos da JVM, em um ou mais hosts (clusters),utilizando a estrutura mestre-escravo, ou Domain Controller e Host Controller

26

Page 27: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Recursos (cont.)

• Portas• O Wildfly moveu todos os protocolos para serem multiplexados em apenas duas portasHTTP

• Motivado para se adaptar aos serviços de computação na nuvem, usando o Wildfly emmodo cluster, visando alta disponibilidade e elasticidade.

27

Page 28: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Recursos (cont.)

• Servidor Web de alta performance• O Tomcat, que era utilizado como servidor web no Jboss, foi substituído pelo Undertow,

que é desenvolvido em Java e totalmente baseado na API new I/O. Possui suporte paraservlets 3.1 e websockets.

• O Undertow possui capacidade de processar milhões de requisições simultaneamente.

• O site Tech Empower fez um benchmark completo entre diversos frameworks (micro,web e full-stack), medindo indicadores como serialização JSON, tempo de acesso aobanco de dados, taxa de transferência por segundo, latência, etc.. E o undertow atingiuboa performance em todos os indicadores.

• Link: https://www.techempower.com/blog/2015/04/21/framework-benchmarks-round-10/

28

Page 29: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Recursos (cont.)

• Full Certified Java EE 7• Suporte a HTML 5

• WebSockets

• Processamento JSON (API Jason-P)

• Nova versão da API JAX-RS para trabalhar com serviços RESTful

• Nova API para executar processos batch (Batch applications)

• Atualização das bibliotecas JPA, Bean Validation, JSF, CDI, JMS e JTA.

29

Page 30: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Diretórios

30

Page 31: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Diretórios (cont.)

• Diretórios dentro das pastas domain e standalone

31

Page 32: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Adicionando bibliotecas ao servidor• É comum adicionar bibliotecas porque várias aplicações costumam utilizar os

mesmos recursos, como banco de dados, biblioteca de relatórios, etc..

• Utilizando este procedimento, evita que as classes sejam carregadas deforma duplicada na memória

• O Wildfly é projetado para trabalhar com módulos, e nesta configuração épossível adicionar JARs ao servidor de aplicação

• Para adicionar o JAR da API JDBC do mysql, é necessário criar a estrutura dediretórios abaixo, e depois adicionar os arquivos mencionados abaixo.

32

Page 33: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Adicionando bibliotecas ao servidor (cont.)• O arquivo module.xml deve possuir o conteúdo abaixo:

33

Page 34: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Criando o banco de dados• Com o banco de dados Mysql em uso, é necessário possuir um banco de

dados.

• Na imagem abaixo, foi utilizado o XAMPP e o Mysql Workbench.

34

Page 35: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Adicionando DataSource• Acessando <wildfly_home>/standalone/configuration/standalone.xml, é possível adicionar

um datasource para o Mysql, e o driver apontando para o arquivo JAR adicionado.

35

Page 36: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Adicionando DataSource (cont.)

• É possível adicionar configurações como tamanho máximo do pool deconexões, que já está embutido automaticamente no servidor de aplicação.

36

Page 37: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor• Configurando a memória HEAP

• Por padrão, o WILDFLY utiliza 64mb de tamanho mínimo e 512mb de tamanho máximo.

• É possível editar, acessando o arquivo <wildfly-home>/bin/standalone.conf.bat ou sh, eeditando as propriedades -Xms e -Xmx

• Também é possível editar a propriedade -XX:MaxPermSize, que envolve as classes,métodos, e demais objetos da aplicação que são alocados uma vez, mas nuncadesalocados.

37

Page 38: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Opções – editar as configurações do servidor podem ser feitas de 3 formas:• Administrar o servidor via console web: usando a URL http://localhost:9990

• Administrar o servidor via linha de comando: usando o executável<wildfly_home/>bin/jboss-cli.bat ou jboss-cli.sh

• Administrar o servidor via arquivos de configuração: editar manualmente os arquivos.xml que configuram o servidor.• <wildfly_home>/domain/configuration/ domain.xml

• <wildfly_home>/domain/configuration/host .xml

• <wildfly_home>/standalone/configuration/ standalone.xml

38

Page 39: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Criação de usuário• Para acessar a área de administração, é necessário criar um usuário no servidor.

• Dentro da pasta <wildfly_home>/bin, o executável add-user.bat ou add-user.sh

39

Page 40: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Criação de usuário(cont.)

• Ao adicionar usuários, os arquivos mgmt-groups.properties e mgmt-users.propertiessituados em <wildfly_home>/standalone/configuration recebem estes usuários.

• Da mesma forma que se fossem criados usuários de aplicação, os arquivos application-roles e application-users receberiam informações semelhantes.

40

Page 41: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Acessar tela de administração do servidor• É necessário entrar com a URL http://localhost:9990 e informar o usuário e senha

criados

41

Page 42: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Testando o DataSource• É possível testar o dataSource criado, clicando em Test Connection

42

Page 43: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Efetuando o deploy de uma aplicação• Na aba Deployments, clique em add e adicione um sistema

43

Page 44: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Administrando o servidor (cont.)

• Efetuando o deploy de uma aplicação (cont).

• Entrar com a URL http://localhost:8080/SistemaAtendimento

44

Page 45: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Utilizando o WildFly a partir do Eclipse• Após importar o projeto no Eclipse, pode-se efetuar o deploy automático da

aplicação no Wildfly, clicando em Run As -> Run on Server.

45

Page 46: Desenvolvimento de Sistemas - Middlewares

ESTUDO DE CASO: WILDFLY (cont.)

- Utilizando o WildFly a partir do Eclipse (cont.)

• Da mesma forma, é possível debugar uma aplicação dentro do WildFly.

46

Page 47: Desenvolvimento de Sistemas - Middlewares

EXERCÍCIO

- Construir um projeto no Eclipse do tipo Dynamic Web Project, apontando para oservidor de aplicação WildFly

- Construir um Servlet chamado ClienteServlet, que irá receber os parâmetros da camada view, eretornar uma página HTML com seus valores.

- Construir uma página HTML com formulário POST

- Debugar o projeto no Eclipse.

47

Page 48: Desenvolvimento de Sistemas - Middlewares

LINKS DOS SOFTWARES UTILIZADOS

- Jdk 1.8 - http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

- Eclipse Mars IDE for Java EE Developers 64bit -http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/mars/R/eclipse-jee-mars-R-win32-x86_64.zip

- Wildfly 8.2.1 - http://download.jboss.org/wildfly/8.2.1.Final/wildfly-8.2.1.Final.zip

- Xampp - https://www.apachefriends.org/xampp-files/5.6.11/xampp-win32-5.6.11-0-VC11-installer.exe

- Mysql Workbench - http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-6.3.4-winx64-noinstall.zip

- Driver JDBC Mysql - https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.36.zip

- Sistema Atendimento (war) –https://mega.nz/#!JJBiQYRR!kWczuoulMV8cqgvavAFGZ1DFWOx8Iqtmz4ajra1WHSQ

- Sistema Atendimento (código-fonte) -https://mega.nz/#!cAoWgQ6I!cAa5qlu5pq82wlXlnEL5wQ_LQdef6IGZ_3XhilzylqI

48

Page 49: Desenvolvimento de Sistemas - Middlewares

REFERÊNCIAS

- CAELUM. Curso FJ-21, apostila Java para Desenvolvimento Web, versão 17.0.6. Páginas 31-38 e 259-265. Disponível emhttp://www.caelum.com.br/apostilas. Acesso em 30/07/2015.

- QUERINO FILHO, L.C. Java EE 7: as novidades da plataforma na prática. Revista Java Magazine, edição 125. Disponível emhttp://www.devmedia.com.br/revista-java-magazine

- MOURA NÓBREGA, P.B. Explorando o Wildfly 8. Revista Java Magazine, edição 128. Disponível emhttp://www.devmedia.com.br/revista-java-magazine

- ABRAS, G.E. ERP e Java. Revista Mundo Java, edição 3.

- ORACLE, servidores de aplicação certificados para a plataforma Java EE. Disponível emhttp://www.oracle.com/technetwork/java/javaee/overview/compatibility-jsp-136984.html. Acesso em 30/07/2015.

- RED HAT, recursos do WildFly 8.2.1. Disponível emhttps://issues.jboss.org/secure/ReleaseNote.jspa?projectId=12313721&version=12327667&_sscc=t. Acesso em30/07/2015.

- RED HAT, recursos do WildFly 9.0. Disponível em http://wildfly.org/news/2015/07/02/WildFly9-Final-Released/. Acessoem 30/07/2015.

- TECHEMPOWER. Benchmark de servidores web. Disponível em:https://www.techempower.com/blog/2015/04/21/framework-benchmarks-round-10/. Acesso em 30/07/2015.

- CAELUM. Conheça as principais novidades do Java EE 7. Disponível em: http://blog.caelum.com.br/novidades-javaee7-2/. Acesso em 30/07/2015.

49