Virmerson B. Santos. Material de Apoio. CURSO de JAVA WEB FLEX. (cjwebflex)

Tamanho: px
Começar a partir da página:

Download "Virmerson B. Santos. virmerson@hightechcursos.com.br. Material de Apoio. CURSO de JAVA WEB FLEX. (cjwebflex)"

Transcrição

1 Virmerson B. Santos Material de Apoio CURSO de JAVA WEB FLEX (cjwebflex)

2 Ferramentas Flex Builder (Download trial) Windows Processador de 2 GHz ou mais rápido Microsoft Windows XP com Service Pack 3, Windows Vista Ultimate ou Enterprise (32 bits ou 64 bits rodando em modo de 32 bits), Windows Server 2008 (32 bits) ou Windows 7 (32 bits ou 64 bits em execução no modo de 32 bits) 1GB de RAM (2 GB recomendado) 1,5 GB de espaço disponível no disco rígido Java Virtual Machine (32 bits): IBM JRE 1.6 ou JRE 1.6 Sun 1024x768 mostrar (1280x800 recomendado) com 16-bit placa de vídeo DVD-ROM Eclipse ou Eclipse 3.7 (para instalação do plug-in) * Mac OS Processador Intel Mac OS X v10.6 e v10.7 1GB de RAM (2 GB recomendado) 1,5 GB de espaço disponível no disco rígido Java Virtual Machine (32 bit): JRE x768 mostrar (1280x800 recomendado) com 16-bit placa de vídeo DVD-ROM Eclipse versão Cocoa 3,6 (para instalação do plug-in) * Para a instalação do Adobe Flash Builder 4 basta você ir avançando as opções, sempre mantendo os valores padrões. A versão Standalone é uma versão Trial que dura 60 dias. No site da Adobe você pode obter gratuitamente uma licensa de utilização caso você se enquadre nas exigências legais (estudantes, profissionais autônomos, etc).

3 Protocolos: Action Message Format ( AMF ) é um formato binário usado para serializar objetos gráficos, tais ActionScript objetos e XML, ou enviar mensagens entre um Adobe Flash cliente e um serviço remoto, geralmente um Flash Media Server ou alternativas de terceiros. Real Time Messaging Protocol ( RTMP ) foi inicialmente um protocolo proprietário desenvolvido pela Macromedia para streaming de áudio, vídeo e dados através da Internet, entre um flash player e um servidor. HTTP Criando o Projeto Java

4

5

6 Criando o Projeto Flex

7 O que é BlazeDS BlazeDS é o servidor baseado em Java e web remoting tecnologia de mensagens que permite aos desenvolvedores facilmente conectar-se back-end dados distribuídos e envio de dados em tempo real para o Adobe Flex e Adobe AIR aplicações para Internet aplicação mais ágil rica (RIA) experiências. Baixando o BlazeDS

8 Descompacte o BlazeDS Copiando a pasta WEB- INF da pasta descompactada blazeds que contem os arquivos de configuração do Flex e as bibliotecas (JARs) do BlazeDS para o projeto Java WEB. Conteúdo da Pasta WEB-INF:

9 Colando os arquivos dentro da pasta WebContent\WEB-INF Proxy-Config.xml <?xml version="1.0" encoding="utf-8"?> <service id="proxy-service" class="flex.messaging.services.httpproxyservice"> <properties> <connection-manager> <max-total-connections>100</max-total-connections> <default-max-connections-per-host>2</default-maxconnections-per-host> </connection-manager> <allow-lax-ssl>true</allow-lax-ssl> </properties> <adapters> <adapter-definition id="http-proxy"

10 class="flex.messaging.services.http.httpproxyadapter" default="true"/> <adapter-definition id="soap-proxy" class="flex.messaging.services.http.soapproxyadapter"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> <destination id="defaulthttp"> </destination> </service> Remote-Config.xml <?xml version="1.0" encoding="utf-8"?> <service id="remoting-service" class="flex.messaging.services.remotingservice"> <adapters> <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.javaadapter" default="true"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> </service> Services-config.xml <?xml version="1.0" encoding="utf-8"?> <services-config> <services> <service-include file-path="remoting-config.xml" /> <service-include file-path="proxy-config.xml" /> <service-include file-path="messaging-config.xml" /> </services> <security> <login-command class="flex.messaging.security.tomcatlogincommand" server="tomcat"/> </security> <channels> <channel-definition id="my-amf" class="mx.messaging.channels.amfchannel"> <endpoint url="http://{server.name:{server.port/{context.root/messagebroker/a mf" class="flex.messaging.endpoints.amfendpoint"/>

11 </channel-definition> <channel-definition id="my-secure-amf" class="mx.messaging.channels.secureamfchannel"> <endpoint url="https://{server.name:{server.port/{context.root/messagebroker/ amfsecure" class="flex.messaging.endpoints.secureamfendpoint"/> <properties> <add-no-cache-headers>false</add-no-cache-headers> </properties> </channel-definition> <channel-definition id="my-polling-amf" class="mx.messaging.channels.amfchannel"> <endpoint url="http://{server.name:{server.port/{context.root/messagebroker/a mfpolling" class="flex.messaging.endpoints.amfendpoint"/> <properties> <polling-enabled>true</polling-enabled> <polling-interval-seconds>4</polling-interval-seconds> </properties> </channel-definition> </channels> <logging> <target class="flex.messaging.log.consoletarget" level="error"> <properties> <prefix>[blazeds] </prefix> <includedate>false</includedate> <includetime>false</includetime> <includelevel>false</includelevel> <includecategory>false</includecategory> </properties> <filters> <pattern>endpoint.*</pattern> <pattern>service.*</pattern> <pattern>configuration</pattern> </filters> </target> </logging> <system> <redeploy> <enabled>false</enabled> <!-- </redeploy> </system> </services-config> Messaging-config.xml <?xml version="1.0" encoding="utf-8"?> <service id="message-service"

12 class="flex.messaging.services.messageservice"> <adapters> <adapter-definition id="actionscript" class="flex.messaging.services.messaging.adapters.actionscriptad apter" default="true" /> </adapters> <default-channels> <channel ref="my-polling-amf"/> </default-channels> </service>

13 Ligando os Projetos Java e Flex (Server Settings)

14

15

16 Testando - Acessando Remotamente HTTPService: Use componentes HTTPService para enviar HTTP GET ou pedidos POST e incluir os dados das respostas HTTP em um aplicativo cliente Componentes HTTPService são uma boa opção quando você não pode expor a mesma funcionalidade como um serviço web SOAP ou serviço objeto remoto. Por exemplo, você pode usar componentes HTTPService para interagir com JavaServer Pages (JSPs), servlets e páginas ASP que não estão disponíveis como serviços web ou destinos Serviço Remoting. WebService: WebService componentes permitem acessar serviços web SOAP, que são módulos de software com métodos. Métodos de serviço Web são comumente chamados de operações. Interfaces de serviços Web são definidas usando Web Services Description Language (WSDL). Você pode usar um componente WebService para se conectar a um serviço web SOAP compatível com quando os serviços web são um padrão estabelecido em seu ambiente. WebService componentes também são úteis para objetos que estão dentro de um

