Javascript Exemplos Objetos

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

Download "Javascript Exemplos Objetos"

Transcrição

1 Javascript Exemplos Objetos <html> <body> <script type="text/javascript"> //defines a person constructor function person(fname,lname,ecolor){ this.firstname=fname; this.lastname=lname; this.eyecolor=ecolor; //constructs a new object pobj var pobj= new person("flavio","silva","green"); for (x in pobj){ document.write(pobj[x] + " "); </script> </body> </html> 70 Java Plataformas A tecnologia Java está dividida em plataformas. Cada plataforma oferece um conjunto de funcionalidades para o desenvolvimento de diferentes tipos de aplicações Existem três plataformas baseadas na tecnologia Java Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition 71 1

2 Java Plataformas Java ME Java Platform, Micro Edition Fornece um ambiente específico para a criação de aplicações destinadas a dispositivos como telefones celulares, pagers, PDAs, Smartphones; etc. Destinado a criação de aplicações para dispositivos móveis Java SE Java Platform, Standard Edition Fornece um ambiente completo para o desenvolvimento de aplicações em destktops (clientes) e também servidores Base da tecnologia Java. Fornece a máquina virtual (JRE Java Runtime Environment) Java EE Java Platform, Enterprise Edition Define um padrão para o desenvolvimento de aplicações baseadas em componentes e estruturadas em várias camadas Seu foco é o desenvolvimento de aplicações do lado servidor, cujo objetivo é prover funcionalidades para aplicações distribuídas 72 Java Java EE O padrão Java EE define um grupo da APIs( Application Programming Interfaces) que pode ser combinado para a criação de aplicações distribuídas baseadas ou não na Web O Java EE não é um produto, mas uma especificação. A especificação é criada pela JCP (Java Community Process) Esta comunidade é responsável pelo desenvolvimento da tecnologia Java e é aberta a qualquer desenvolver ou empresa interessado na tecnologia Esta especificação é então implementada pelas mais variadas companhias como, por exemplo: ORACLE SUN BEA IBM JBOSS 73 2

3 Java Java EE O resultado desta implementação é um Servidor de Aplicações (Application Server) Exemplos de servidores de aplicações compatíveis com o padrão J2EE Oracle Oracle - Oracle Application Server 10g Sun - Sun GlassFish Enterprise Server BEA Oracle WebLogic Server IBM Websphere JBoss JBoss Application Server SAP AG - Web Application Server Sybase EAServer Adobe - JRun Server Borland AppServer Fujitisu Interstage Application Server Os servidores implementam uma das especificações Java EE (1.2; 1.3; 1.4, 5 e 6) 74 Aplicações Distribuídas Camadas O modelo para desenvolvimento de aplicações utilizando o Java EE é baseado em uma arquitetura multicamadas Cada camada contém componentes de acordo com a sua função. Basicamente existem as seguintes camadas: Cliente (Client Tier) Camada Web (Web Tier) Camada de Negócios (Bussiness Tier) Camada Enterprise Information System (EIS) A camada Web Tier estará presente quando a aplicação for baseada na WEB ou seja, o cliente é um navegador (browser) A arquitetura acima é conhecida como três camadas (3-tier) visto que existem 3 máquinas envolvidas: O cliente; O servidor de aplicações Java EE O servidor de banco de dados 75 3

4 Aplicações Distribuídas Camadas Cliente (Client Tier) Componentes que são executados na máquina do cliente. Podem ser executados em um Browser ou uma aplicação desktop baseada no Java SE Camada Web (Web Tier) Componentes que são executados em um servidor Java EE Basicamente tratam da apresentação do conteúdo na WEB Esta camada é responsável por gerar e enviar para o cliente o conteúdo gerado de forma dinâmica Camada de Negócios (Bussiness Tier) Contém os objetos relacionados ao negócio e suas regras O servidor de aplicações oferece recursos como controle de transações, de sessões para os objetos desta camada. Pode ser implementa com EJB (Enterprise JavaBeans) Camada Enterprise Information System (EIS) Consiste dos recursos que serão utilizados pela aplicação. Inclui gerenciadores de banco de dados (DBMS) e aplicações legadas, baseadas em mainframes, por exemplo. Esta camada é executada fora do servidor J2EE e a arquitetura J2EE possui uma interface para esta camada, que pode ser feita, por exemplo, através de conectores 76 Aplicações Distribuídas Camadas Arquitetura Java EE Visão Geral das Camadas 77 4

5 Aplicações Distribuídas Arquitetura Java EE Comunicação entre as várias camadas 78 Aplicações Distribuídas Arquitetura Java EE Camada Web (Web Tier) JavaBeans; JSP Pages; Servlets 79 5

6 Aplicações Distribuídas Arquitetura Java EE Camada de Negócios (Business Tier) Baseada em EJB 80 Java EE contêineres O contêiner fornece a infra-estrutura para a execução de um componente específico da plataforma O servidor Java J2EE (Application Server) fornece dois tipos básicos de contêineres: WEB contêiner EJB contêiner 81 6

7 Java EE contêineres Web Contêiner Executa Servlets e páginas JSP Servlets São classes Java que podem ser chamados dinamicamente e que podem executar alguma funcionalidade. Estes programas podem ser executado em um Servidor Web ou em um contêiner para Servlets Normalmente estão ligados a geração de conteúdo para browsers. O Servlet implementa a interface Servlet e possui um funcionamento pré-definido Os Servlets recebem e respondem a requisições feitas normalmente através do protocolo HTTP JavaServer Pages (JSP) Consistem de uma maneira para criar conteúdo dinâmico para a Web Seu objetivo é criar uma separação entre a apresentação e os dados que estarão presentes em uma página no navegador. Normalmente a página JSP é um modelo que contém tanto o conteúdo estático, como a indicação de como o conteúdo dinâmico será gerado 82 Java EE contêineres EJB Contêiner Realiza a criação, destruição e gerenciamento dos EJBs (Enterprise JavaBeans) Enterprise JavaBeans Enterprise JavaBeans é um padrão para o desenvolvimento de componentes, utilizando a linguagem Java, que podem ser implantados (deployed) em qualquer servidor J2EE. Em sua essência são classes Java. Existem vários tipos de EJBs cada um com características próprias Além disso o contêiner de EJBs é responsável pelo: Gerenciamento Distribuído de Transações Implementação da Segurança Gerenciamento de Recursos Persistência dos EJBs Acesso Remoto Transparência de Localização Monitoramento Todas as funções são realizadas de forma transparente pelo servidor de aplicações. O EJB contêiner é aquele que realmente caracteriza um servidor de aplicações baseado na especificação Java EE 83 7

8 Java EE contêineres EJB Contêiner Existem vários tipos de EJBs cada um com características próprias O seu uso depende das características da aplicação, de suas vantagens e desvantagens particulares TIPO SUB TIPO DESCRIÇÃO Stateless (sem estado) Componentes que simplesmente realizam a chamada de métodos. Utilizado para a implementação das regras de negócio Session Stateful (com estado) Componentes com estado funcionam como um proxy para aplicações do cliente. Estes componentes mantém seu estado entre as chamadas de Métodos Message Entity Component Managed (CMP) Bean Managed (BMP) Componentes sem estado que estão ligados ao Java Message Service (JMS), utilizado para chamada assíncrona de métodos Componentes com estados que fazem o encapsulamento de uma entidade de um banco de dados. O servidor de aplicações gera o código para conectar estes objetos a um banco de dados específico Componentes com estados que fazem o encapsulamento de entidades complexas de um banco de dados. Neste caso o desenvolvedor deve escreve o código necessário para acessar o objeto no banco de dados 84 Apache Tomcat O apache Tomcat basicamente é um contêiner Web (Servlets e JSP) O Tomcat é a implementação de referência das especificações para Servlets e JavaServer Pages Estas especificações são desenvolvidas pela Sun através da JCP (Java Community Process). A JCP é uma entidade aberta que possui como membros pessoas e empresas envolvidas com a tecnologia Java. A seguintes tabela mostra as versões das especificações e as respectivas versões do Tomcat Especificações Versão Apache Versão Miníma Versão Atual Servlet/JSP Tomcat Java SE 3.0/ x / x / x / x / x