17 ambiente corporativo, mas não necessariamente disponíveis no caminho de origem da aplicação web. Remote Object Serviços objeto remoto permitem que você acesse a lógica do negócio diretamente em seu formato nativo, em vez de formatá-lo como XML, como você faz com estilo REST serviços ou serviços web. Isto poupa-lhe o tempo necessário para expor a lógica existente como XML. Outro benefício dos serviços objeto remoto é a velocidade de comunicação através do fio. Trocas de dados continuam a acontecer em HTTP ou HTTPS, mas os dados em si é serializado em uma representação binária. Utilizando os resultados componentes RemoteObject em menos dados atravessando a rede, uso de memória reduzida do lado do cliente, e tempo de processamento reduzido. JAVA Adicionando o Controlador do Servidor Tomcat Abrindo o painel servers e criando um novos ervidor.

18

19 JAVA - Criando a Classe UsuarioService package br.com.hightechcursos.service; public class UsuarioService { public void cadastrar(){ System.out.println("Chamou no Servidor!");

20 Flex - Criando o Index.xhtml <?xml version="1.0" encoding="utf-8"?> <s:application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minwidth="955" minheight="600" creationcomplete="application1_creationcompletehandler(event)"> <fx:script> <![CDATA[ import mx.controls.alert; import mx.events.flexevent; import mx.rpc.events.faultevent; import mx.rpc.events.resultevent; protected function application1_creationcompletehandler(event:flexevent):void { objremo.cadastrar(); protected function method1_resulthandler(event:resultevent):void { Alert.show("Deu Certo","Atenção"); protected function method1_faulthandler(event:faultevent):void { Alert.show("Deu Errado" + event+"", "Atenção"); ]]> </fx:script> <fx:declarations> <s:remoteobject id="objremo" destination="usuarioservice" > <s:method name="cadastrar" result="method1_resulthandler(event)" fault="method1_faulthandler(event)"/> </s:remoteobject> </fx:declarations> <s:label x="245" y="116" width="413" height="112" text="seja Bem Vindo!"/> </s:application> Verificando se o index.html e index.swf foram criados.

21 Aumentando o Timeout do Tomcat- Clique 2 vezes no tomcat no painel server e mude o tempo para 100 segundos. Problema de Versões do entre Jdk e Tomcat. Unsupported major.minor version 51.0

22 Resolvendo: Clicando o botão direito do Mouse no projeto opção properties e depois Facets. Trocando a versão do Java para 1.6. Testando se a requisição do nosso Objeto Remoto (RemoteObject) consegue estabelecer a comunicação com o Objeto Java UsuarioService.

23 Testando o projeto Verificando no Console do TomCat Integrando Spring com BlazeDS

24 Fundamentos do Spring Framework O Spring Antes da sua concepção tínhamos apenas o EJB(2.x) para desenvolver aplicações JEE. Para aqueles que conheceram ou leram sobre o EJB 2.x sabem ou perceberam que desenvolver aplicações com ele era uma tarefa custosa, tanto em questão de tempo, pois era necessário escrever muitos arquivos, quanto em questão de recursos de máquina. Diante disso, a comunidade começou a buscar outras alternativas para desenvolver uma aplicação JEE. O Spring foi uma delas, além de ser uma alternativa ao EJB o ele também colocou o recurso de inversão de controle, que foi o principal responsável pelo seu sucesso. Existem muitas pessoas ligadas ao Spring, mas Rod Jhonson é o principal nome desse framework, onde todas essas pessoas que tinham em mente criar um framework open source para tornar o desenvolvimento J2EE mais fácil e produtivo. O Spring pretende ajudar a estruturar aplicações inteiras de maneira consistente, produtiva, reunindo o que dita a especificação JEE, com integração inúmeros frameworks existentes como Hibernate, Struts, JSF, Wicket, Hessian, etc. Isso é possível justamente pelo mecanismo de IoC, que nos resulta em uma arquitetura coerente e com baixo acoplamento. O Spring não se limita apenas a aplicações web, aplicações J2SE também podem fazer uso dos benefícios do Spring como simplicidade, testabilidade, e baixo acoplamento. Em suma o Spring é... Uma plataforma para "inserirmos" o nosso código Java. Provê uma completa infraestrutura de suporte para as aplicações Java. Dessa maneira podemos direcionar o foco para resolver os problemas de domínio do projeto.

25 Como plataforma, o Spring nos permite criar aplicações a partir de plain old Java Objects (POJOs), que o Spring chama de Bean e integrar com uma infinidade de outros frameworks. Saiba mais sobre Spring no site oficial: Conceitos Importantes IoC Inversion of Control - Inversão de Controle Em suma, podemos dizer que é deixar de fazer algo, de modo que alguém, um controlador/contêiner faça por você. E esse deixar que façam por você consiste em uma configuração que pode ser via xml, programática ou via anotação. DI Dependency Injection - Injeção de Dependência De forma simples e direta, é injeção de dependência é construir, instanciar um objeto e suas dependências que de modo que ele esteja pronto para ser usado. Existe a DI por setter, construtor, atributo e interface. Os mais comuns são os 3 primeiros. Importante: Embora DI e IoC se assemelhem, não são a mesma coisa, a DI é uma parte da IoC. Toda essa robustez do Spring busca diminuir o acoplamento dos objetos existentes na sua aplicação, com isso alcançar o que a programação orientada a objeto tanto vende fica mais próximo, que é a reutilização de código e a manutenção facilitada. Exemplo:

26 Organização da Ferramenta O Spring é composto por recursos que estão organizados em vários módulos e projetos. Nesse curso estudaremos alguns desses módulos e alguns dos recursos desses módulos. Módulos Arquitetura Módulos Importantes Core Container Beans Core Data Access/Integration JDBC Transactions

27 Core Container Essa é a parte base do Spring, que realiza o gerenciamento dos objetos e a DI dos objetos da aplicação. Para o Spring todo objeto gerenciado por ele é chamado de bean. Ao container cabe a responsabilidade de obter as instruções para instanciar, configurar o objeto. Para tal, deve ser disponibilizado o configuration metadata. Essa configuração pode ser data por XML, Java Annotation ou código Java. Core Container Beans É a parte base e fundamental do Spring, e provê o mecanismo de DI e IoC. Os principais pacotes são org.springframework.beans e org.springframework.context. Core Container Context Módulo que provê o acesso aos objetos que foram definidos e instanciados. A interface org.springframework.context.applicationcontext, é o por onde se tem acesso aos beans definidos. Em aplicalções standalone, fazemos o uso das classes ClassPathXmlApplicationContext ou FileSystemXmlApplicationContext para instanciar o contexto do Spring. Esquema do funcionamento do Spring.

28

29 Context - Metadata Metadados - Como mostrado na figura anterior, o Spring precisa consumir um metadado de configuração; esses metadados dizem ao Spring como instanciar, montar e configurar os objetos da sua aplicação. Os metadados são tradicionalmente fornecidos através de um XML simples; a partir da versão 2.5 já é possível usar annotations. Configuração do Spring A base, o boot da configuração do Spring se dá por meio de arquivos XML. No entanto, montada a base dessa configuração podemos usar: XML Anotação Integrando Spring com BlazeDS Baixando o Spring Faça um cadastro rápido e pronto.

30 Configurando o Spring Factory Adicionando a Classe Spring Factory no Projeto public class SpringFactory implements FlexFactory { private static final String SOURCE = "source"; public void initialize(string id, ConfigMap configmap) { public FactoryInstance createfactoryinstance(string id, ConfigMap properties) { SpringFactoryInstance instance = new SpringFactoryInstance(this, id, properties); instance.setsource(properties.getpropertyasstring(source, instance.getid())); return instance; // end method createfactoryinstance() public Object lookup(factoryinstance inst) { SpringFactoryInstance factoryinstance = (SpringFactoryInstance) inst; return factoryinstance.lookup(); static class SpringFactoryInstance extends FactoryInstance { SpringFactoryInstance(SpringFactory factory, String id, ConfigMap properties)

31 { super(factory, id, properties); public String tostring() { return "SpringFactory instance for id=" + getid() + " source=" + getsource() + " scope=" + getscope(); public Object lookup() { ApplicationContext appcontext = WebApplicationContextUtils.getWebApplicationContext(flex.messagi ng.flexcontext.getservletconfig().getservletcontext()); String beanname = getsource(); try { return appcontext.getbean(beanname); catch (NoSuchBeanDefinitionException nexc) { ServiceException e = new ServiceException(); String msg = "Spring service named '" + beanname + "' does not exist."; e.setmessage(msg); e.setrootcause(nexc); e.setdetails(msg); e.setcode("server.processing"); throw e; catch (BeansException bexc) { ServiceException e = new ServiceException(); String msg = "Unable to create Spring service named '" + beanname + "' "; e.setmessage(msg); e.setrootcause(bexc); e.setdetails(msg); e.setcode("server.processing"); throw e; Essa classe pode ser Copiada no Seguinte Link: Adicione o seguinte Factory no arquivo Services-config.xml <!-- Spring factory registration --> <factories> <factory id="spring"

32 class="br.com.hightechcursos.factory.springfactory" /> </factories> web.xml <context-param> <param-name>contextconfiglocation</param-name> <param-value>/web-inf/applicationcontext.xml</param-value> </context-param> <listener> <listenerclass>org.springframework.web.context.contextloaderlistener </listener-class> </listener> Baixe do link abaixo os arquivos de configuração: service-config.xml, web.xml, applicationcontext.xml e classe SpringFactory. <bean name="usuarioservice" class="br.com.hightechcursos.service.usuarioservice" /> Persistência dos Dados com JPA e Hibernate

33 Facets do JPA Vamos trabalhar neste projeto com o padrão JPA (Java Persistence API) Clicando com o direito do mouse no projeto digite Facets para adicionarmos JPA. Criando a classe de Entidade Usuário

34 package br.com.hightechcursos.entities; import javax.persistence.entity; import javax.persistence.generatedvalue; import javax.persistence.generationtype; import javax.persistence.id; import public class (name = "SEQ_USUARIO", sequencename = USUARIO") private Integer id; private String nome; private String login; private String senha; //GETTERS AND SETTERS AQUI Mensagem de Erro comum: Class "Usuario" is mapped, but is not included in any persistence unit Resolva Sincronizando a lista

35 Conhecendo o arquivo de persistence.xml <?xml version="1.0" encoding="utf-8"?> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/persistence <persistence-unit name="cjweb_flex"> <class>br.com.hightechcursos.entities.usuario</class> </persistence-unit> </persistence>

36 Configurando o Hibernate no Persistence.xml <?xml version="1.0" encoding="utf-8"?> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/persistence <persistence-unit name="cjweb_flex"> <!-- Definindo Hibernate Como Provider --> <provider>org.hibernate.ejb.hibernatepersistence</provider> <class>br.com.hightechcursos.entities.usuario</class> <!-- Definindo as propriedades do Hibernate --> <properties> <property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/cjwebflex_db" /> <property name="hibernate.connection.driver_class" value="org.postgresql.driver" /> <property name="hibernate.connection.username" value="postgres" /> <property name="hibernate.connection.password" value="postgres" /> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="true" /> <property name="hibernate.hbm2ddl.auto" value="update" /> </properties> </persistence-unit> </persistence> Problema na integração do JPA com Spring comum ao iniciar o tomcat : Caused by: java.lang.illegalargumentexception: No persistence unit with name 'default' found Substitua a unidade de persistência para: <persistence-unit name="default">

37 Startando o Tomcat Verifique se a tabela no banco de dados foi criado automaticamente. Criando um (DAO -DATA ACCESS OBJECT)

38 Utilizaremos o padrão DAO para este exemplo. O objeto de acesso a dados fará a persistência de nossas entidades no banco de dados. Todos os métodos pertinentes a consultas e transações no banco será implementados nesta classe. classe UsuárioDAO package br.com.hightechcursos.dao; import javax.persistence.entitymanager; import javax.persistence.persistencecontext; import org.springframework.stereotype.repository; import org.springframework.transaction.annotation.transactional; import public class UsuarioDAO EntityManager public void cadastrar(usuario usuario){ entitymanager.persist(usuario);

39 Adicionando o UsuarioDAO contexto do Spring <bean name="usuariodao" class="br.com.hightechcursos.dao.usuariodao" /> Classe DAO com os métodos básicos de CRUD (Create, Retrieve, Update, Delete) package br.com.hightechcursos.dao; import java.util.list; import javax.persistence.entitymanager; import javax.persistence.persistencecontext; import javax.persistence.query; import org.springframework.stereotype.repository; import org.springframework.transaction.annotation.transactional; import public class UsuarioDAO EntityManager public Usuario salvar(usuario usuario){ //Hibernate //Insert into Usuario... //Update usuario set... return public void excluir(usuario usuario){ usuario = buscaporid(usuario.getid()); public Usuario buscaporid(integer id){ //Selec * from usuario where id=? return em.find(usuario.class, public List<Usuario> buscatodos(){ StringBuffer consulta = new StringBuffer(); consulta.append("select u FROM Usuario u "); //Objeto de Consulta Query query = em.createquery(consulta.tostring());

40 return (List<Usuario>) query.getresultlist(); Criando a classe de teste do UsuarioDAO package br.com.hightechcursos.test; import org.junit.test; import org.junit.runner.runwith; import org.springframework.beans.factory.annotation.autowired; import org.springframework.test.annotation.rollback; import org.springframework.test.context.contextconfiguration; import org.springframework.test.context.junit38.abstractjunit38springcontextt ests; import org.springframework.test.context.junit4.springjunit4classrunner; import br.com.hightechcursos.dao.usuariodao; = { "file:webcontent/web- INF/applicationContext.xml" ) public class TestUsuarioDAO extends AbstractJUnit38SpringContextTests UsuarioDAO public void testsalvar(){ Usuario usu = new Usuario(); usu.setnome("jao da Lua"); usu.setlogin("jao"); usu.setsenha("jlua123"); usu = usuariodao.salvar(usu); public void testbuscarporid(){ Usuario usu = usuariodao.buscaporid(1); assertnotnull(usu);

41 public void testexcluir(){ Usuario usuario = new Usuario(); usuario.setid(1); usuariodao.excluir(usuario); asserttrue(true); Criando a Classe UsuarioService Nesta classe vamos colocar os métodos de serviço que serão executados pela tela do cliente. package br.com.hightechcursos.service; import org.springframework.beans.factory.annotation.autowired; import org.springframework.stereotype.service; import br.com.hightechcursos.dao.usuariodao; import public class UsuarioService private UsuarioDAO usuariodao; public void salvar(usuario usuario){ usuariodao.salvar(usuario); No Projeto FLEX. Criando a classe Usuário package br.com.hightechcursos.entities{

42 [RemoteClass(alias="br.com.hightechcursos.entities.Usuario") ] [Bindable] public class Usuario { public var id:*; public var nome:string; public var login:string; public var senha:string; Criando uma tela de Cadastro

43

44 Código Inicial <?xml version="1.0" encoding="utf-8"?> <s:titlewindow xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="300"> <s:layout> <s:verticallayout/> </s:layout> <fx:declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:declarations> </s:titlewindow> Tela Index.mxml Fazendo um chamada da tela através de um botão na aplicação principal <?xml version="1.0" encoding="utf-8"?> <s:application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"

45 xmlns:mx="library://ns.adobe.com/flex/mx" minwidth="955" minheight="600"> <fx:script> <![CDATA[ import br.com.hightechcursos.window.usuariowindow; import mx.controls.alert; import mx.managers.popupmanager; import mx.rpc.events.faultevent; import mx.rpc.events.resultevent; import mx.rpc.remoting.remoteobject; protected function button1_clickhandler(event:mouseevent):void { var usuariowindow:usuariowindow = new UsuarioWindow(); PopUpManager.addPopUp(usuarioWindow,this,true); PopUpManager.centerPopUp(usuarioWindow); ]]> </fx:script> <fx:declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:declarations> <s:label x="68" y="44" text="seja Bem Vindo!"/> <s:button x="68" y="78" label="cadastrar Usuario" click="button1_clickhandler(event)"/> </s:application> Chamando no Browser

46 Tela UsuarioWindow.mxml Componentes do Formulário Trabalhando com os componentes. <s:form>, <s:panel>, <s:vgroup>, <s:form>, <s:formitem>, <s:textinput>, <s:controlbarcontent> e <s:button> <?xml version="1.0" encoding="utf-8"?> <s:titlewindow xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="300"> <s:layout> <s:verticallayout/> </s:layout> <fx:declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:declarations> <s:vgroup width="100%" height="100%" horizontalalign="center" verticalalign="middle"> <s:panel> <s:form> <s:formitem label="id"> <s:textinput id="txtid"> </s:textinput> </s:formitem> <s:formitem label="nome"> <s:textinput id="txtnome" </s:textinput> </s:formitem> <s:formitem label="login"> <s:textinput id="txtlogin" </s:textinput> </s:formitem>

47 <s:formitem label="senha"> <s:textinput id="txtsenha" displayaspassword="true" text="{usuario.senha"> </s:textinput> </s:formitem> </s:form> <s:controlbarcontent> <s:button label="salvar" id="btnsalvar" click="btnsalvar_clickhandler(event)"> </s:button> </s:controlbarcontent> </s:panel> </s:vgroup> </s:titlewindow> Action Script Programando o Click no botão Salvar. <fx:script> <![CDATA[ import br.com.hightechcursos.entities.usuario; import mx.controls.alert; import mx.rpc.events.faultevent; import mx.rpc.events.resultevent; import mx.rpc.remoting.mxml.remoteobject; [Bindable] private var usuario:usuario = new Usuario; protected function btnsalvar_clickhandler(event:mouseevent):void { var usuarioservice:remoteobject = new RemoteObject("usuarioService"); usuarioservice.salvar(usuario); usuarioservice.addeventlistener(resultevent.result,aosalvar); usuarioservice.addeventlistener(faultevent.fault,aofalhar); public function aosalvar(event:resultevent):void{

48 Alert.show("Salvo com sucesso","alerta"); public function aofalhar(event:faultevent):void{ Alert.show("Falhou:"+event,"Erro"); ]]> </fx:script> Evento para Carregar o GRID <s:titlewindow xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="600" height="100%" creationcomplete="carregargrid()"> Declarando um ArrayCollection para armazenar a Lista de Usuários [Bindable] private var listausuarios:arraycollection; Método para Carregar o GRID protected function carregargrid():void { //1)Requisicao para o Service var usuarioservice:remoteobject = new RemoteObject("usuarioService"); usuarioservice.buscatodos(); d); usuarioservice.addeventlistener(resultevent.result,aocarregargri usuarioservice.addeventlistener(faultevent.fault,function (e:faultevent):void{ Alert.show("Não foi Possível Carregar os Usuários:"+e,""); );

49 Adicionando um GRID para Listar os usuários <mx:datagrid id="dgusuarios" width="332" height="200" dataprovider="{listausuarios"> <mx:columns> <mx:datagridcolumn headertext="id" datafield="id"/> <mx:datagridcolumn headertext="nome" datafield="nome"/> <mx:datagridcolumn headertext="login" datafield="login"/> <mx:datagridcolumn headertext="senha" datafield="senha"/> </mx:columns> </mx:datagrid> Tela de Cadastro de Usuário Completa com GRID <?xml version="1.0" encoding="utf-8"?> <s:titlewindow xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="600" height="100%" creationcomplete="carregargrid()"> <s:layout> <s:verticallayout/> </s:layout> <fx:script> <![CDATA[ import br.com.hightechcursos.entities.usuario; import mx.collections.arraycollection; import mx.controls.alert; import mx.events.flexevent; import mx.rpc.events.faultevent; import mx.rpc.events.resultevent; import mx.rpc.remoting.remoteobject; [Bindable] private var usuario:usuario = new Usuario; [Bindable] private var listausuarios:arraycollection; protected function btnsalvar_clickhandler(event:mouseevent):void { /* var usu: Usuario = new Usuario(); usu.nome = txtnome.text; usu.login= txtlogin.text; usu.senha=txtsenha.text; */

50 var usuarioservice:remoteobject = new RemoteObject("usuarioService"); usuarioservice.salvar(usuario); usuarioservice.addeventlistener(resultevent.result,aosalvar); usuarioservice.addeventlistener(faultevent.fault,aofalhar); public function aosalvar(event:resultevent):void{ Alert.show("Salvo com sucesso","alerta"); carregargrid(); public function aofalhar(event:faultevent):void{ Alert.show("Falhou:"+event,"Erro"); protected function carregargrid():void { //1)Requisicao para o Service var usuarioservice:remoteobject = new RemoteObject("usuarioService"); usuarioservice.buscatodos(); d); usuarioservice.addeventlistener(resultevent.result,aocarregargri usuarioservice.addeventlistener(faultevent.fault,function (e:faultevent):void{ Alert.show("Não foi Possível Carregar os Usuários:"+e,""); ); private function aocarregargrid(event:resultevent):void{ listausuarios = event.result as ArrayCollection; ]]> </fx:script> <fx:declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:declarations>

51 <s:hgroup width="100%" height="100%"> <s:panel width="250" height="100%"> <s:form width="250"> <s:formitem label="id"> <s:textinput id="txtid"> </s:textinput> </s:formitem> <s:formitem label="nome"> <s:textinput id="txtnome" </s:textinput> </s:formitem> <s:formitem label="login"> <s:textinput id="txtlogin" </s:textinput> </s:formitem> <s:formitem label="senha"> <s:textinput id="txtsenha" displayaspassword="true" </s:form> </s:textinput> </s:formitem> <s:controlbarcontent> <s:button label="salvar" id="btnsalvar" click="btnsalvar_clickhandler(event)"> </s:button> </s:controlbarcontent> </s:panel> <mx:datagrid id="dgusuarios" width="332" height="200" dataprovider="{listausuarios"> <mx:columns> datafield="id"/> datafield="nome"/> datafield="login"/> datafield="senha"/> <mx:datagridcolumn headertext="id" <mx:datagridcolumn headertext="nome" <mx:datagridcolumn headertext="login" <mx:datagridcolumn headertext="senha"

52 </s:titlewindow> </s:hgroup> </mx:columns> </mx:datagrid> Layout Até o momento Referencias Flex 13dc html AMF : Integração Spring com BlazeDS

Virmerson B. Santos. virmerson@hightechcursos.com.br. Material de Apoio. CURSO de JAVA WEB FLEX. (cjwebflex)

Virmerson B. Santos. virmerson@hightechcursos.com.br. Material de Apoio. CURSO de JAVA WEB FLEX. (cjwebflex) Virmerson B. Santos virmerson@hightechcursos.com.br Material de Apoio CURSO de JAVA WEB FLEX (cjwebflex) Ferramentas Flex Builder (Download trial) Windows Processador de 2 GHz ou mais rápido Microsoft

Leia mais

Criando aplicações ricas com Adobe Flex 3.4 e Java

Criando aplicações ricas com Adobe Flex 3.4 e Java a r t i g o Gilberto Santos (contato@gilbertosantos.com) é graduando do curso de Análise e Desenvolvimento de Software pela PUC- GO, trabalha com Java desde 2005, possui certificação SCJP5 e Adobe Certifield

Leia mais

Java e Banco de Dados: JDBC, Hibernate e JPA

Java e Banco de Dados: JDBC, Hibernate e JPA Java e Banco de Dados: JDBC, Hibernate e JPA 1 Objetivos Apresentar de forma progressiva as diversas alternativas de persistência de dados que foram evoluindo na tecnologia Java, desde o JDBC, passando

Leia mais

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

TUTORIAL SISTEMA DE CONTROLE DE ACESSO

TUTORIAL SISTEMA DE CONTROLE DE ACESSO FACULDADE DE TECNOLOGIA SENAC GOIÁS GESTÃO EM TECNOLOGIA DA INFORMAÇÃO WISLIY LOPES JULIANO PIROZZELLI TULIO TSURUDA LUIZ GUILHERME MENDES TUTORIAL SISTEMA DE CONTROLE DE ACESSO GOIÂNIA JUNHO DE 2014 Sumário

Leia mais

Integrando Flex + Java + BlazeDS

Integrando Flex + Java + BlazeDS Integrando Flex + Java + BlazeDS (Vagner Machado) Para este tutorial serão necessários os seguintes requisitos: - Flex Builder 3. http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email - BlazeDS

Leia mais

Como sobreviver com Java 2? Saulo Arruda

Como sobreviver com Java 2? Saulo Arruda Como sobreviver com Java 2? Saulo Arruda Agenda Apresentação Contexto do mercado Soluções para Java 5+ Soluções para Java 2 Conclusões Apresentação Saulo Arruda (http://sauloarruda.eti.br) Trabalha com

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES 5º PERÍODO Gestão da Tecnologia da Informação Alunos: Alessandro Aparecido André Alexandre Bruno Santiago Thiago Castilho

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

Leia mais

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. EDSON GONÇALVES Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. AGRADECIMENTOS Primeiramente gostaria de agradecer

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Sistemas de Informações Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 7 JPA A Persistência com JPA Para configurar o JPA

Leia mais

PROJETO INTEGRADOR. Documentação. Aplicação de Controle de Acesso FACULDADE DE TECNOLOGIA SENAC GOIÁS. Programação com Frameworks

PROJETO INTEGRADOR. Documentação. Aplicação de Controle de Acesso FACULDADE DE TECNOLOGIA SENAC GOIÁS. Programação com Frameworks PROJETO INTEGRADOR FACULDADE DE TECNOLOGIA SENAC GOIÁS Programação com Frameworks Documentação Aplicação de Controle de Acesso Gestão em Tecnologia da Informação 5º Módulo Noturno Professor: Fabricio Leonard

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Versão 1.0 TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Data: 01/12/2014 SUMÁRIO 1. INTRODUÇÃO... 2 2. O QUE É SPRING SECURITY?...

Leia mais

EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br

EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br Você Gosta do EJB? O EJB esteve por muito tempo na berlinda do mundo Java É pesado... É complicado... Código muito

Leia mais

Mapeamento Lógico/Relacional com JPA

Mapeamento Lógico/Relacional com JPA Mapeamento Lógico/Relacional com JPA Elaine Quintino da Silva Doutora em Ciência da Computação pelo ICMC-USP/São Carlos Analista de Sistemas UOL PagSeguro Instrutora Globalcode Agenda! Persistência de

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

DWR DIRECTED WEB REMOTING

DWR DIRECTED WEB REMOTING DWR DIRECTED WEB REMOTING Vamos ver nesse artigo um pouco sobre o Frameworks Ajax para Java, o DWR. Vamos ver seus conceitos, utilidades, vantagens, algumas práticas e fazer o passo a passo para baixar,

Leia mais

JPA Java Persistence API. Prof. Ramon Chiara

JPA Java Persistence API. Prof. Ramon Chiara JPA Java Persistence API Prof. Ramon Chiara JDBC Java DataBase Connectivity Acesso a bancos de dados Independência de banco de dados JDBC Aplicação JDBC Driver Banco de Dados JDBC Java DataBase Connectivity

Leia mais

Tutorial Financeiro WEB. Spring Security

Tutorial Financeiro WEB. Spring Security Faculdade de Tecnologia SENAC Goiás Projeto Integrador Programação com Frameworks Tutorial Financeiro WEB Spring Security Fernando Norberto Juliana Carvalho Thiago Junior Ester Xavier GTI V Matutino 2014

Leia mais

Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br

Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br A arquitetura Enterprise JavaBeans é uma arquitetura de componentes para o desenvolvimento e a implantação de aplicativos de negócio distribuídos

Leia mais

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho Banco de Dados de Músicas Andre Lima Rocha Campos Osório Pereira Carvalho Definição Aplicação Web que oferece ao usuário um serviço de busca de músicas e informações relacionadas, como compositor, interprete,

Leia mais

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES Conteúdo O Projeto... 2 Criação de Pacotes... 4 Factory:... 6 DAO:... 15 GUI (Graphical User Interface ou Interface Gráfica de Cadastro)... 18 Evento SAIR... 23 Evento CADASTRAR... 24 1 O Projeto Arquivo

Leia mais

Criando um CRUD RESTful com Jersey, JPA e MySQL

Criando um CRUD RESTful com Jersey, JPA e MySQL www.devmedia.com.br [versão para impressão] Link original: http://www.devmedia.com.br/articles/viewcomp.asp?comp=33273 Criando um CRUD RESTful com Jersey, JPA e MySQL Aprenda neste artigo a implementar

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 10 Persistência de Dados

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

Persistência de Dados em Java com JPA e Toplink

Persistência de Dados em Java com JPA e Toplink Persistência de Dados em Java com JPA e Toplink Vinicius Teixeira Dallacqua Curso de Tecnologia em Sistemas para Internet Instituto Federal de Educação, Ciência e Tecnologia - IFTO AE 310 Sul, Avenida

Leia mais

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS FOZ DO IGUAÇU 2013 SUMÁRIO 1. PERSISTÊNCIA

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2010

CURSO DESENVOLVEDOR JAVA Edição 2010 CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Tutorial RMI (Remote Method Invocation) por Alabê Duarte Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos

Leia mais

Integração do Java + Adobe Flex através do Projeto BlazeDs

Integração do Java + Adobe Flex através do Projeto BlazeDs Integração do Java + Adobe Flex através do Projeto BlazeDs por, Thiago Luiz Ribeiro Rodrigues (R.A: 060147-2), 14 de Abril 2009 Este artigo tem por objetivo ensinar como se faz a integração entre o Java

Leia mais

Java Persistence API (JPA)

Java Persistence API (JPA) Java Persistence API (JPA) Você já percebeu que gravar informações num banco de dados usando puramente JDBC dá muito trabalho. Mas, não só você como também um grupo de pessoas já passaram pela mesma experiência

Leia mais

Padrão J2EE Data Access Object (DAO)

Padrão J2EE Data Access Object (DAO) Introdução CRUD DAO Exemplo Padrão J2EE Data Access Object (DAO) Prof. Enzo Seraphim Motivação para usar Componentes precisam acessar e armazenar informações em armazenamento persistente As APIs de armazenamento

Leia mais

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Java Persistence API Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Entity Manager Entity Manager API Java Persistence Query Language (JPQL) Persistence Units 1 Java Persistence

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

UNIDADE IV ENTERPRISE JAVABEANS

UNIDADE IV ENTERPRISE JAVABEANS UNIDADE IV ENTERPRISE JAVABEANS MODELO J2EE COMPONENTES DE Camada de Negócios NEGÓCIOS JAVA SERVLET, JSP E EJB Nos capítulos anteriores, foi mostrado como desenvolver e distribuir aplicações servlet e

Leia mais

Persistindo dados com TopLink no NetBeans

Persistindo dados com TopLink no NetBeans Persistindo dados com TopLink no NetBeans O que é TopLink? O TopLink é uma ferramenta de mapeamento objeto/relacional para Java. Ela transforma os dados tabulares de um banco de dados em um grafo de objetos

Leia mais

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M JAVA Marcio de Carvalho Victorino 1 Servlets 2 1 Plataforma WEB Baseada em HTTP (RFC 2068): Protocolo simples de transferência de arquivos Sem estado (não mantém sessão aberta) Funcionamento (simplificado):

Leia mais

Mini-curso Gratuito Globalcode Slide 1

Mini-curso Gratuito Globalcode Slide 1 Mini-curso Gratuito Slide 1 Mini-curso Gratuito Introdução Enterprise Java Beans (EJB) 3.0 Slide 2 Agenda Plataforma Java EE Conceitos Iniciais (EJB) Session Bean Message-Driven Bean (MDB) Java Persistence

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO.

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Robson Adão Fagundes http://robsonfagundes.blogspot.com/ Mini curso Desenvolvimento de aplicação

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition)

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) J2EE () Sumário Introdução J2EE () APIs J2EE Web Container: Servlets e JSP Padrão XML 2 J2EE é Uma especificação para servidores

Leia mais

Spring: Um suite de novas opções para Java EE

Spring: Um suite de novas opções para Java EE Spring: Um suite de novas opções para Java EE Alberto J Lemos (Dr. Spock) Instrutor Globalcode Ricardo Jun Taniguchi Instrutor Globalcode 1 Agenda > Sobre o Spring Framework > Escopo de integração com

Leia mais

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS Edi Carlos Siniciato ¹, William Magalhães¹ ¹ Universidade Paranaense (Unipar) Paranavaí PR Brasil edysiniciato@gmail.com,

Leia mais

Kassius Vargas Prestes

Kassius Vargas Prestes Kassius Vargas Prestes Agenda 1. Introdução Web Services 2. XML, SOAP 3. Apache Tomcat 4. Axis 5. Instalação Tomcat e Axis 6. Criação de um Web Service 7. Criação de um cliente Baixar http://www.inf.ufrgs.br/~kvprestes/webservices/

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS PROGRAMAÇÃO PARA INTERNET TUTORIAL DE APLICAÇÃO JSF DESENVOLVIDO COM A FERRAMENTA ECLIPSE LUNA

FACULDADE DE TECNOLOGIA SENAC GOIÁS PROGRAMAÇÃO PARA INTERNET TUTORIAL DE APLICAÇÃO JSF DESENVOLVIDO COM A FERRAMENTA ECLIPSE LUNA FACULDADE DE TECNOLOGIA SENAC GOIÁS PROGRAMAÇÃO PARA INTERNET TUTORIAL DE APLICAÇÃO JSF DESENVOLVIDO COM A FERRAMENTA ECLIPSE LUNA NOME DO PROJETO: CadastroWeb ALUNOS: Fabio Henrique, Murillo Victor TUTORIAL

Leia mais

UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE BACHARELADO EM INFORMÁTICA

UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE BACHARELADO EM INFORMÁTICA UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE BACHARELADO EM INFORMÁTICA Tutorial de Instalação da Grade Computacional Gustavo Mantovani Orlando Luiz Pelosi

Leia mais

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o conceito de Padrões de Projeto Compreender o Padrão MVC Conhecer o princípio de alguns dos

Leia mais

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva 1. O que são Serviços Web (Web Services)? Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva A ideia central dos Web Services parte da antiga necessidade

Leia mais

Sophos SafeGuard Enterprise 6.00.1

Sophos SafeGuard Enterprise 6.00.1 Sophos SafeGuard Enterprise 6.00.1 Guia: Manual de instalação do Sophos SafeGuard Enterprise 6.00.1 Data do Documento: novembro de 2012 1 Conteúdo 1. Sobre este manual... 3 2. Requisitos de Sistema...

Leia mais

Dominando Action Script 3

Dominando Action Script 3 Dominando Action Script 3 Segunda Edição (2014) Daniel Schmitz Esse livro está à venda em http://leanpub.com/dominandoactionscript3 Essa versão foi publicada em 2014-05-02 This is a Leanpub book. Leanpub

Leia mais

Artigo JavaMagazine (edição 58)

Artigo JavaMagazine (edição 58) 1 / JBoss Seam Simplicidade e produtividade no desenvolvimento de aplicações Web Aprenda a desenvolver aplicações Web utilizando a integração perfeita entre JSF e EJB 3 FÁBIO AUGUSTO FALAVINHA O JBoss

Leia mais

Criar uma aplicação JPA2 com EclipseLink e H2

Criar uma aplicação JPA2 com EclipseLink e H2 Criar uma aplicação JPA2 com EclipseLink e H2 1) Criar uma aplicação Java no NetBeans. File > New Project > Java, Java Application > Project name: JPA2 Finish. 2) Acrescentar ao Projeto NetBeans a biblioteca

Leia mais

1. Instalando o Java 7 JavaFX e o Netbeans

1. Instalando o Java 7 JavaFX e o Netbeans 1. Instalando o Java 7 JavaFX e o Netbeans Faça o download do Java 7 que inclui JavaFX no site do Oracle: http://www.oracle.com/technetwork/java/javase /downloads/index.html. Clique no License Agreement

Leia mais

4 - Padrões da Camada de Integração. Introdução

4 - Padrões da Camada de Integração. Introdução Padrões de Projeto J2EE J931 Padrões da Camada de Integração Helder da Rocha (helder@acm.org) argonavis.com.br Introdução A camada de integração encapsula a lógica relacionada com a integração do sistema

Leia mais

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC Módulo 5 No módulo anterior adaptamos nosso projeto para persistir as informações no banco de dados utilizando as facilidades da extensão demoiselle-jpa. Experimentamos o controle transacional do Framework

Leia mais

Lidando de Forma Eficiente com Validações Locais de Objetos

Lidando de Forma Eficiente com Validações Locais de Objetos Lidando de Forma Eficiente com Validações Locais de Objetos Aprenda a construir um mini-framework para validar objetos locais sem afetar a complexidade do código. Autor Paulo César M. N. A. Coutinho (pcmnac@gmail.com):

Leia mais

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES Hugo Henrique Rodrigues Correa¹, Jaime Willian Dias 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil hugohrcorrea@gmail.com, jaime@unipar.br Resumo.

Leia mais

Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02

Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02 Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02 Agenda Introdução Inversão de Controle Spring AOP Portable Service Abstractions Spring

Leia mais

MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis

MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis Microkernel Service Locator Dependency Injection Exemplo Classe Auditor Salva registros de eventos no banco de dados

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

Integração de sistemas utilizando Web Services do tipo REST

Integração de sistemas utilizando Web Services do tipo REST Integração de sistemas utilizando Web Services do tipo REST Jhonatan Wilson Aparecido Garbo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil jhowgarbo@gmail.com jaime@unipar.br

Leia mais

Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre

Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre Prática: 1 - A plataforma JEE (Java Enterprise Edition) UBI, DI, Paula Prata SDTF T01 1 Arquitectura

Leia mais

Framework Demoiselle 2.3.0 QuickStart Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem

Framework Demoiselle 2.3.0 QuickStart Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem Framework Demoiselle 2.3.0 QuickStart Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem Sobre o QuickStart... v 1. Instalação... 1 1.1. Ambiente recomendado... 1

Leia mais

Criação de um novo projeto no Eclipse utilizando Maven

Criação de um novo projeto no Eclipse utilizando Maven 1. Faça o download da versão mais atual do Eclipse IDE for Java EE Developers em https://www.eclipse.org/downloads/. 2. No Eclipse, crie um novo projeto Maven, em File >> New >> Maven Project 3. Marque

Leia mais

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side

Leia mais

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br WebWork 2 João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 0.5 Última Atualização: Agosto/2005 1 Agenda Introdução WebWork 2 & XWork Actions Views Interceptadores Validação Inversão de Controle (IoC)

Leia mais

Manual de Instalação INSTALAÇÃO E CONFIGURAÇÃO DE PROGRAMAS

Manual de Instalação INSTALAÇÃO E CONFIGURAÇÃO DE PROGRAMAS Manual de Instalação INSTALAÇÃO E CONFIGURAÇÃO DE PROGRAMAS Lista de Programas - Java versão 6.0 ou superior JDK (Java Development Kit) /Setups/java/jdk-6u3-windows-i586-p O JDK já vem com o JRE (Java

Leia mais

Padrões Arquiteturais no Java EE 7

Padrões Arquiteturais no Java EE 7 Padrões Arquiteturais no Java EE 7 Vagner F. Le Roy Júnior Curso de Pós Graduação em Arquitetura de Software Distribuído Pontifícia Universidade Católica de Minas Gerais Belo Horizonte, MG Brasil vagnerleroy@gmail.com

Leia mais

Guia: Este manual irá mostrar os procedimentos necessários para o upgrade das versões 5.60 e 6.01 para o Sophos SafeGuard Enterprise 6.10.

Guia: Este manual irá mostrar os procedimentos necessários para o upgrade das versões 5.60 e 6.01 para o Sophos SafeGuard Enterprise 6.10. Upgrade do Sophos SafeGuard Enterprise 5.60/6.0 para a versão 6.10 Guia: Este manual irá mostrar os procedimentos necessários para o upgrade das versões 5.60 e 6.01 para o Sophos SafeGuard Enterprise 6.10.0

Leia mais

EJB 3.1: A Community Update

EJB 3.1: A Community Update EJB 3.1: A Community Update Reza Rahman Autor, EJB 3 in Action Expert Group Member, Java EE 6 and EJB 3.1 Fundador, Cognicellence Julho de 2008 1 EJB 3.0: Revisão Breve > As grandes mudanças > EJB simplificado

Leia mais

O que é um framework?

O que é um framework? O que é um framework? Um framework, ou arcabouço, em desenvolvimento de software, é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. (Wikipedia)

Leia mais

Auditoria Avançada de Persistência com Hibernate, JPA e Envers

Auditoria Avançada de Persistência com Hibernate, JPA e Envers a r t i g o José Yoshiriro Ajisaka Ramos (jyoshiriro@gmail.com): bacharel em Sistema de Informação (IESAM). Mestrando em Ciência da Computação (UFPA). Instrutor na Equilibrium Web e na UAB. Engenheiro

Leia mais

Componentes no Java EE

Componentes no Java EE Unidade III Componentes no Plataforma Java Enterprise Edition Adiciona ao Java suporte para: Desenvolvimento de Aplicações Web: JSP, Servlets e Componentes de Negócio: Interconexão com Sistemas Legados:

Leia mais

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. JDBC CRIANDO O BANCO DE DADOS: Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. CRIANDO O PROJETO JAVA PARA DESKTOP: Crie um projeto Java chamado Prograd Crie um pacote chamado

Leia mais

3 Serviços na Web (Web services)

3 Serviços na Web (Web services) 3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem

Leia mais

Introdução. Tutorial do Xdoclet. Resumo

Introdução. Tutorial do Xdoclet. Resumo Tutorial do Xdoclet Resumo Apresentar a ferramenta XDoclet uma ferramenta utilizada como tarefa (task) do Jakarta Ant que permite executar e criar templates para gerar arquivos, inclusive código Java,

Leia mais

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado ARQUITETURA SISGRAD Manual de Utilização Versão: 2.0 Criação: 05 de julho de 2007 Autor: André Penteado Última Revisão: 09 de outubro de 2009 Autor: Alessandro Moraes Controle Acadêmico - Arquitetura SISGRAD

Leia mais

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java Web Arquitetura Aplicações web são basicamente constituídas de: Requisições Respostas Model View Controller (MVC) O que é MVC? Padrão

Leia mais

Adobe Flex. Cainã Fuck dos Santos Thiago Vieira Puluceno Jonathan Kuntz Fornari Gustavo Nascimento Costa

Adobe Flex. Cainã Fuck dos Santos Thiago Vieira Puluceno Jonathan Kuntz Fornari Gustavo Nascimento Costa Adobe Flex Cainã Fuck dos Santos Thiago Vieira Puluceno Jonathan Kuntz Fornari Gustavo Nascimento Costa O que é Flex? Estrutura de Código aberto para a criação de aplicativos Web Utiliza o runtime do Adobe

Leia mais

MicrovixPOS Requisitos, Instalação e Execução

MicrovixPOS Requisitos, Instalação e Execução MicrovixPOS Requisitos, Instalação e Execução Autor Público Alvo Rodrigo Cristiano dos Santos Suporte Técnico, Consultoria e Desenvolvimento. Histórico Data 13/06/2012 Autor Rodrigo Cristiano Descrição

Leia mais

Minha primeira aplicação utilizando Java Server Faces + Glassfish

Minha primeira aplicação utilizando Java Server Faces + Glassfish Minha primeira aplicação utilizando Java Server Faces + Glassfish Este tutorial apresenta de forma simples, como iniciar no desenvolvimento com o framework Java Server faces 1.2, utilizando-se o servidor

Leia mais

SCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br

SCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCC-0263 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side

Leia mais

Nome N Série: Ferramentas

Nome N Série: Ferramentas Nome N Série: Ferramentas Competências: Identificar e utilizar técnicas de modelagem de dados; Habilidades: Utilizar ferramentas de apoio ao desenvolvimento de software; Bases Tecnológicas: Metodologias

Leia mais

Segurança em Java. João Carlos Pinheiro. jcpinheiro@cefet-ma.br. Versão: 1.1 Última Atualização: Agosto/2005

Segurança em Java. João Carlos Pinheiro. jcpinheiro@cefet-ma.br. Versão: 1.1 Última Atualização: Agosto/2005 Segurança em Java João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 1.1 Última Atualização: Agosto/2005 1 Objetivos Apresentar uma introdução ao suporte fornecido pela API Java para a criptografia Utilizar

Leia mais

SIPREV/Gestão de RPPS Implantação Manual de Instalação Versão 1.18

SIPREV/Gestão de RPPS Implantação Manual de Instalação Versão 1.18 Implantação Manual de Instalação Versão 1.18 1 de 44 - Manual de Instalação Histórico de Revisões Data Versão Descrição Autor 19/05/09 1.0 Criação do documento Carlos Tabosa-UDCE 22/05/09 1.1 Revisão do

Leia mais

Manipulação de Banco de Dados com Java 1. Objetivos

Manipulação de Banco de Dados com Java 1. Objetivos Manipulação de Banco de Dados com Java 1. Objetivos Demonstrar os fundamentos básicos para a manipulação de banco de dados com Java; Apresentar a sintaxe de comandos SQL usados em Java. 2. Definições A

Leia mais

Java com Banco de Dados Posgree

Java com Banco de Dados Posgree Java com Banco de Dados Posgree Prof. Luiz Claudio Ferreira de Souza www.luizclaudiofs.blogspot.com 1 Driver para ligação Java e Postgre http://jdbc.postgresql.org/download.html www.luizclaudiofs.blogspot.com

Leia mais

Manual de Instalação: Agente do OCS Inventory NG

Manual de Instalação: Agente do OCS Inventory NG Manual de Instalação: Agente do OCS Inventory NG Abril 2013 Sumário 1. Agente... 1 2. Onde instalar... 1 3. Etapas da Instalação do Agente... 1 a. Etapa de Instalação do Agente... 1 b. Etapa de Inserção

Leia mais

INSTALANDO O WINDOWS SERVER 2008

INSTALANDO O WINDOWS SERVER 2008 INSTALANDO O WINDOWS SERVER 2008 Objetivo Esse artigo tem como objetivo demonstrar como instalar o Windows Server 2008 no Microsoft Virtual Server 2005 R2 de forma rápida e fácil. Nesse artigo não abordaremos

Leia mais

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações

Leia mais