9 Apache Tomcat O apache Tomcat basicamente é um contêiner Web (Servlets e JSP) O Tomcat é a implementação de referência das especificações para Servlets e JavaServer Pages Estas especificações são desenvolvidas pela Sun através da JCP (Java Community Process). A JCP é uma entidade aberta que possui como membros pessoas e empresas envolvidas com a tecnologia Java. A seguintes tabela mostra as versões das especificações e as respectivas versões do Tomcat Especificações Versão Apache Versão Miníma Versão Atual Servlet/JSP Tomcat Java SE 3.0/ x / x / x / x / x Tomcat Estrutura de Pastas 87 9

10 Tomcat Estrutura de Pastas /bin Contém os scripts para inicialização (startup.sh / startup.bat) e finalização do contêiner web (shutdown.sh / shutdown.bat) /conf Arquivos de configuração do tomcat Server.xml Definição dos serviços (elemento <Service>)oferecidos pelo Tomcat. Um serviço consiste de uma coleção de conectores O conector (elemento <Connector>) representa um ponto onde é possível receber e responder a requests. Neste elemento é definido o protocolo e porta onde as requisições serão recebidas tomcat-users.xml Permite defnir papeis (<role>) e usuários (<user>) Certas aplicações que são fornecidas com o Tomcat necessitam de papéis específicos para funcionamento <user username="admin" password= pw" roles="tomcat,manager-gui,admin-gui"/> 88 Tomcat Estrutura de Pastas /lib Arquivos.Jar que compõe o Tomcat /logs Arquivos de log produzidos pelo Tomcat durante a execução Um chamada do tipo System.out.println() dentro de um Servlet será gravada nos arquivos de log /webapps Aplicações Web Dinâmicas que estão disponíveis em uma instalação do Tomcat O nome de cada pasta equivale ao contexto da aplicação web e deve ser fornecido para acesso à mesma através do navegador Cada pasta destas deverá seguir o padrão para aplicações Web 89 10

11 Estrutura de uma aplicação WEB / (Raiz da Aplicação) Todos os arquivos de acesso públicos são colocados nesta pasta como por exemplo: HTML; JSP; GIF; etc. No caso do TOMCAT o diretório raiz da aplicação é criado dentro da pasta webapps /WEB-INF Os arquivos desta pasta não são de acesso público Esta pasta contém um arquivo chamado web.xml, conhecido como deployment descriptor, que contém as configurações para uma aplicação WEB /WEB-INF/classes Todas as classes java compiladas (.class) são colocadas neste local /WEB-INF/lib Todas as classes que estão compactadas em um arquivo JAR são colocadas neste diretório 90 Deployment Descriptor O arquivo web.xml é conhecido como "deployment descriptor" Este arquivo contém toda a configuração do servlet que será utilizada pelo contêiner de servlets (Tomcat) Este arquivo é escrito em XML e deve possuir no mínimo os seguintes elementos: <web-app> <context-param> </context-param> <servlet> </servlet> <servlet-mapping> </servlet-mapping> </web-app 91 11

12 Deployment Descriptor Elementos Versão 2.5 context-param description display-name distributable ejb-ref ejb-local-ref env-entry error-page filter filter-mapping icon jsp-config listener login-config mime-mapping resource-env-ref resource-ref security-constraint security-role servlet servlet-mapping session-config web-app welcome-file-list 92 Deployment Descriptor Servlets JSP 2.1 (Tomcat 6) <web-app xmlns:xsi=" xmlns=" xmlns:web=" xsi:schemalocation=" id="webapp_id" version="2.5" > <display-name>web app name</display-name> <! outras declarações --> </web-app> 93 12

13 Deployment Descriptor Servlets JSP 2.0 (Tomcat 5) <web-app xmlns=" xmlns:xsi=" xsi:schemalocation=" version="2.4" > <display-name>web app name</display-name> <! outras declarações --> </web-app> 94 Deployment Descriptor Para acessar Servlets este deve possuir no mínimo os seguintes elementos: <web-app xmlns=" xmlns:xsi=" xswie:bs-cahpepm_a2l_o4c.axtsido"n=" version="2.4"> <servlet> <servlet-name>servletuniquename</servlet-name> <servlet-class>servletclassfile</servlet-class> </servlet> <servlet-mapping> <servlet-name>servletuniquename</servlet-name> <url-pattern>/rootfolder</url-pattern> </servlet-mapping> </web-app> 95 13

14 Deployment Descriptor O elemento <servlet> contém dois elementos-filho que descrevem o servlet O elemento <servlet-name> deve ser único no arquivo web.xml. Este nome será utilizado para referenciar o servle em outros elementos como no elemento <servlet-mapping> O nome da classe (<servlet-class>)é o nome completo a partir da pasta classes. Indica a classe será utilizada como resposta ao chamado do servlet Caso a classe esteja em um pacote o nome do mesmo deve ser utilizado Ex: com.mycompany.servlets.nomeclasse O elemento <servlet-mapping> é utilizado para realizar uma ligação entre um caminho e um determinado servlet Para isto este elemento contém um elemento-filho como o nome do Servlet (<servlet-name>) e um elemento (<url-pattern>) que descreve a um caminho URL Quando este caminho estiver presente a solicitação será mapeada para o servlet indicado no arquivo web.xml - indicado por (<servlet-name>) Exemplos: /servapp Neste caso qualquer URL que finalize com /servapp será mapeada para o servlet ( *.do Neste caso qualquer URL que termine com a string ".do" será mapeada para o servlet ( 96 Deployment Descriptor Exemplo 97 14

15 Aplicações WEB Em sua concepção a WEB é um meio para a troca de documentos HTML entre diferentes pontos, utilizando a infra-estrutura oferecida pela Internet. A medida que a WEB se popularizou novas aplicações começaram a surgir Em muitos sites da WEB o conteúdo não poderia ser constituído de código HTML estático, mas precisaria ser alterado, muitas das vezes a cada minuto. A partir desta necessidade começaram a surgir meios para se conseguir a produção de conteúdos dinâmicos A primeira proposta para a criação de conteúdos dinâmicos foi através do CGI (Common Gateway Interface) Este mecanismo permite a execução de um código, escrito em C ou Perl, através do navegador 98 Aplicações WEB Usando CGI Uma aplicação CGI pode ser invocada da seguinte forma: Aplicação CGI, porém apresenta algumas desvantagens: Criada a partir de linguagens procedimentais Instabilidade em uma aplicação CGI pode impedir até a operação do servidor Problemas de Escalabilidade. A cada chamada uma nova instância da aplicação é criada, criando um novo thread e consumindo recursos do servidor. Outro aspecto é que através de uma aplicação CGI não é possível agregar recursos na aplicação como: estabelecimento de sessão; autenticação e autorização. Neste contexto e como uma resposta a estas desvantagens, na plataforma Java foi desenvolvido o conceito dos Servlets 99 15

16 Aplicações WEB Usando Servlets São programas Java que podem ser chamados dinamicamente e que podem executar alguma funcionalidade. Este programas podem ser executado em um Servidor Web ou em um contêiner para Servlets Todos os Servlets implementam a interface Servlet O servlet possui um ciclo de vida padrão e desta forma os métodos são chamados de uma maneira pré-determinada. init() service() destroy() 100 Servlets - Operações Métodos são chamados durante o ciclo de vida de um Servlet: init() Chamado na inicialização do Servlet uma única vez, antes que o mesmo possa responder às requisições feitas pelos clientes. service() Chamado a fim de que o Servlet possa responder a uma solicitação. Em aplicações HTTP este método verifica qual o tipo de requisição (GET, POST, etc.) e encaminha o fluxo, conforme cada caso, para o métodos que tratarão cada situação Uma mesma instância de um Servlet pode ser utilizada por vários clientes, permitindo desta forma a economia de recursos do servidor. destroy() Chamado uma única vez, antes que o objeto seja destruído. Responsável pela liberação dos recursos alocados pelo método init()

17 Servlets API Java Os Servlets são definidos como uma interface na API Java, sendo assim uma classe qualquer deve implementar esta interface a fim de que possa ser considerando um Servlet Esta interface é definida no pacote javax.servlet Métodos definidos pela interface: void destroy() Responsável pela finalização do Servlet e liberação de recursos ServletConfig getservletconfig() Retorna um objeto ServeletConfig que contém informações de inicialização e de configuração de um Servlet java.lang.string getservletinfo() Retorna informações sobre o Servlet como autor,versão; etc void init(servletconfig config) Responsável pela inicialização e alocação de recursos void service(servletrequest req, ServletResponse res) Chamado pelo contêiner a fim de que o Servlet possa responder a uma requisição de serviço. Esta interface é implementada pela classes: javax.servlet.genericservlet; javax.servlet.http.httpservlet 102 HttpServlet Normalmente os Servlets a fim de serem executados sobre o protocolo HTTP, o mesmo utilizado pela WEB O protocolo HTTP define as seguintes operações: GET Requisita uma página para leitura HEAD Requisita o cabeçalho de uma página WEB PUT Envia uma página a fim de ser escrita em servidor WEB POST Envia informações que são adicionadas a uma página WEB DELETE Remove uma página WEB A classe HttpServlet uma classe abstrata que cria um Servlet próprio para uso com a Web. Esta classe está definida no seguinte pacote: javax.servlet.http

18 HttpServlet A classe HpptServlet define os métodos para que o Servlet possa ser utilizado juntamente com o protocolo HTTP Normalmente uma classe deverá especializar os métodos definidos nesta classe a fim de imprimir o comportamento desejado pelo Servlet Métodos principais doget(httpservletrequest req, HttpServletResponse resp) Utilizado em requisições do tipo HTTP GET dohead(httpservletrequest req, HttpServletResponse resp) Utilizado em requisições do tipo HTTP HEAD dopost(httpservletrequest req, HttpServletResponse resp) Utilizado em requisições do tipo HTTP POST doput(httpservletrequest req, HttpServletResponse resp) Utilizado em requisições do tipo HTTP PUT dodelete(httpservletrequest req, HttpServletResponse resp) Utilizado em requisições do tipo HTTP DELETE init; destroy; getservletinfo 104 HttpServlet Normalmente os métodos Service, dooptions e dotrace não são especializados Os método doget() e dopost() são os métodos usualmente especializados As informações utilizadas na requisição e na resposta estão encapsuladas em HttpServletRequest e HttpServletResponse

19 HttpServlet Além dos métodos descritos anteriormente que devem ser especializados existe outros métodos muito utilizados em um Servlet public ServletContext getservletcontext() Permite o obter um objeto que representa o contêiner do Servlet public ServletConfig getservletconfig() Recupera um objeto ServletConfig. Este objeto contém a configuração do Servlet que contém parâmetros de inicialização do Servlet, definidos no arquivo WEB.XML public void log(java.lang.string msg) Escreve uma mensagem no arquivo de log do contêiner de Servlets O nome do Servlet é adicionado ao início da mensagem (msg) 106 HttpServletRequest A classe HpptServletRequest representa o pedido (request) que é enviado do navegador(cliente) para o servidor (contêiner de Servlets) Todos os parâmetros que são passados do cliente para o servidor estão encapsulados neste objeto Este objeto é instanciado pelo contêiner e entregue para uso do servlet Os principais métodos da classe HttpServlet sempre recebem um objeto HttpServletRequest

20 HttpServletRequest Métodos Principais public java.lang.string getparameter(java.lang.string name) Este método permite o acesso a parâmetros que são recebidos do cliente. Cada parâmetro possui um nome (name) que deve ser informado O nome está definido em um Form Html ou então na URL de acesso ao servlet Ex: String scmd = (String) request.getparameter("cmd"); public HttpSession getsession() Retorna uma sessão (objeto HttpSession) associado ao pedido e caso a mesma não exista uma nova sessão é criada Através da sessão é possível compartilhar objetos entre vários execuções pedido/resposta de um servlet Ex: HttpSession session = request.getsession(); public HttpSession getsession(boolean create) Retorna uma sessão (objeto HttpSession) associado ao pedido Uma nova sessão é criada somente se o parâmetro create igual a true 108 HttpServletResponse A classe HpptServletRequest representa a reposta(response) que é enviada do servidor (contêiner de Servlets) para o navegador(cliente) Este objeto é instanciado pelo contêiner e normalmente é alterado pelo servlet a fim de produzir o resultado desejado Os principais métodos da classe HttpServlet sempre recebem um objeto HttpServletResponse Basicamente o servlet consiste em alterar este objeto conforme o necessário Este objeto contém métodos que permite o acesso ao cabeçalho (headers) HTTP e cookies bem como ao conteúdo da resposta

21 HttpServletResponse Métodos Principais public void setcontenttype(java.lang.string type) Permite definir o tipo de resposta que será devolvida ao navegador O tipo mais comum é "text/hmtl" public java.io.printwriter getwriter() throws java.io.ioexception Este método obtém a stream (sequência de dados) que será utilizada na resposta Neste caso a stream representa uma sequência de carateres, como é um caso do conteúdo do tipo "text/html" public ServletOutputStream getoutputstream() throws java.io.ioexception Este método obtém a stream (sequência de dados) que será utilizada na resposta Neste caso a stream representa uma sequência de bytes (binária), como é um caso do conteúdo do tipo MIME (Multipurpose Internet Mail Extensions) como por exemplo: application/zip ; application/pdf ou "image/jpeg" 110 Servlet Básico Exemplo 1 package org.lp2.servlet; import java.io.*; import javax.servlet.*; public class HelloWorldServlet extends HttpServlet { protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { //Indica que o conteudo da reposta é página html response.setcontenttype("text/html"); //Obtém a stream de caracteres da saída PrintWriter out = response.getwriter(); //Conteúdo básico de uma página HTML out.println("<html>"); out.println("<head>"); out.println("<body bgcolor=\"blue\">"); out.println("<h1>"); out.println("hello SERVLET WORLD!"); out.println("</h1>"); out.println("</body>"); out.println("</html>");

22 Servet Básico Exemplo 2 Passagem de Parâmetros package org.lp2.servlet; import java.io.*; import javax.servlet.*; public class ParameterServlet extends HttpServlet { protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { //Obém o valor do parâmetro String scmd = (String) request.getparameter("cmd"); response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<body bgcolor=\"blue\">"); out.println("<h1>"); out.println("uso de Parâmetros em um Servlet!"); out.println("comando = "+scmd); out.println("</h1>"); out.println("o nome do comando acima foi passado como parâmetro."); out.println("</body>"); out.println("</html>"); 112 Servet Básico Exemplo 3 Passagem de Parâmetros Login package org.lp2.servlet; import java.io.*; import java.util.hashmap; import javax.servlet.*; import javax.servlet.http.*; public class LoginServlet extends HttpServlet { //Neste caso tanto doget como dopost executarão as memas operações protected void dopost(httpservletrequest arg0, HttpServletResponse arg1) throws ServletException, IOException { doget(arg0,arg1); protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { //Para definir os usuários e suas senha será criado um HashMap //que contém o nome do usuário e sua senha HashMap<String,String> users = new HashMap(); users.put("flavio", "123"); users.put("mateus", "456"); users.put("lucas", "101"); users.put("joao", "1213"); //continua

23 Servet Básico Exemplo 3 Passagem de Parâmetros Login //Obtém o valor do parâmetro String snome = (String) request.getparameter("nome"); String ssenha = (String) request.getparameter("senha"); String sstatus; //Neste momento o Servlet poderia chamar uma classe //responsável pela realização do serviço de login //Neste exemplo, a fim simplificar será feita uma busca em um //HashMap de usuarios e senhas. Neste mapa será fácil executar a a pesquisa if (!users.containskey(snome)) { sstatus = "USUÁRIO NÃO CADASTRADO!"; else { //Verifica se a senha está correta String suserpass = users.get(snome); if (suserpass.equals(ssenha)) sstatus = snome + " - ACESSO AUTORIZADO! Seja bem-vindo"; else sstatus = "ACESSO NÃO AUTORIZADO!"; //continua 114 Servet Básico Exemplo 3 Passagem de Parâmetros Login //resposta response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<head>"); out.println("<title> :) Login no Sistema ---- </title>"); out.println("</head>"); out.println("<body bgcolor=\"green\">"); out.println("<h1>"); out.println("uso de Forms HTML em um Servlet!"); out.println("login RESULTADO" + sstatus); out.println("</h1>"); out.println("</body>"); out.println("</html>");

24 Servet Básico Exemplo 3 Passagem de Parâmetros Login O Servlet pode ser chamado utilizando o seguinte formulário HTML <html> <head> <title>formulário de Login</title> </head> <body> <h1> Bem vindo à Página de Login... </h1> <form action="login" method="post"> <h2>digite Seu Nome</h2> <input type="text" name="nome"> <h2>digite Sua senha</h2> <input type="text" name="senha"> <input type="submit" value="&entrar no site"> </form> </body> </html> Os parâmetros "nome" e "senha" são obtidos no form e enviado no pedido (request) para o servidor 116 Servlets Classes API Visão Geral host Browser Web Container (Tomcat) MyWebApplication RequestDispatcher HttpServletRequest <web-app> ServletContext Request HttpServletResponse <context-param> </context-param> <servlet> ServletConfig Response HttpServletResponse HttpSession MyServletClass HttpServlet OtherServletClass <servlet-name>serv1 </servlet-name> <servlet-class>com.serv1servlet </servlet-class> <init-param> <param-name>name </param-name> <param-value>value </param-value> </init-param> </servlet> <servlet> ServletConfig </servlet> </web-app> OtherWebApplication

25 ServletContext Esta classe representa o contexto da aplicação ou seja o contêiner de um Servlet Através desta classe o Servlet pode obter parâmetros comuns existentes no arquivo WEB.XML; obter acesso ao arquivo de log da aplicação e ainda redirecionar pedidos Existe uma única instância deste objeto em cada aplicação Web. A aplicação Web pode conter vários Servlets e todos compartilham o mesmo contexto. Cada Servlet possui associado um objeto da classe ServletConfig que representa configurações particulares deste Servlet Estas configurações são expressas no element <servlet> do arquivo web.xml 118 Passagem de Parâmetros de Configuração Context-Param O elemento context-param permite o uso parâmetros de inicialização para todo o sistema A partir de qualquer servlet ou página JSP é possível obter seus valores através do método getinitparameter da classe ServletContext O elemento contém dois elementos filhos que contém o nome do parâmetro (param-name) e o valor do parâmetro (param-value) O parâmetro sempre é obtido como String <web-app> <context-param> <param-name>webmaster- </param-name> <param-value>webmaster@empresa.com.br</param-value> </context-param> </web-app>

26 ServletContext Métodos Principais Representa o contexto da aplicação Caminho físico de arquivos; web.xml O objeto ServletContext poder ser obtido com o seguinte método da classe HttpServlet public ServletContext getservletcontext() public java.lang.string getinitparameter(java.lang.string name) Este método permite obter o valor de parâmetros existentes no arquivo WEB.XML Para isto é necessário informar o nome do parâmetro (name) Um exemplo de parâmetros é uma string que contém o nome do banco de dados public RequestDispatcher getrequestdispatcher(java.lang.string path) O RequestDispatcher é um objeto que recebe pedido do cliente e envia este pedido para qualquer recurso de uma aplicação web existente no servidor, como por exemplo, um Servlet, um arquivo HTML ou um JSP Para obter este objeto é necessário informar o caminho (path) do recurso RequestDispatcher rd = request.getrequestdispatcher("/catalogview.jsp") 120 HttpSession O protocolo HTTP é stateless, ou seja, um conjunto request/response independe de outro Normalmente é necessário implementar na aplicação do conceito de sessão onde um conjunto de diferentes request/reponse estão ligados entre si Exemplo: Aplicação bancária agência e conta são informadas apenas no primeiro request, porém é compartilhada por todos os outros request/response Classe Implementa o conceito de sessão Métodos principais Object getattribute(string name) void setattribute(string name, Object value) void invalidate() void setmaxinactiveinterval(int interval) boolean isnew()

27 Servlets Classes API Visão Geral host Browser Web Container (Tomcat) MyWebApplication RequestDispatcher <web-app> HttpServletRequest ServletContext Request HttpServletResponse <context-param> </context-param> <servlet> ServletConfig Response HttpServletResponse MyServletClass HttpServlet <servlet-name>serv1 </servlet-name> <servlet-class>com.serv1servlet </servlet-class> OtherServletClass <init-param> <param-name>name </param-name> HttpSession <param-value>value </param-value> </init-param> </servlet> <servlet> ServletConfig </servlet> </web-app> OtherWebApplication 122 Armazenamento e Recuperação de Informações (Objetos) É possível armazenar e recuperar informações em tempo de execução de um servlet Desta forma é possível o intercambio de informações entre diferentes servlets Armazenar Objeto void setattribute(string name, Object object) Recuperar Objeto Object getattribute(string name)

28 Armazenamento e Recuperação de Informações (Objetos) O objeto armazenado pode estar em diferentes escopos, conforme sua necessidade Nível Aplicação Classe: ServletContext Objeto armazenado está disponível para todos os servlets daquele contexto, todas as sessões existentes e qualquer pedido ou resposta Durante toda a execução da aplicação Nível Sessão Classe: HttpSession Objeto armazenado esteja disponível para todos os servlets de uma única sessão Duração equivalente à Sessão Nível Pedido HttpServletRequest Objeto armazenado pode ser enviado para outro servlet através do RequestDispatcher Duração do pedido 124 Servlets Encaminhamento de Pedido Uma operação comum entre vários servlets é o encaminhamento do pedido (request) Para isto é utilizado a classe RequestDispatcher Este objeto pode ser obtido tanto a partir do contexto da aplicação (ServletContext) quanto de um pedido (HttpServletRequest) O código abaixo mostra como encaminhar o pedido uma página de erro (/errorpage) que neste caso pode ser tratado por outro servlet 1. RequestDispatcher rd; 2. rd = request.getrequestdispatcher("/errorpage"); //Encaminhar request e response para outro servlet 3. rd.forward(request, response);

29 Exemplo Realização Login Web Browser index.html ErrorPage (html) HomePage (html) request response response <!-- index.html --> <html> <body> <h1>bem vindo à Página de Login...</h1> <form action="login" method="post"> Digite Seu Nome <input type="text" name="user"> Digite Sua senha <input type="text" name="password"> <input type="submit" value="entrar"> </form> </body> </html> Web Container (Tomcat) LoginServlet LoginErrorServlet AppServlet <!-- version > <web-app> <servlet> <servlet-name>loginservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.loginservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>loginservlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping> <servlet> <servlet-name>appservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.appservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>appservlet</servlet-name> <url-pattern>/apphome</url-pattern> </servlet-mapping> <servlet> <servlet-name>erroservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.loginerrorservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>erroservlet</servlet-name> <url-pattern>/error</url-pattern> </servlet-mapping> </web-app> 126 Exemplo Login Encaminhamento Pedido

30 Armazenamento e Recuperação de Informações Contexto Aplicação (ServletContext) 1. public class LoginStaticServlet extends HttpServlet { 2. public void init(servletconfig config) throws ServletException { 3. super.init(config); 4. ServletContext context = config.getservletcontext(); 5. context.setattribute("logincounter",new Integer(0)); protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { 8. // String loginreceived = request.getparameter("user"); 10. String password = request.getparameter("password"); 11. ServletContext context = this.getservletcontext(); 12. retorno = service.dologin(loginreceived, password); 13. if (retorno){ 14. //login com sucesso 15. Integer logincounter; 16. logincounter = (Integer) context.getattribute("logincounter"); 17. //A cada login com sucesso o contador é acrescido de um 18. logincounter = logincounter + 1; 19. context.setattribute("logincounter", logincounter); Armazenamento de Informações Contexto da Sessão 1. public class LoginStaticServlet extends HttpServlet { 2. protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { 3. // retorno = service.dologin(loginreceived, password); 5. if (retorno){ 6. //login com sucesso 7. // //Cria a sessão usuário, caso a mesma não exista 9. HttpSession session = request.getsession(true); 10. //Armazena o nome do usuário na sessão 11. session.setattribute("user", loginreceived); 12. // //Encaminha pedido para o AppServerlet 14. RequestDispatcher rd; 15. rd = request.getrequestdispatcher("/apphome"); 16. rd.forward(request, response);

31 Recuperação de Informações Contexto da Aplicação e Sessão 1. public class AppServlet extends HttpServlet { 2. protected void dopost(httpservletrequest request, HttpServletResponse 3. response) throws ServletException, IOException { 4. //recupera o contexto da aplicação e o valor dos atributos 5. ServletContext context = this.getservletcontext(); 6. Integer logcounter = (Integer) context.getattribute("logincounter"); 7. //Obtem o nome do usuario que realizou o login 8. HttpSession session = request.getsession(); 9. String sloginname = (String) session.getattribute("user"); 10. response.setcontenttype("text/html"); 11. PrintWriter out = response.getwriter(); 12. out.println("<html>"); 13. out.println("<head>"); 14. out.println("<title>apphome</title>"); 15. out.println("</head>"); 16. out.println("<body>"); 17. out.println("bem Vindo " + sloginname); 18. out.println("<h3>sistema acessado "+ logcounter.tostring()+ " vezes"); 19. out.println("</body>"); 20. out.println("</html>"); Servlet Papéis No geral os servlets os servlets estão relacionados com dois papéis básicos Controle Neste caso o servlet não é responsável pela produção de conteúdo Obtém informações de parâmetros Realiza operações invocando serviços de outras classes Obtém dados enviados pelo Navegador (Parâmetros) Armazena dados no contexto da aplicação, da sessão ou do pedido ServletContext; HttpSession e HttpServletRequest Encaminha pedido para outros servlets RequestDispatcher Exemplo Anterior: LoginServlet Conteúdo Responsável pela produção de conteúdo Servlet que efetivamente produz o código HTML Devolve a resposta para o cliente Obtém dados armazenados no contexto da aplicação, da sessão ou do pedido Exemplo Anterior: AppServlet e LoginErrorServlet

32 Arquitetura MVC para WEB No caso da abordagem WEB existem algumas particularidades, então o padrão ficou conhecido como "Model 2" Esta particularidade acontece pois o browser não é necessariamente a parte VIEW do modelo pois o mesmo simplesmente mostra um código HTML Desta forma o código mostrado no browser está desacoplado, pois precisa ser traduzido para o HMTL antes de ser visualizado. 132 Model 1 x Model 2 Model 1 Primeiro modelo disponível para o desenvolvimento de aplicações WEB Elementos: Browser; Servlets/Páginas JSP e um Banco de dados Neste modelo pode ocorrer duplicação de código As regras de negócio e a Apresentação dos dados estão combinadas em um único elemento, dificultando modificações e manutenções

33 Model 1 x Model 2 Model 2 Segundo modelo disponível para o desenvolvimento de aplicações WEB Baseado no modelo MVC (Model View Controller) Elementos: Browser; Controller (Servlets); View(Servlets ou Páginas JSP); Model(Outras classes) e um Banco de dados Elementos separados e responsabilidades bem definidas Facilita a reutilização de código e futuras modificações Permite o uso de múltiplos Banco de Dados e Clientes 134 Arquitetura MODEL 2 1. O usuário envia o pedido que é recebido por um servlet de controle (Controller) 2. O servlet instância um ou mais JavaBeans (Classes Java) para realizar o serviço 3. Classes (JavaBeans) eventualmente comunicam-se com o Banco de Dados 4. O Servlet de Controle recebe a resposta do Model e adiciona informações no pedido, sessão ou contexto da aplicação 5. Servlet de controle encaminha o pedido (request) e a reposta (response) 6. Servlet de conteúdo finalmente extrai os dados e produz a resposta HTML e finalmente envia o resultado (response)

34 Exemplo - Realização Login Separando Controle e Conteúdo Web Browser index.html ErrorPage (html) HomePage (html) request response response <!-- index.html --> <html> <body> <h1>bem vindo à Página de Login...</h1> <form action="login" method="post"> Digite Seu Nome <input type="text" name="user"> Digite Sua senha <input type="text" name="password"> <input type="submit" value="entrar"> </form> </body> </html> Web Container (Tomcat) LoginServlet LoginErrorServlet AppServlet <!-- version > <web-app> <servlet> <servlet-name>loginservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.loginservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>loginservlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping> <servlet> <servlet-name>appservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.appservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>appservlet</servlet-name> <url-pattern>/apphome</url-pattern> </servlet-mapping> <servlet> <servlet-name>erroservlet</servlet-name> <servlet-class> br.ufu.facom.pi.servlets.loginerrorservlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>erroservlet</servlet-name> <url-pattern>/error</url-pattern> </servlet-mapping> </web-app> 136 Model 1 x Model 2 Exemplo 3 x Exemplo

35 Exemplo 4 LoginServlet Servlet de Controle init() package br.ufu.facom.pi.servlets; import java.io.*; import java.util.hashmap; import javax.servlet.*; import javax.servlet.http.*; public class LoginServlet extends HttpServlet { public void init(servletconfig config) throws ServletException { super.init(config); //Para definir os usuários e suas senha será criado um HashMap com estas informações //Este mapa contém o nome do usuário e sua senha //Neste caso o mapa será inicializado uma única vez HashMap<String,String> users = new HashMap(); users.put("flavio", "123"); users.put("mateus", "456"); ServletContext context = config.getservletcontext(); context.setattribute("users", users); //Neste caso tanto doget como dopost executarão as mesmas operações protected void dopost(httpservletrequest arg0, HttpServletResponse arg1) throws ServletException, IOException { this.doget(arg0,arg1); //continua Exemplo 4 LoginServlet Servlet de Controle doget() protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String snome = (String) request.getparameter("nome"); String ssenha = (String) request.getparameter("senha"); HashMap<String,String> users; ServletContext context = this.getservletcontext(); users = (HashMap<String,String>) context.getattribute("users"); //invoca serviço LoginService service = new LoginService(); int iretorno = service.dologin(snome, ssenha, users); String sstatus, snextservlet("/error"); if (iretorno == 0) { sstatus = "ACESSO AUTORIZADO! Seja bem-vindo"; HttpSession session = request.getsession(true); session.setattribute("user",snome); //salva nome do usuário na sessão snextservlet = "/apphome"; else if (iretorno == 1) { sstatus = "USUÁRIO NÃO CADASTRADO!"; else { sstatus = "ACESSO NÃO AUTORIZADO!"; request.setattribute("status", sstatus); //salva status no nível do pedido

36 Exemplo 4 LoginServlet Servlet de Controle doget() //Encaminha pedido para o Servlet de conteúdo de acordo com a variável snextservlet RequestDispatcher rd; rd = request.getrequestdispatcher(snextservlet); rd.forward(request, response); 140 Exemplo 4 LoginService Classe de Serviço (Model) public class LoginService { public int dologin(string snome, String ssenha, HashMap<String,String>) { //Neste exemplo, a fim simplificar será feita uma busca em um //HashMap de usuarios e senhas. Neste mapa será fácil executar a a pesquisa int iretorno; if (!users.containskey(snome)) { iretorno = 1; //usuário não cadastrado else { //Verifica se a senha está correta String suserpass = users.get(snome); if (suserpass.equals(ssenha)) iretorno = 0; //senha do usuário cadastrado else iretorno = 2; //senha incorreta - usuário não autorizado

37 AppServlet Exemplo 4 Servlet de Conteúdo package br.ufu.facom.pi.servlets; //imports... public class AppServlet extends HttpServlet { protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String sstatus = (String)request.getAttribute("STATUS"); HttpSession session = request.getsession(); String suser = session.getattribute("user"); //ajuste do tipo de resposta response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<head>"); out.println("<title>apphome</title>"); out.println("</head>"); out.println("<body>"); out.println("bem Vindo " + suser); out.println("<p>status:" + sstatus); out.println("</body>"); out.println("</html>"); 142 Exemplo 4 LoginErrorServlet Servlet de Conteúdo package br.ufu.facom.pi.servlets; //imports public class LoginErrorServlet extends HttpServlet { protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String sstatus = (String)request.getAttribute("STATUS"); //ajuste do tipo de resposta response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<head>"); out.println("<title>apphome Página de Erro</title>"); out.println("</head>"); out.println("<body>"); out.println("<p>status:" + sstatus); out.println("</body>"); out.println("</html>");

38 Aplicação Exemplo Fluxo entre páginas

Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition

Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition Java Plataformas A tecnologia Java está dividida em plataformas. Cada plataforma oferece um conjunto de funcionalidades para o desenvolvimento de diferentes tipos de aplicações Existem três plataformas

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 Servlets Servlet Aplicação Java que é executada no servidor que estende a capacidade do servidor Web Alternativa Java para os scripts CGI Gerenciado

Leia mais

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim Introdução Servlet Ciclo Vida Exemplos Servlet Prof. Enzo Seraphim Visão Geral São objetos de uma subclasse de javax.servlet (javax.servlet.httpservlet). Possuem um ciclo de vida. Incluem em seu código,

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para

Leia mais

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API Programação Na Web Servlets: Como usar as Servlets 1 António Gonçalves Agenda Template genérico para criar Servlets Servlet 2.4 API Exemplo: Hello World Output: Texto, HTML e hora local. Compilar uma Servlets

Leia mais

Java para WEB. Servlets

Java para WEB. Servlets Servlets Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP. Servlets é a segunda forma que veremos

Leia mais

Java na WEB Servlet. Sumário

Java na WEB Servlet. Sumário 1 Java na WEB Servlet Objetivo: Ao final da aula o aluno será capaz de: Utilizar Servlets para gerar páginas web dinâmicas. Utilizar Servlets para selecionar páginas JSPs. Utilizar Servlets como elemento

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

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais Curso de Java Geração de Páginas WEB Aplicação WEB Numa aplicação WEB de conteúdo dinâmico As páginas são construídas a partir de dados da aplicação (mantidos num banco de dados). Usuários interagem com

Leia mais

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr J2EE Exemplo completo Utilização Servlet Instrutor HEngholmJr Page 1 of 9 AT09 Exemplo complete Utilização Servlet Version 1.1 December 5, 2014 Indice 1. BASEADO NOS EXEMPLOS DE CÓDIGO DESTA APOSTILA,

Leia mais

Fundamentos de Servlets. Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets

Fundamentos de Servlets. Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets Fundamentos de Servlets Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets Common Gateway Interface Aplicações Geração de documentos com conteúdo dinâmico Produzir resultados em

Leia mais

Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition

Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition Java Plataformas A tecnologia Java está dividida em plataformas. Cada plataforma oferece um conjunto de funcionalidades para o desenvolvimento de diferentes tipos de aplicações Existem três plataformas

Leia mais

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2 Java Server Pages Arquitectura de uma aplicação distribuída em Internet Figura 1 Modelo 2 A implementação desta arquitectura, com um controlador que direcciona a execução de s, de Servlets e de JavaBeans,

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

Programação II Programação para a Web. Christopher Burrows

Programação II Programação para a Web. Christopher Burrows Programação II Programação para a Web Christopher Burrows Apache Tomcat O Apache Tomcat é um Servlet Container desenvolvido pela Apache Software Foundation. Implementa as tecnologias Java Servlets e Java

Leia mais

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Arquiteturas de Aplicações Web Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aplicações Convencionais vs. Web Aplicações convencionais Escritas usando uma linguagem de programação (ex.: Java) Sites de

Leia mais

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Arquitetura de Aplicações Distribuídas na Web Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Web Container: e JSP Sumário Protocolo HTTP Exemplos de JSP (Java Server Pages) Exemplos JSP 2 Protocolo HTTP URL: Um URL (Uniform

Leia mais

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Agenda 1. 2. Web Container TomCat 2 3 J2EE permite criar aplicações Web dinâmicas (com conteúdo dinâmico)

Leia mais

Prof. Roberto Desenvolvimento Web Avançado

Prof. Roberto Desenvolvimento Web Avançado Resposta exercício 1: Configuração arquivo web.xml helloservlet br.com.exercicios.helloservlet

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

Jsp, Servlets e J2EE

Jsp, Servlets e J2EE Jsp, Servlets e J2EE André Temple CPqD Telecom & IT Solutions. Rodrigo Fernandes de Mello Departamento de Ciências da Computação Instituto de Ciências Matemáticas e de Computação. Universidade de São Paulo

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo JavaServer Pages (JSP) Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Introdução a Servlets e JSP. Prof. Samuel Martins samuellunamartins at gmail dot com Faculdade São Miguel

Introdução a Servlets e JSP. Prof. Samuel Martins samuellunamartins at gmail dot com Faculdade São Miguel Introdução a Servlets e JSP samuellunamartins at gmail dot com Conteúdo da aula Introdução a HTML Introdução a Servlets Preparando o ambiente de programação Exemplo de Servlets 2 Websites na década de

Leia mais

UNIDADE II JAVA SERVLETS

UNIDADE II JAVA SERVLETS UNIDADE II JAVA SERVLETS INTERNET É uma rede de redes, reunindo computadores do Governo, de universidades e empresas fornecendo infra-estrutura para uso de bancos de dados, correio eletrônico, servidores

Leia mais

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web: Web Browser como o processo cliente Servidor web com páginas estáticas Vs Aplicações dinâmicas para a Web: 1 Cliente Web browser HTTP porto 80 Servidor web... JDBC RMI XML... Base de Dados Aplicação em

Leia mais

Programação para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://professor.fimes.edu.br/fernando nando@fimes.edu.br Prof. Fernando 1 Ementa Instalação e configuração básica do NetBeans e

Leia mais

!" # # # $ %!" " & ' ( 2

! # # # $ %!  & ' ( 2 !"# # #$ %!" "& ' ( 2 ) *+, - 3 . / 4 !" 0( # "!#. %! $""! # " #.- $ 111.&( ( 5 # # 0. " % * $(, 2 % $.& " 6 # #$ %% Modelo (Encapsula o estado da aplicação) Implementado como JavaBeans Responde a consulta

Leia mais

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Java Servlets Leonardo Gresta Paulino Murta leomurta@ic.uff.br Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação Java

Leia mais

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão Programação Na Web Sessão II António Gonçalves Índice Visão geral da API Sessão Obter dados sobre uma sessão Extrair informação sobre uma Sessão Adicionar Dados a uma sessão 1 Programação Na Web Motivação

Leia mais

Tecnologias para Web

Tecnologias para Web Tecnologias para Web Carlos Lucena lucena@inf.puc-rio.br Vitor Pellegrino vitorp@gmail.com Cidiane Lobato cidianelobato@yahoo.com.br Andrew Diniz andrew@les.inf.puc-rio.br Agenda Servlets MVC JSP Taglibs

Leia mais

Relatório referente a compreensão da programação JSP. Realizado do dia de 22 abril de 2010 a 03 de maio de 2010.

Relatório referente a compreensão da programação JSP. Realizado do dia de 22 abril de 2010 a 03 de maio de 2010. Relatório do GPES Relatório referente a compreensão da programação JSP. Realizado do dia de 22 abril de 2010 a 03 de maio de 2010. Compreender a programação JSP. Os Servlets assim como JSP são tecnologias

Leia mais

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

Autenticação e Autorização

Autenticação e Autorização Autenticação e Autorização Introdução A segurança em aplicações corporativas está relacionada a diversos aspectos, tais como: autenticação, autorização e auditoria. A autenticação identifica quem acessa

Leia mais

Programação Web Aula 12 - Java Web Software

Programação Web Aula 12 - Java Web Software Programação Web Aula 12 - Java Web Software Bruno Müller Junior Departamento de Informática UFPR 25 de Maio de 2015 1 Java 2 Java Web Software 3 Servlets Modelo de Trabalho Funcionamento API Java Código

Leia mais

UNIDADE III JAVA SERVER PAGES

UNIDADE III JAVA SERVER PAGES UNIDADE III JAVA SERVER PAGES MODELO JSP Um dos principais objetivos da tecnologia J2EE é fazer com que as tarefas sejam realizadas de forma separada. Eliminando as dependências, componentes J2EE tornam-se

Leia mais

Tecnologias Web. Java Servlets

Tecnologias Web. Java Servlets Tecnologias Web Java Servlets Cristiano Lehrer, M.Sc. O que são Servlets Extensões do servidor escritas em Java: Podem ser usados para estender qualquer tipo de aplicação do modelo requisição/resposta.

Leia mais

Executando comandos do Sistema Operacional em uma aplicação WEB Java

Executando comandos do Sistema Operacional em uma aplicação WEB Java Executando comandos do Sistema Operacional em uma aplicação WEB Java Criei uma aplicação muito simples que demonstra como um Servlet pode invocar uma classe que efetua um comando qualquer no sistema operacional.

Leia mais

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha Desenvolvimento WEB II Professora: Kelly de Paula Cunha O Java EE (Java Enterprise Edition): série de especificações detalhadas, dando uma receita de como deve ser implementado um software que utiliza

Leia mais

Prática Sobre Servlets e JSP

Prática Sobre Servlets e JSP Prática Sobre Servlets e JSP 1. Localize a pasta do Tomcat (TOMCAT_HOME); 2. Acesse a pasta bin e execute tomcat5w.exe; 3. Abra o Navegador e acesse http://localhost:8080 (A apresentação de uma página

Leia mais

Servlets. João Carlos Pinheiro. Julho / 2005

Servlets. João Carlos Pinheiro. Julho / 2005 Servlets João Carlos Pinheiro Julho / 2005 1 Objetivos Apresentar Os benefícios de servlets A arquitetura de aplicativo servlet Como funciona um Servlet Os pacotes javax.servlet e javax.servlet.http Como

Leia mais

Desenvolvimento de aplicações Web. Java Server Pages

Desenvolvimento de aplicações Web. Java Server Pages Desenvolvimento de aplicações Web Java Server Pages Hamilton Lima - athanazio@pobox.com 2003 Como funciona? Servidor web 2 Internet 1 Browser 3 Arquivo jsp 4 JSP Compilado 2 Passo a passo 1 browser envia

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

Prova Específica Cargo Desenvolvimento

Prova Específica Cargo Desenvolvimento UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br

Leia mais

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Resumo Neste tutorial serão apresentados conceitos relacionados a Servlets. Ele inicial como uma breve introdução do funcionamento

Leia mais

Aula 4. Objetivos. Conteúdo dinâmico na internet.

Aula 4. Objetivos. Conteúdo dinâmico na internet. Aula 4 Objetivos Conteúdo dinâmico na internet. Para uma solicitação da Web mais simples, um navegador solicita um documento HTML e o servidor Web encontra o arquivo correspondente e devolve. Se o documento

Leia mais

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets Programação Web Professor: Diego Oliveira Conteúdo 02: JSP e Servlets JSP JSP é um template de uma página Web que usa Java para gerar HTML dinamicamente JSP é considerado server-side e roda em um objeto

Leia mais

Sessões. Cookies HTTP Sessões Atributos de sessão

Sessões. Cookies HTTP Sessões Atributos de sessão Sessões Cookies HTTP Sessões Atributos de sessão O problema O protocolo HTTP não mantém estado entre transações distintas Ao término do atendimento da requisição, a conexão TCP é fechada pelo servidor

Leia mais

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Especificação para os Portlets Os padrões para Portlets Java EE são definidos por duas JSRs: 168,

Leia mais

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Extensão de servidor escrita em Java Podem ser usados para estender qualquer tipo de aplicação do modelo requisição- resposta Todo servlet implementa a

Leia mais

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

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCE-557 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

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

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala Programação para a Internet Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala A plataforma WEB Baseada em HTTP (RFC 2068) Protocolo simples de transferência de arquivos Sem estado

Leia mais

Desenvolvimento Web com JSP/Servlets

Desenvolvimento Web com JSP/Servlets Desenvolvimento Web com JSP/Servlets Requisitos Linguagem Java; Linguagem SQL; Noções de HTML; Noções de CSS; Noções de Javascript; Configuração do ambiente JDK APACHE TOMCAT MySQL Instalando o JDK Instalando

Leia mais

20/08/14 JAVA SERVLETS CONCEITOS CONTEÚDO ARQUITETURA DE UMA APLICAÇÃO WEB ARQUITETURA DA APLICAÇÃO WEB

20/08/14 JAVA SERVLETS CONCEITOS CONTEÚDO ARQUITETURA DE UMA APLICAÇÃO WEB ARQUITETURA DA APLICAÇÃO WEB CONTEÚDO TECNOLOGIA EM INFORMÁTICA PARA NEGÓCIOS JAVA CONCEITOS Prof. Dr. Henrique Dezani dezani@fatecriopreto.edu.br Arquitetura de uma aplicação Web HTTP (HyperText Transfer Protocol) Métodos HTTP GET

Leia mais

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br J550 Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 O que são Filtros Um filtro éum componente Web que reside no servidor Intercepta as requisições e respostas no seu caminho até o servlet e de

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 6 EJB Enterprise Java

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

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 Por quê JSP? Com Servlets é fácil Ler dados de um formulário Recuperar dados de uma requisição Gerar informação de resposta Fazer gerenciamento

Leia mais

JSP (Java Server Pages)

JSP (Java Server Pages) JSP (Java Server Pages) Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior 1 Introdução Tecnologia para desenvolvimento de aplicações WEB fundamentada na

Leia mais

Programação Web com Jsp, Servlets e J2EE

Programação Web com Jsp, Servlets e J2EE Programação Web com Jsp, Servlets e J2EE André Temple CPqD Telecom & IT Solutions. Rodrigo Fernandes de Mello Departamento de Ciências da Computação Instituto de Ciências Matemáticas e de Computação. Universidade

Leia mais

HTML Básico Formulários. Matheus Meira

HTML Básico Formulários. Matheus Meira HTML Básico Formulários Matheus Meira 1 Objetivos Neste apresentação conheceremos os fundamentos básicos de HTML para a manipulação com servlets e jsp. Serão vistos Formulários Links Elementos de disparo

Leia mais

Faculdade de Computação Programação para Internet Trabalho Servlets

Faculdade de Computação Programação para Internet Trabalho Servlets Faculdade de Computação Programação para Internet Trabalho Servlets Prof. Flávio de Oliveira Silva, M.SC. 1. Casos de Uso A aplicação consiste dos casos de uso mostrados na Figura 1: uc Contacts Application

Leia mais

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr.

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr. Introdução à Plataforma J2EE Java2 Enterprise Edition 1 O que é a plataforma J2EE? Estende a linguagem Java através de padrões simples e unificados para aplicações distribuídas através de um modelo baseado

Leia mais

J2EE TM Java 2 Plataform, Enterprise Edition

J2EE TM Java 2 Plataform, Enterprise Edition CURSO DE GRADUAÇÃO J2EE TM Java 2 Plataform, Enterprise Edition Antonio Benedito Coimbra Sampaio Junior abc@unama.br OBJETIVOS DO CURSO Capacitar os alunos no desenvolvimento de aplicações para a WEB com

Leia mais

Gerador de código JSP baseado em projeto de banco de dados MySQL

Gerador de código JSP baseado em projeto de banco de dados MySQL Gerador de código JSP baseado em projeto de banco de dados MySQL Juliane Menin Orientanda Prof. Alexander Roberto Valdameri Orientador Roteiro Introdução e Objetivos Fundamentação Teórica Especificação

Leia mais

Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE

Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE Padrões de Projeto J2EE J931 Introdução Helder da Rocha (helder@acm.org) argonavis.com.br Objetivos de aprender padrões J2EE Conhecer padrões para uso na plataforma J2EE Padrões permitem maior reuso, menos

Leia mais

Alfamídia Programação: Java Web

Alfamídia Programação: Java Web 1 Todos os direitos reservados para Alfamídia Prow AVISO DE RESPONSABILIDADE As informações contidas neste material de treinamento são distribuídas NO ESTADO EM QUE SE ENCONTRAM, sem qualquer garantia,

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

Web. Professor: Rodrigo Alves Sarmento rsarmento@catolica-es.edu.br rasarmento@gmail.com

Web. Professor: Rodrigo Alves Sarmento rsarmento@catolica-es.edu.br rasarmento@gmail.com Web Professor: Rodrigo Alves Sarmento rsarmento@catolica-es.edu.br rasarmento@gmail.com Objetivos O que é uma aplicação Web? Web x Stand-Alone Web x Cliente Servidor Tradicional Tipos de Aplicação Dois

Leia mais

Servlets & JSP. Prof. Ramon Chiara

Servlets & JSP. Prof. Ramon Chiara Servlets & JSP Prof. Ramon Chiara Java JSE Java Standard Edition JME Java Micro Edition JEE Jave Enterprise Edition Java JSE Java Standard Edition JME Java Micro Edition JEE Jave Enterprise Edition Web

Leia mais

FRAMEWORKS PARA O DESENVOLVIMENTO WEB

FRAMEWORKS PARA O DESENVOLVIMENTO WEB Guilherme Augusto Peron Borges 0402028-8 Semestre FRAMEWORKS PARA O DESENVOLVIMENTO WEB Jaguariúna 2007 Guilherme Augusto Peron Borges 0402028-8 Semestre FRAMEWORKS PARA O DESENVOLVIMENTO WEB Monografia

Leia mais

Laboratórios 5, 6, 7 - Servlets

Laboratórios 5, 6, 7 - Servlets Laboratórios 5, 6, 7 - Servlets Introdução Como já deverão ter noção, uma Servlet é uma classe Java utilizada para estender as capacidades dos servidores web, utilizando para tal um modelo de pedido-resposta.

Leia mais

JSP e Servlet Princípio de MVC

JSP e Servlet Princípio de MVC UNIPÊ Centro Universitário de João Pessoa Desenvolvimento para Web HTTP e Servlets JSP e Servlet Princípio de MVC ducaribas@gmail.com 1 12 JSP e Servlets Desvantagens de JSP e Servlets Servlets Escrever

Leia mais

INTRODUÇÃO À TECNOLOGIA SERVLETS

INTRODUÇÃO À TECNOLOGIA SERVLETS PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores

Leia mais

Java Enterprise Edition. by Antonio Rodrigues Carvalho Neto

Java Enterprise Edition. by Antonio Rodrigues Carvalho Neto Java Enterprise Edition by Antonio Rodrigues Carvalho Neto Enterprise Edition Architecture O que é Java Enterprise Edition? Java EE é uma plataforma que reune diversas especificações relacionadas a computação

Leia mais

programação de páginas de conteúdo dinâmico

programação de páginas de conteúdo dinâmico Programação para a Internet II 1. Conceitos base de programação de páginas de conteúdo dinâmico Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt A internet tal como a vimos até este momento As nossas

Leia mais

J2EE. Projeto de Sistemas de Software

J2EE. Projeto de Sistemas de Software J2EE Projeto de Sistemas de Software Agenda Visão geral da Arquitetura J2EE Servlets Boas Práticas JSP Laboratório de Engenharia de Software PUC-Rio 2 J2EE (Java 2 Enterprise Edition) Plataforma de Tecnologias

Leia mais

J2EE. J2EE - Surgimento

J2EE. J2EE - Surgimento J2EE Java 2 Enterprise Edition Objetivo: Definir uma plataforma padrão para aplicações distribuídas Simplificar o desenvolvimento de um modelo de aplicações baseadas em componentes J2EE - Surgimento Início:

Leia mais

Oracle WebLogic Server 11g: Conceitos Básicos de Administração

Oracle WebLogic Server 11g: Conceitos Básicos de Administração Oracle University Entre em contato: 0800 891 6502 Oracle WebLogic Server 11g: Conceitos Básicos de Administração Duração: 5 Dias Objetivos do Curso Este curso treina administradores Web nas técnicas para

Leia mais

Programação para Internet

Programação para Internet flavio@facom.ufu.br 1 Objetivos Fornecer uma visão geral do funcionamento de sistemas na Web e os protocolos envolvidos Introduzir o paradigma da programação para a Internet Conceituar as arquiteturas

Leia mais

Desenvolvimento de Sistemas Corporativos Aula 1.5 Introdução a Servlets. Prof. Bruno Moreno

Desenvolvimento de Sistemas Corporativos Aula 1.5 Introdução a Servlets. Prof. Bruno Moreno Desenvolvimento de Sistemas Corporativos Aula 1.5 Introdução a Servlets Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Configurando o Ambiente Ambiente de Programação IDE: Eclipse Servidor de aplicação: Tomcat

Leia mais

Programação na Web. Servlets Leitura dos Parâmetros e Cabeçahos

Programação na Web. Servlets Leitura dos Parâmetros e Cabeçahos Programação na Web Servlets Leitura dos Parâmetros e Cabeçahos 1 Criar um Formulário HTML Fórmulário: GetForm.html A Sample

Leia mais

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul JSF e PrimeFaces Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Introdução Desenvolvimento Web Java Server Faces Exercício 2 Introdução Ao longo dos anos diversas linguagens de programação foram

Leia mais

Servlets e Applets, funcionamento e comparativo.

Servlets e Applets, funcionamento e comparativo. Servlets e Applets, funcionamento e comparativo. Airon Rabel Teixeira Rua Guarapuava Joinville SC airon@ymail.com Resumo: Este artigo explica de maneira breve o funcionamento de servlets e applets, mostrando

Leia mais

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL Sistemas Distribuídos na Web Pedro Ferreira DI - FCUL Arquitetura da Web Criada por Tim Berners-Lee no CERN de Geneva Propósito: partilha de documentos Desde 1994 mantida pelo World Wide Web Consortium

Leia mais

Servlets API. Aplicações web usando recursos da Servlets API no desenvolvimento de aplicações web. Professor J. c o l u n a

Servlets API. Aplicações web usando recursos da Servlets API no desenvolvimento de aplicações web. Professor J. c o l u n a c o l u n a Professor J Servlets API Aplicações web usando recursos da Servlets API no desenvolvimento de aplicações web Everton Coimbra de Araújo (everton@utfpr.edu.br): desde 1987 atua na área de treinamento

Leia mais

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza Formulários Em PHP Métodos GET e POST progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net Objetivos Entender o funcionamento

Leia mais

Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012. 1 Tecnologia WEB II Prof. Erwin Alexander Uhlmann Introdução ao PHP UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012. 2 Agradecimentos Agradeço à minha esposa Kátia por entender

Leia mais

Personal Home Page PHP. Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com

Personal Home Page PHP. Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com Personal Home Page PHP 1 O que é PHP? PHP (Personal Home Page) é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma interação com o usuário através de formulários, parâmetros da URL

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

Introdução a JavaServer Pages. Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web

Introdução a JavaServer Pages. Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web Introdução a JavaServer Pages Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web JavaServer Pages Problemas com Servlets: É improdutivo para gerar todo o conteúdo

Leia mais

Incorporando JavaScript em HTML

Incorporando JavaScript em HTML Incorporando JavaScript em HTML Existem quatro maneiras de incorporar JavaScript em HTML. Vamos abordar as três primeiras, por ser mais comum: Entre as tags dentro do código HTML. A partir

Leia mais

4 MODELAGEM DA APLICAÇÃO J2ME

4 MODELAGEM DA APLICAÇÃO J2ME 4 MODELAGEM DA APLICAÇÃO J2ME O Sistema de Apoio Policial tem como objetivo facilitar o trabalho da Polícia Militar. Utilizando tecnologias recentes descritas nos capítulos anteriores, este sistema propõe

Leia mais