Molhando os pés com Tapestry, parte 3

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

Download "Molhando os pés com Tapestry, parte 3"

Transcrição

1 Molhando os pés com Tapestry, parte 3 Daniel Fernandes Martins Se cansou de apenas ouvir falar sobre o framework Tapestry? Se sim, então veja por si só o que o Tapestry pode fazer por você! Sobre o tutorial Molhando os pés com Tapestry é um tutorial que apresenta, de uma forma clara e objetiva, informações sobre o como o framework Tapestry [1] pode nos ajudar a criar aplicações Java para web. Este tutorial está dividido em três partes que cobrem desde a montagem do ambiente de desenvolvimento até criação de pequenas aplicações web. Segue, em detalhes, o conteúdo deste tutorial: Configuração do NetBeans [2] para criação de aplicações Tapestry; Hello world utilizando o Tapestry; Aprendendo a submeter formulários; Aplicação de login; Aplicação completa, com internacionalização, validação (servidor e cliente) e lógica de negócio em EJB 3. O tutorial não cobre assuntos mais avançados, como criação de componentes e validadores customizados, mas se isso for de interesse, basta que o leitor busque as informações necessárias na página do projeto Tapestry. Este documento abordará o tópico destacado na lista mostrada a pouco. Sobre a aplicação Diferentemente dos dois primeiros tutoriais, vamos extrapolar um pouco os limites... a idéia aqui é criar uma aplicação de guestbook (livro de visitas) bem simples, composto de apenas duas páginas: a página principal e a página de cadastro de mensagens. A página principal servirá para mostrar a lista de todas as mensagens cadastradas, além de exibir um link que leva o usuário à página de cadastro de mensagens (Ilustração 1). A página de cadastro de mensagens abrigará o formulário de cadastro e um link para levar o usuário de volta à página principal, caso ele desista de cadastrar a mensagem. O 1

2 formulário será validado no lado do cliente, coisa bem simples de se fazer visto que já sabemos tudo (bem, quase tudo) sobre como funciona a validação de formulários no Tapestry (Ilustração 2). Ilustração 1: Esboço da página principal Aonde o extrapolar entra nessa história? É que vamos aproveitar a oportunidade para implementar a lógica de negócios com EJB 3. Portanto, é desejável (embora não seja obrigatório) que o leitor já possua algum conhecimento sobre EJBs, já que alguns procedimentos explicados aqui podem não fazer muito sentido para quem não está habituado. A aplicação utilizará o framework HiveMind [3] para implementar a integração da aplicação web com os componentes de EJBs. O HiveMind é um framework de injeção de dependências que já acompanha o Tapestry. Além disso, você aprenderá como (e porque) utilizar o Tapestry Flash [2], um plugin do Tapestry que implementa o escopo flash, bastante utilizado pelo pessoal do Ruby on Rails [REF 4]. Ilustração 2: Esboço da página de cadastro de mensagem 2

3 Bastante coisa para aprender, ãhn? Então seja bem vindo ao tutorial mais longo da série! : ) Criando o projeto Abra o NetBeans e acesse o menu File New Project. Selecione Enterprise Enterprise Application e pressione Next. Configure a janela conforme mostrado na Ilustração 3: Ilustração 3: Configurações do projeto Pressione Finish para concluir a criação do projeto. Criando o Entity Bean A aplicação utilizará apenas um Entity Bean, que representará as mensagens (Ilustração 4): 3

4 Ilustração 4: Entidade Message Então, para criar o Entity Bean, clique com o botão direito do mouse no projeto guestbook ejb e selecione a opção New File/Folder... Na janela que aparecer, escolha a opção Persistence Entity Class. No campo Class Name, digite Message. No campo Package, digite entity. O tipo da chave primária, que é representada pelo campo Primary Key Type, será Long (Ilustração 5). Ilustração 5: Entity Bean O NetBeans irá criar um Entity Bean. Altere o código para que ele fique de igual ao mostrado na Listagem 1: package entity; // public class Message implements Serializable { private Long id; private Calendar date = Calendar.getInstance(); private String name; private String ; private String comment; 4

5 public Long getid() { return this.id; public void setid(long id) { this.id = = TemporalType.TIMESTAMP) public Calendar getdate() { return date; public void setdate(calendar date) { this.date = date; public String getname() { return name; public void setname(string name) { this.name = name; public String get () { return ; public void set (string ) { this. = ; public String getcomment() { return comment; public void setcomment(string comment) { this.comment = comment; Listagem 1: Classe Message Explicar o funcionamento das especificações EJB e JPA está fora do escopo deste tutorial. Para mais detalhes sobre essas especificações, recorra aos diversos (e excelentes) tutoriais disponíveis na Internet. Criando o banco de dados Para economizarmos tempo, utilizaremos o banco de dados que é fornecido pelo servidor de aplicações da Sun por padrão: o Derby [4]. 5

6 Uma vez que o servidor de aplicações Sun Java System Application Server esteja devidamente instalado e configurado dentro do NetBeans, podemos criar o banco através do menu Tools Java DB Database Create Java DB Database... Na janela que aparecer, você deve entrar com as seguintes informações: Database Name: guestbook User Name: app Password: app Pressione OK e pronto. Em alguns segundos o banco de dados estará pronto para uso. Criando o Persistence Unit As configurações de persistência da nossa aplicação ainda não foram definidas por completo. Para concluirmos a configuração de persistência, abra o código do Entity Bean Message e note que o NetBeans está pedindo a criação de uma unidade de persistência (Persistence Unit): Ilustração 6: NetBeans pedindo a criação da unidade de persistência Para criar a unidade de persistência, mova o cursor de edição para o local sublinhado pelo editor e clique na lâmpada que aparecerá ao lado da selecionando a opção Create persistence unit..., conforme mostrado na Ilustração 6. Configure a unidade de persistência de acordo com a Ilustração 7: 6

7 Ilustração 7: Configuração da unidade de persistência Pronto! Agora a nossa aplicação está pronta para trabalhar com o banco de dados. Criando o Stateless Session Bean Criaremos agora um Stateless Session Bean, que irá conter os métodos necessários para possamos trabalhar com o banco de dados que criamos a pouco. Clique com o botão direito do mouse no projeto guestbook ejb e selecione a opção New New File/Folder... Selecione as opções Enterprise Session Bean e pressione Next. O nome do Session Bean deverá ser MessageManager, e este será um Session Bean do tipo Stateless. Deixe marcada a opção Local para o tipo de interface a ser gerada (Ilustração 8). 7

8 Ilustração 8: Criando o Stateless Session Bean Altere a interface MessageManagerLocal... package business; // public interface MessageManagerLocal { void save(message msg); List<Message> loadall(); Listagem 2: Interface MessageManagerLocal... e também a classe MessageManagerBean: package business; // public class MessageManagerBean implements MessageManagerLocal { /* Contêiner injeta o EntityManager automaticamente private EntityManager entitymanager; 8

9 public void save(message msg) { entitymanager.persist(msg); // Grava a mensagem public List<Message> loadall() { return entitymanager.createquery( "SELECT m FROM Message m ORDER BY m.date DESC" ).getresultlist(); // Seleciona todas as mensagens Listagem 3: Classe MessageManagerBean Fácil, não?! Com este bean já podemos cadastrar mensagens e recuperar a lista de mensagens registradas no sistema. Adicionando suporte ao Tapestry Precisamos adicionar o suporte ao Tapestry no módulo web da nossa aplicação (guestbook war). Para isso, clique com o botão direito no projeto guestbook war e vá em Properties. Selecione a opção Frameworks e pressione o botão Add... Selecione o framework Tapestry na lista e confirme. Configure de acordo com a Ilustração 9: Ilustração 9: Configuração do Tapestry Utilizando o HiveMind para integrar o Tapestry com o EJB Depois de confirmar, o plugin do NetBeans irá criar os arquivos de configuração do Tapestry. Abra o arquivo WEB INF/hivemodule.xml e digite o código exibido na Listagem 4: <?xml version="1.0" encoding="utf 8"?> 9

10 <! app é o nome do nosso módulo... tipo uma 'namespace' > <module id="app" version="0.0.1"> <! Nome do serviço e interface implementada por ele > <service point id="ejbfactory" interface="org.apache.hivemind.serviceimplementationfactory"> <! Definimos nossa própria marcação XML > <parameters schema> <element name="construct"> <attribute name="jndi name" required="true" /> <conversion class="hivemind.ejbparam"> <map attribute="jndi name" property="jndiname" /> </conversion> </element> </parameters schema> <! Classe concreta que implementa a interface indicada acima > <! ah, e a instância é singleton por padrão > <invoke factory> <construct class="hivemind.ejbfactory" /> </invoke factory> </service point> <! Continua.. > </module> Listagem 4: Definindo um Service Point no HiveMind Antes de prosseguirmos com o tutorial, você precisa entender o que foi feito na Listagem 4. O elemento <service point> serve para declararmos um serviço no nosso módulo (de nome app), fornecendo um ID e a interface implementada pelo serviço. Dentro do elemento <service point> temos algumas informações agrupadas sob o elemento <parameters schema>. É aqui que o negócio fica legal, pois são com essas informações que somos capazes de definir, a nível de XML, como devemos formatar as informações durante a utilização do serviço. Está com dificuldades em compreender? Olhe com atenção o conteúdo do elemento <parameters schema>: <element name="construct"> <attribute name="jndi name" required="true" /> <conversion class="hivemind.ejbparam"> <map attribute="jndi name" property="jndiname" /> </conversion> </element> Listagem 5: Configuração da sintaxe XML O elemento <element> serve para definirmos um elemento na nossa sintaxe XML 10

11 customizada, onde, no caso, estamos definindo um elemento construct. Um exemplo de elemento no HTML é a tag <font>. Em seguida, definimos que o elemento construct possui um atributo chamado jndiname, que é obrigatório. Ainda fazendo um paralelo com o HTML, podemos dizer que o elemento (ou tag) <font> possui um atributo face, onde indicamos o nome da fonte a ser utilizada. Dentro da definição do elemento construct, temos também um elemento <conversion>, que serve para indicar a classe que armazenará os dados lidos do XML (em específico do elemento construct). A classe em questão é EJBParam, e seu código será mostrado em alguns instantes. Note que, dentro deste elemento conversion, declaramos um elemento <map> para que possamos mapear, um a um, os atributos indicados no XML com as propriedades da classe Java. No nosso caso, indicamos que o atributo jndi name, do XML, corresponderá à propriedade jndiname, da classe Java. Para que isso tudo fique mais simples de ser entendido, vamos fazer mais uma alteração no arquivo hivemodule.xml, onde criaremos um serviço que utiliza o serviço EJBFactory. Então abra o arquivo WEB INF/hivemodule.xml e coloque o seguinte trecho depois do comentário <! continua.. >: <! Novo serviço (que será uma instância do bean Stateless) > <service point id="messagemanager" interface="business.messagemanagerlocal"> <! Este serviço utiliza o serviço JndiResourceFactory > <invoke factory service id="app.ejbfactory"> <! Ei! Esta é a sintaxe XML que definimos anteriormente! > <construct jndi name="java:comp/env/ejb/messagemanager" /> </invoke factory> </service point> Listagem 6: Serviço para obter uma instância do Stateless Session Bean Talvez agora fique mais fácil de entender. Como já foi dito, serviço EJBFactory servirá para que possamos obter a referência a um EJB via JNDI. Conforme podemos ver no XML, a classe que irá fazer o trabalho sujo é a classe EJBFactory, que implementa uma interface fornecida pelo HiveMind, a ServiceImplementationFactory. O código da classe EJBFactory será mostrado em alguns instantes. Já o serviço que foi definido na Listagem 6, o MessageManager, é o que efetivamente será usado pela nossa aplicação. Basicamente, a função deste serviço é utilizar o serviço EJBFactory para obter a instância do Stateless Session Bean MessageManager. Veja que as informações são passadas para o serviço EJBFactory por meio da marcação XML que definimos anteriormente. Se esta aplicação possuísse outros EJBs, teríamos outros serviços muito parecidos com o serviço definido na Listagem 6. Por exemplo, se tivéssemos um Session Bean 11

12 chamado UserManager, teríamos algo parecido com o seguinte, no arquivo WEB INF/hivemodule.xml: <module...> <!... > <! Nosso OUTRO Stateless Session Bean > <service point id="usermanager" interface="business.usermanagerlocal"> <! Este serviço TAMBÉM utiliza o serviço JndiResourceFactory > <invoke factory service id="app.ejbfactory"> <construct jndi name="java:comp/env/ejb/usermanager" /> </invoke factory> </service point> </module> Listagem 7: Exemplo de serviço similar ao MessageManager Para terminarmos, precisamos criar as duas classes que referenciamos no arquivo WEB INF/hivemodule.xml: hivemind.ejbparam e hivemind.ejbfactory. A classe hivemind.ejbparam é um JavaBean bastante simples e não exige explicações: package hivemind; public class EJBParam { private String jndiname; public String getjndiname() { return jndiname; public void setjndiname(string jndiname) { this.jndiname = jndiname; Já a classe hivemind.ejbfactory é um pouco mais complexa. Veja o código: package hivemind; // imports... public class EJBFactory implements ServiceImplementationFactory { public Object createcoreserviceimplementation( ServiceImplementationFactoryParameters params) { Object result = null; try { EJBParam param = (EJBParam) 12

13 params.getfirstparameter(); InitialContext context = new InitialContext(); /* Obtém e prepara a referência para uso */ result = context.lookup(param.getjndiname()); result = PortableRemoteObject.narrow(result, params.getserviceinterface()); catch (Exception exc) { exc.printstacktrace(); return result; Listagem 8: Classe para obter objetos via JNDI Conforme podemos ver na Listagem 8, a interface ServiceImplementationFactory exige a implementação do método createcoreserviceimplementation. É através da implementação desta interface que podemos definir serviços HiveMind capazes de fabricar implementações. Quando o serviço MessageManager for utilizado pela primeira vez, o HiveMind invocará o método createcoreserviceimplementation, afim de fabricar o serviço. Na primeira linha após o try, obtemos os dados configurados no XML através de um objeto da classe EJBParam. No nosso exemplo, como definimos o XML dessa forma... <construct jndi name="java:comp/env/ejb/messagemanager" />...então o objeto EJBParam estará com a propriedade jndiname setada como java:comp/env/ejb/messagemanager. As linhas restantes são bastante triviais para aqueles que já trabalharam com EJBs, onde basicamente utilizamos o valor do atributo jndiname para fazer o lookup e preparar a referência ao EJB para uso. Porém, antes que possamos pular de alegria, precisamos abrir o arquivo WEB INF/web.xml e declarar a referência ao EJB. Se não fizermos isso, o EJB não será visível à aplicação web e, conseqüentemente, nossa aplicação não funcionará. Portanto, abra o arquivo WEB INF/web.xml e insira o trecho de código mostrado na Listagem 9 no fim do arquivo (antes do elemento </web app>): <ejb local ref> <ejb ref name>ejb/messagemanager</ejb ref name> <ejb ref type>session</ejb ref type> <local>business.messagemanagerlocal</local> </ejb local ref> Listagem 9: Referenciando o EJB a partir da aplicação web 13

14 Agora sim, estamos com todo o back end da aplicação construído e pronto para ser usado. Agora nos resta criar as páginas para que o usuário possa interagir com o sistema. Preparando o terreno Antes de continuarmos com o desenvolvimento, vamos dar uma organizada nos arquivos criados pelo plugin do NetBeans, para tornar a estrutura de arquivos mais limpa e arrumada. Vá até o projeto guestbook war e abra a pasta WEB INF. Veja que o plugin criou os arquivos da página Home dentro deste diretório. A razão de o plugin colocar tais arquivos dentro da pasta WEB INF foi para evitar que esses arquivos sejam acessados externamente, uma vez que todos os arquivos e diretórios situados sob o diretório WEB INF são acessíveis apenas à aplicação. Entretanto, esta prática não é recomendada em aplicações com diversas páginas, pois isso compromete a organização dos arquivos da aplicação. Para deixar as coisas mais organizadas, mova os arquivos Home.html e Home.page para a pasta Web Pages (local onde está situado o arquivo index.jsp). Para garantir que os arquivos relativos às nossas páginas Tapestry continuem protegidos do mundo externo, devemos definir uma regra de segurança no arquivo WEB INF/web.xml. Para fazer isso, abra o arquivo WEB INF/web.xml e coloque o trecho mostrado na Listagem 10, antes do elemento </web app>: <security constraint> <display name>page Files</display name> <web resource collection> <web resource name>page Files</web resource name> <description>protect page files</description> <url pattern>*.html</url pattern> <url pattern>*.page</url pattern> <url pattern>*.properties</url pattern> </web resource collection> <auth constraint/> </security constraint> Listagem 10: Bloqueando acesso externo aos arquivos das páginas Caso você nunca tenha trabalhado com segurança de aplicações web, o trecho acima serve basicamente para bloquear o acesso externo (seja ele via GET, POST, ou qualquer outro método HTTP) para todos os arquivos com sufixo.html,.page e.properties. Vamos agora configurar o pacote padrão onde as páginas Tapestry serão criadas. Abra o arquivo WEB INF/guestbook.application e substitua o conteúdo pelo código que segue: <?xml version="1.0" encoding="utf 8"?> <!DOCTYPE application PUBLIC 14

15 " //Apache Software Foundation//Tapestry Specification 4.0//EN" " <application name="tapestry Application"> <meta key="org.apache.tapestry.page class packages" value="guestbook.pages" /> </application> Listagem 11: Configuração do pacote padrão das páginas Tapestry Beleza, agora estamos prontos para codificar as páginas! Criando a página principal Como nós já estamos habituados com o processo de criação de páginas no Tapestry, irei listar o código aqui, explicando apenas aquilo que não foi explicado nos tutoriais anteriores. Abra o arquivo Home.html e coloque o código mostrado na Listagem 12: <html> <head> <title> Guestbook </title> </head> <body> <h1>guestbook</h1> <h2>message list</h2> <form jwcid="form"> <table border="1" jwcid="showtable"> <tr> <th>id</th> <th>date</th> <th>name</th> <th> </th> <th>comment</th> </tr> <tr jwcid="messagefor"> <td> <span jwcid="msgid">1</span> </td> <td> <span jwcid="msgdate">01/01/ :56</span> </td> <td> <span jwcid="msgname">some people name</span> </td> <td> <a href="#" jwcid="msg link"> <span jwcid="msg ">som @ .com</span> 15

16 </a> </td> <td> <span jwcid="msgcomment">the comment goes here</span> </td> </tr> </table> </form> <h4 jwcid="nomessages">no messages found</h4> <a href="newmessage.html" jwcid="newmsglink">new message</a> </body> </html> Listagem 12: Template da página principal Agora abra o arquivo Home.page e substitua seu conteúdo pelo conteúdo da listagem a seguir: <?xml version="1.0" encoding="utf 8"?> <!DOCTYPE page specification PUBLIC " //Apache Software Foundation//Tapestry Specification 4.0//EN" " <page specification> <property name="message" /> <property name="dateformat" locale)" /> <component id="form" type="form" /> <component id="showtable" type="if"> <binding name="condition" value="messagelist.size() > 0" /> <component id="nomessages" type="else" /> <component id="msgid" type="insert"> <binding name="value" value="message.id" /> <component id="msgdate" type="insert"> <binding name="value" value="message.date.time" /> <binding name="format" value="dateformat" /> <component id="msgname" type="insert"> <binding name="value" value="message.name" /> <component id="msg link" type="genericlink"> <binding name="href" value="'mailto:' + message. " /> 16

17 <component id="msg " type="insert"> <binding name="value" value="message. " /> <component id="msgcomment" type="insert"> <binding name="value" value="message.comment" /> <component id="delete" type="submit"> <binding name="parameters" value="message" /> <binding name="action" value="listener:deletemsg" /> <component id="messagefor" type="for"> <binding name="element" value="literal:tr" /> <binding name="source" value="messagelist" /> <binding name="value" value="message" /> <component id="newmsglink" type="pagelink"> <binding name="page" value="literal:newmessage" /> </page specification> Listagem 13: Configuração dos componentes da página principal Embora o código mostrado na Listagem 13 seja meio grande, é bem fácil de entender por quem já acompanhou os outros dois tutoriais. Apenas os trechos em destaque merecem uma atenção especial, visto que tais elementos não foram vistos nos tutoriais anteriores... O primeiro trecho é um elemento <property> com um atributo initial value, cuja função é definir um valor inicial para a propriedade. Neste caso, estamos criando uma propriedade que irá armazenar um Format usado para formatar os campos de data da página. No atributo initial value definimos um DateFormat criado de acordo com o locale do usuário. Esta é uma expressão OGNL e, caso tenha qualquer dúvida em relação às expressões OGNL, leia a documentação do projeto [6]. O segundo trecho em destaque é um componente GenericLink, que serve para renderizar um link na página HTML cujo valor do atributo href é definido arbitrariamente. O terceiro trecho é um componente For, usado para iterar em coleções de objetos. No nosso caso, utilizamos este componente para iterar entre as mensagens cadastradas no sistema. O componente For possui alguns atributos que devem ser fornecidos: element, source e value: O atributo element serve para indicar a tag HTML a ser renderizada para cada elemento da coleção a ser percorrido. Como estamos utilizando um <table> para listar as mensagens, então o atributo element é preenchido com o literal tr, o que significa que cada mensagem é renderizada em uma linha (tag <tr>) da tabela correspondente; O atributo source indica a propriedade através da qual a coleção de objetos é 17

18 acessível; Por fim, o atributo value indica a propriedade que irá guardar o objeto iterado no momento. Para ficar mais fácil de entender o funcionamento do componente For, veja o código Java mostrado na Listagem 14: public void iterar(list lista) { // 1 System.out.println( <ul> ); Iterator it = lista.iterator(); while (it.hasnext() { Object atual = it.next(); // 2 System.out.println( <li>objeto atual: + atual + </li> ); // 3 System.out.println( </ul> ); Listagem 14: Exemplo de iteração em uma coleção, em Java Fazendo um paralelo entre os trechos em negrito do código da Listagem 14 e os atributos do componente For da Listagem 13, o parâmetro do método iterar() é equivalente ao atributo source. A variável atual é equivalente ao atributo value. Finalmente, o <li> é equivalente ao atributo element. Continuando, crie a classe Home, dentro do pacote guestbook.pages. Esta classe irá conter o código necessário para implementar a lógica desejada para a página Home. O código da classe pode ser visto na listagem a seguir: package guestbook.pages; // imports public abstract class Home extends BasePage implements PageBeginRenderListener public abstract MessageManagerLocal getmessagemanager(); public abstract List<Message> getmessagelist(); public abstract void setmessagelist(list<message> list); public void pagebeginrender(pageevent pageevent) { setmessagelist(getmessagemanager().loadall()); A única coisa no código que não estamos habituados é o trecho em destaque. O método é anotado onde indicamos que o objeto a ser injetado é um serviço do HiveMind chamado MessageManager, declarado dentro do módulo app (isso é feito através do uso do prefixo service:). Caso não lembre, volte ao arquivo WEB INF/hivemodule.xml e veja que este serviço serve para obtermos uma instância do Stateless Session Bean MessageManager via JNDI. 18

19 Vamos agora rodar a aplicação, para ver se a página está funcionando conforme de acordo com as nossas necessidades: Ilustração 10: Lista de mensagens... vazia! Como não temos nenhum registro cadastrado, a lista de mensagens não foi exibida. Vamos inserir um registro manualmente, através das ferramentas fornecidas pelo NetBeans, para que possamos ver se tudo está funcionando. Selecione a guia Runtime, e localize o nosso banco de dados na lista (Ilustração 11). Ilustração 11: Trabalhando com bancos de dados no NetBeans Clique com o botão direito do mouse no banco de dados guestbook e selecione a opção Execute Command... Digite o código SQL mostrado na Listagem 15 e pressione o botão Run SQL, cuja localização pode ser vista na Ilustração 12. Ilustração 12: Botão para acionar a execução dos comandos SQL 19

20 update "APP"."SEQUENCE" set seq_count = 1; insert into "APP"."MESSAGE" values( 1, 'contato@danielfmartins.com', CURRENT_TIMESTAMP, 'Daniel F. Martins', 'Testing ') Listagem 15: Adicionando um registro de testes Vá até o browser e atualize a página. Veja o nosso novo registro sendo mostrado: Ilustração 13: Nosso registro sendo exibido na tela! Internacionalizando a página principal Para habilitar o mecanismo de internacionalização em uma página, basta criar um arquivo.properties com o mesmo nome da página em questão (e no mesmo local). Por exemplo, para a página Home, teríamos um arquivo Home.properties com as mensagens padrão. Para definir mensagens em português brasileiro, crie um arquivo chamado Home_pt_BR.properties. Para definir mensagens em inglês, crie um arquivo Home_en.properties. A mesma regra vale para outros idiomas. Vamos criar então um arquivo Home.properties, que irá conter as mensagens padrão. Este arquivo deve ser criado no mesmo local dos outros arquivos referentes à página Home. Depois de criado o arquivo, preencha o de acordo com o mostrado na Listagem 16: 20

21 # Home page messages application.title=guestbook application page.title=message list messages.empty=no messages found column.id=id column.date=date column.name=name column. = column.comment=comment page.newmessage=new message Listagem 16: Arquivo.properties com as mensagens Vamos alterar agora o arquivo Home.html, para que este faça uso das mensagens indicadas no arquivo Home.properties: <html> <head> <title> <span key="application.title">application title</span> </title> </head> <body> <h1><span key="application.title">application title</span></h1> <h2><span key="page.title">page title</span></h2> <form jwcid="form"> <table border="1" jwcid="showtable"> <tr> <th> <span key="column.id">id</span> </th> <th> <span key="column.date">date</span> </th> <th> <span key="column.name">name</span> </th> <th> <span key="column. "> </span> </th> <th> <span key="column.comment">comment</span> </th> </tr> <tr jwcid="messagefor"> <td> <span jwcid="msgid">1</span> </td> <td> <span jwcid="msgdate">01/01/ :56</span> </td> <td> <span jwcid="msgname">some people name</span> </td> <td> <a href="#" jwcid="msg link"> 21

22 <span </a> </td> <td> <span jwcid="msgcomment">the comment goes here</span> </td> </tr> </table> </form> <h4 jwcid="nomessages"> <span key="messages.empty">no messages found</span> </h4> <a href="newmessage.html" jwcid="newmsglink"> <span key="page.newmessage">new message</span> </a> </body> </html> Listagem 17: Adicionando as mensagens no template Como podemos ver nos trechos em negrito, na Listagem 17, para exibir uma mensagem no template, utilizamos um elemento <span key= chave >xxxx</span>. Abaixo, uma outra forma de se obter o mesmo resultado, mesmo que de uma forma mais tediosa: <span value= message:chave >Mensagem aqui</span> Certo. Rode a aplicação novamente e veja se tudo continua como estava. A grande diferença é que, agora, caso a aplicação precise ser localizada em um outro idioma, a coisa é facilmente implementada, bastando criar o arquivo.properties correspondente. Então, caso o usuário tenha configurado seu browser para um idioma diferente (e que sua aplicação suporte, claro), a página exibirá as mensagens naquele idioma automaticamente. Ciando a página de cadastro Beleza. Vou mostrar como criar a página de cadastro sem muitos rodeios, afinal já estamos acostumados com quase tudo que será utilizado. Crie um arquivo chamado NewMessage.html, no mesmo diretório onde a página Home está situada. Insira neste arquivo o código mostrado na Listagem 18: <html> <head> <title>application Title</title> </head> <body> <h1><span key="application.title">application title</span></h1> <h2><span key="page.title">page title</span></h2> 22

23 <span jwcid="haserrors"> <span key="message.error">errors found:</span> <ul> <span jwcid="fieldtracking"> <span jwcid="isinerror"> <li><span jwcid="error">some input error.</span> </span> </span> </ul> </span> <form jwcid="form"> <table> <tr> <td> <span jwcid="namelabel">name</span>: </td> <td> <input type="text" jwcid="name" /> </td> </tr> <tr> <td> <span jwcid=" label"> </span>: </td> <td> <input type="text" jwcid=" " /> </td> </tr> <tr> <td> <span jwcid="commentlabel">comment</span>: </td> <td> <textarea jwcid="comment" cols="40"></textarea> </td> </tr> <tr> <td colspan="2" align="right"> <input type="button" jwcid="submit" value="message:submit" /> </td> </tr> </table> </form> <a href="home.html" jwcid="homelink"> <span key="page.home">home</span> </a> </body> </html> Listagem 18: Template da página de cadastro Agora, crie o arquivo de especificações da página, o NewMessage.page, no mesmo local do arquivo NewMessage.html. Coloque neste arquivo o código mostrado na Listagem 19: 23

Scriptlets e Formulários

Scriptlets e Formulários 2 Scriptlets e Formulários Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Permitir ao aluno aprender a criar um novo projeto Java para web no Netbeans IDE,

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

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

Manual das funcionalidades Webmail AASP

Manual das funcionalidades Webmail AASP Manual das funcionalidades Webmail AASP 1. Configurações iniciais 2. Regras 3. Histórico da conta 4. Autorresposta 5. Dados de acesso (alterando senha de acesso) 6. Identidade (assinatura) 7. Redirecionamento

Leia mais

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO Antes de criarmos um novo Banco de Dados quero fazer um pequeno parênteses sobre segurança. Você deve ter notado que sempre

Leia mais

Tutoriais de apoio para a migração do e-mail @pmmc.com.br para @se-pmmc.com.br Atualização: 30/04/2014

Tutoriais de apoio para a migração do e-mail @pmmc.com.br para @se-pmmc.com.br Atualização: 30/04/2014 Tutoriais de apoio para a migração do e-mail @pmmc.com.br para @se-pmmc.com.br Atualização: 30/04/2014 Sumário Introdução... 3 1. Redirecionando e-mails novos... 4 2. Fazendo backup e encaminhando e-mails

Leia mais

JDBC Java Database Connectivity

JDBC Java Database Connectivity 5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes

Leia mais

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Criando uma Calculadora Primeiramente deve se criar uma estrutura para armazenar os arquivos necessários para o funcionamento da calculadora.

Leia mais

Manual Sistema de Autorização Online GW

Manual Sistema de Autorização Online GW Sistema de Autorização Online GW Sumário Introdução...3 Acesso ao sistema...4 Logar no sistema...4 Autorizando uma nova consulta...5 Autorizando exames e/ou procedimentos...9 Cancelamento de guias autorizadas...15

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

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5. Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5. Ele considera que você já tem o Joomla! instalado no seu computador. Caso você queira utilizá lo em um servidor na web,

Leia mais

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas FM-0 1/21 ÍNDICE 1. MÓDULO DESKTOP(SISTEMA INSTALADO NO CIEE)... 2 Cadastro de Ofertas de Empregos:... 2 Cadastro de Eventos:... 3 Cadastro de Instituições do Curriculum:... 5 Cadastro de Cursos do Curriculum:...

Leia mais

Daruma NFCe Conheça todos os passos para testar a NFCe Daruma

Daruma NFCe Conheça todos os passos para testar a NFCe Daruma Pré-requisitos Mini Impressora Daruma versão 02.50.02 ou superior. Cadastro no servidor de Testes Daruma NFCe Conheça todos os passos para testar a NFCe Daruma Adquirir Mini Impressora a preço subsidiado

Leia mais

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira WEBDESIGN Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira Formulários e JavaScript Como visto anteriormente, JavaScript pode ser usada para

Leia mais

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software O Animail é um software para criar campanhas de envio de email (email Marketing). Você pode criar diversas campanhas para públicos diferenciados. Tela Principal do sistema Para melhor apresentar o sistema,

Leia mais

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments Criação de Servlets 1. Crie um novo projeto através do Menu File New Project. 2. Acesse o Menu File New. 3. Na janela Object Gallery que surgirá, selecione a guia Web. 4. Escolha o ícone que corresponde

Leia mais

www.marketingdigitalexpress.com.br - Versão 1.0 Página 1

www.marketingdigitalexpress.com.br - Versão 1.0 Página 1 www.marketingdigitalexpress.com.br - Versão 1.0 Página 1 Remarketing é um recurso utilizado para direcionar anúncios personalizados para as pessoas que visitaram uma determinada página do seu site ou clicaram

Leia mais

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade do Sistema Índice Página 1. Como acessar o sistema 1.1 Requisitos mínimos e compatibilidade 03 2. Como configurar o Sistema 2.1 Painel de Controle 2.2 Informando o nome da Comissária 2.3 Escolhendo a Cor

Leia mais

MANUAL COTAÇAO WEB MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA. [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email]

MANUAL COTAÇAO WEB MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA. [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email] MANUAL COTAÇAO WEB [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email] MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA Material Desenvolvido para a Célula Materiais Autor: Equipe

Leia mais

FAQ Perguntas Frequentes

FAQ Perguntas Frequentes FAQ Perguntas Frequentes 1. COMO ACESSO A PLATAFORMA DE ENSINO?... 2 2. NÃO CONSIGO REALIZAR O MEU CADASTRO NO AMBIENTE VIRTUAL DO MMA.... 4 3. FIZ MEU CADASTRO NO SITE E NÃO RECEBI O E-MAIL DE CONFIRMAÇÃO

Leia mais

Portal da Prefeitura de São Paulo SECOM. MANUAL DO WARAM v. 1.5 Secretarias

Portal da Prefeitura de São Paulo SECOM. MANUAL DO WARAM v. 1.5 Secretarias SECOM MANUAL DO WARAM v. 1.5 Secretarias WARAM 1.5 Ferramenta de atualização do Portal da Prefeitura de São Paulo. Use preferencialmente o navegador Internet Explorer superior ou igual a 7.0. No campo

Leia mais

Tutorial RM. academico.unipe.br ALUNO

Tutorial RM. academico.unipe.br ALUNO Tutorial RM academico.unipe.br ALUNO Caro (a) aluno (a), Este tutorial irá ajudá-lo (a) no acesso ao novo sistema educacional do UNIPÊ. Inicialmente, acesse o Portal da Instituição (www.unipe.br) Faça

Leia mais

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! UNIVERSIDADE DE SÃO PAULO (USP) ESCOLA DE ARTES, CIÊNCIAS E HUMANIDADES (EACH) TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! Autoria e revisão por: PET Sistemas

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

CONFIGURAÇÃO MINIMA EXIGIDA:

CONFIGURAÇÃO MINIMA EXIGIDA: Este tutorial parte do princípio que seu usuário já possua conhecimentos básicos sobre hardware, sistema operacional Windows XP ou superior, firewall, protocolo de rede TCP/IP e instalação de software.

Leia mais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO? Índice BlueControl... 3 1 - Efetuando o logon no Windows... 4 2 - Efetuando o login no BlueControl... 5 3 - A grade de horários... 9 3.1 - Trabalhando com o calendário... 9 3.2 - Cancelando uma atividade

Leia mais

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7)

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7) SafeSign Standard 3.0.77 (Para MAC OS 10.7) 2/23 Sumário 1 Introdução... 3 2 Pré-Requisitos Para Instalação... 3 3 Ambientes Homologados... 4 4 Hardware Homologado... 4 5 Instruções de Instalação... 5

Leia mais

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco). Permissões de compartilhamento e NTFS - Parte 2 Criando e compartilhando uma pasta - Prática Autor: Júlio Battisti - Site: www.juliobattisti.com.br Neste tópico vamos criar e compartilhar uma pasta chamada

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET I Sumário 1. Objetivo do Documento... 1 2. Início... 1 3. Cadastro de Pessoa Física... 3 3.1. Preenchimentos Obrigatórios.... 4 3.2. Acesso aos Campos

Leia mais

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0 MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO Motor Periférico Versão 8.0 1. Apresentação... 3 2. Instalação do Java... 3 2.1 Download e Instalação... 3 2.2 Verificar Instalação... 3 3. Download do Motor Periférico...

Leia mais

Manual de configuração do sistema

Manual de configuração do sistema Manual de configuração do sistema (v.1.5.x Beta) Rua México, 119 Sala 2004 Centro Rio de Janeiro, RJ www.doctors-solution.com.br www.simdoctor.com.br contato@simdoctor.com.br Sumário 1. Fazendo seu primeiro

Leia mais

Lazarus pelo SVN Linux/Windows

Lazarus pelo SVN Linux/Windows Lazarus pelo SVN Linux/Windows Sei que não faltam artigos sobre como obter e compilar o Lazarus e o FPC pelo SVN, mas sei também que nunca é de mais divulgar um pouco mais e talvez escrever algo diferente.

Leia mais

Validando dados de páginas WEB

Validando dados de páginas WEB Validando dados de páginas WEB Para que validar os dados? Validar os dados informados pelo usuário garante que sua aplicação funcione corretamente e as informações contidas nela tenha algum sentido. Outro

Leia mais

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet. 1. Descrição Geral Este manual descreve as operações disponíveis no módulo VTWEB Client, cuja finalidade é gerenciar cadastros de funcionários, realização de pedidos e controle financeiro dos pedidos.

Leia mais

NOVIDADES DO JAVA PARA PROGRAMADORES C

NOVIDADES DO JAVA PARA PROGRAMADORES C PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB NOVIDADES DO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o Conceito de Classes e Objetos Capacitar para a criação de objetos simples

Leia mais

Sumário: Fluxo Operacional... 3 Contatos... 4. Agenda Online... 10. Reservas de Salas... 26. Tarefas... 42

Sumário: Fluxo Operacional... 3 Contatos... 4. Agenda Online... 10. Reservas de Salas... 26. Tarefas... 42 Sumário: Fluxo Operacional... 3 Contatos... 4 Passo a passo para visualização de contatos... 5 Passo a passo para filtragem da lista de contatos... 6 Como ordenar a lista de contatos... 7 Como gerar uma

Leia mais

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. 1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. Editando um Artigo 4.3. Excluindo um Artigo 4.4. Publicar

Leia mais

INSTALAÇÃO DO SISTEMA CONTROLGÁS

INSTALAÇÃO DO SISTEMA CONTROLGÁS INSTALAÇÃO DO SISTEMA CONTROLGÁS 1) Clique duas vezes no arquivo ControlGasSetup.exe. Será exibida a tela de boas vindas do instalador: 2) Clique em avançar e aparecerá a tela a seguir: Manual de Instalação

Leia mais

CERTIFICADO DIGITAL ARMAZENADO NO COMPUTADOR (A1) Manual do Usuário

CERTIFICADO DIGITAL ARMAZENADO NO COMPUTADOR (A1) Manual do Usuário Certificação Digital CERTIFICADO DIGITAL ARMAZENADO NO COMPUTADOR (A1) Manual do Usuário Guia CD-17 Público Índice 1. Pré-requisitos para a geração do certificado digital A1... 3 2. Glossário... 4 3. Configurando

Leia mais

MANUAL DE UTILIZAÇÃO

MANUAL DE UTILIZAÇÃO MANUAL DE UTILIZAÇÃO Módulo de operação Ativo Bem vindo à Vorage CRM! Nas próximas paginas apresentaremos o funcionamento da plataforma e ensinaremos como iniciar uma operação básica através do nosso sistema,

Leia mais

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. Manual de Instruções ECO Editor de Conteúdo Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. O ECO é um sistema amigável e intui?vo, mas abaixo você pode?rar eventuais dúvidas e aproveitar

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Sistema de Chamados Protega

Sistema de Chamados Protega SUMÁRIO 1. INTRODUÇÃO... 3 2. REALIZANDO ACESSO AO SISTEMA DE CHAMADOS... 4 2.1 DETALHES DA PÁGINA INICIAL... 5 3. ABERTURA DE CHAMADO... 6 3.1 DESTACANDO CAMPOS DO FORMULÁRIO... 6 3.2 CAMPOS OBRIGATÓRIOS:...

Leia mais

Sumário INTRODUÇÃO... 3. 1. Acesso ao Ambiente do Aluno... 4. 2. Ferramentas e Configurações... 5. 2.1 Ver Perfil... 5. 2.2 Modificar Perfil...

Sumário INTRODUÇÃO... 3. 1. Acesso ao Ambiente do Aluno... 4. 2. Ferramentas e Configurações... 5. 2.1 Ver Perfil... 5. 2.2 Modificar Perfil... Sumário INTRODUÇÃO... 3 1. Acesso ao Ambiente do Aluno... 4 2. Ferramentas e Configurações... 5 2.1 Ver Perfil... 5 2.2 Modificar Perfil... 6 2.3 Alterar Senha... 11 2.4 Mensagens... 11 2.4.1 Mandando

Leia mais

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas Microsoft Power Point 2003 No Microsoft PowerPoint 2003, você cria sua apresentação usando apenas um arquivo, ele contém tudo o que você precisa uma estrutura para sua apresentação, os slides, o material

Leia mais

atube Catcher versão 3.8 Manual de instalação do software atube Catcher

atube Catcher versão 3.8 Manual de instalação do software atube Catcher atube Catcher versão 3.8 Manual de instalação do software atube Catcher Desenvolvido por: Clarice Mello, Denis Marques Campos Dezembro de 2014 Sumario 1. Objetivo deste manual...3 2. Requisitos para instalação...3

Leia mais

Sistema de Recursos Humanos

Sistema de Recursos Humanos Sistema de Recursos Humanos Projeto 1 O objetivo desse sistema é gerenciar a admissão e a demissão de funcionários. Esse funcionário pode ou não ter dependentes. Esse funcionário está alocado em um departamento

Leia mais

Instalando o WordPress em localhost

Instalando o WordPress em localhost Instalando o WordPress em localhost WordPress sem Mistério LEE ARAUJO htto://wordpresssemmisterio.com.br Sumário Instalando o WordPress em Localhost... 2 O Servidor web... 3 Iniciando o servidor... 6 Criação

Leia mais

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011

Leia mais

Inserindo Dados no Banco de Dados Paradox.

Inserindo Dados no Banco de Dados Paradox. Inserindo Dados no Banco de Dados Paradox. - Construção do Banco de Dados: Para podermos inserir algo em um banco precisaremos de um Banco de Dados, para isto iremos montar um utilizando o Programa Database

Leia mais

Manual do Visualizador NF e KEY BEST

Manual do Visualizador NF e KEY BEST Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................

Leia mais

Instalando e Configurando o DNS Server

Instalando e Configurando o DNS Server Instalando e Configurando o DNS Server Seg, 27 de Outubro de 2008 18:02 Escrito por Daniel Donda A instalação do serviço DNS no Windows Server 2008 é bem simples e de extrema importância para uma rede.

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

Manual Integra S_Line

Manual Integra S_Line 1 Introdução O é uma ferramenta que permite a transmissão Eletrônica de Resultado de Exames, possibilitando aos Prestadores de Serviços (Rede Credenciada), integrarem seus sistemas com os das Operadoras

Leia mais

Manual do Almoxarifado SIGA-ADM

Manual do Almoxarifado SIGA-ADM Manual do Almoxarifado SIGA-ADM DIRETORIA DE GESTÃO DA TECNOLOGIA DA INFORMAÇÃO(DGTI) MARÇO/2012 Requisição de Almoxarifado Requisições O sistema retornará a tela do menu de Administração. Nela selecione

Leia mais

NetBeans. Conhecendo um pouco da IDE

NetBeans. Conhecendo um pouco da IDE NetBeans Conhecendo um pouco da IDE Professor: Edwar Saliba Júnior Sumário Apresentação:...1 Criando Um Novo Projeto de Software:...1 Depurando Um Código-fonte:...4 Entendendo o Código-fonte:...7 Dica

Leia mais

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

Leia mais

UNIVERSIDADE FEDERAL DO AMAPÁ NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO. Manual de Avaliação de Desempenho Cadastro

UNIVERSIDADE FEDERAL DO AMAPÁ NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO. Manual de Avaliação de Desempenho Cadastro UNIVERSIDADE FEDERAL DO AMAPÁ NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO Manual de Avaliação de Desempenho Cadastro UNIFAP MACAPÁ-AP 2013 S U M Á R I O 1 Tela de Login...2 2 Acessando ao submenu cadastro de avaliação

Leia mais

Trecho retirando do Manual do esocial Versão 1.1

Trecho retirando do Manual do esocial Versão 1.1 Trecho retirando do Manual do esocial Versão 1.1 A rotina de acesso direto ao XML do S-1000, o usuário pode encontrar na opção de cadastro de Empresas do SIP. Sempre que o usuário localizar a figura ao

Leia mais

CRIANDO TEMPLATES E LEGENDAS

CRIANDO TEMPLATES E LEGENDAS CRIANDO TEMPLATES E LEGENDAS Este tutorial tem como objetivo instruir passo à passo como criar templates de peças, utilizar os novos recursos de cadastro de propriedade de peças e criação de legenda. 1-

Leia mais

Criando um script simples

Criando um script simples Criando um script simples As ferramentas de script Diferente de muitas linguagens de programação, você não precisará de quaisquer softwares especiais para criar scripts de JavaScript. A primeira coisa

Leia mais

Criação de Formatos para detalhamento. Ambiente de trabalho no SOLIDWORKS

Criação de Formatos para detalhamento. Ambiente de trabalho no SOLIDWORKS Criação de Formatos para detalhamento Esse tutorial tem o intuito de fazer com que as pessoas conheçam melhor o recurso de criação de formatos de folhas para detalhamento do SolidWorks. Uma das grandes

Leia mais

Molhando os pés com Tapestry, parte 1

Molhando os pés com Tapestry, parte 1 Molhando os pés com Tapestry, parte 1 Daniel Fernandes Martins Se cansou de apenas ouvir falar sobre o framework Tapestry? Se sim, então veja por si só o que o Tapestry pode fazer por você! Sobre o tutorial

Leia mais

GUIA RÁPIDO SISTEMA ANTIFURTO THEFT DETERRENT

GUIA RÁPIDO SISTEMA ANTIFURTO THEFT DETERRENT GUIA RÁPIDO SISTEMA ANTIFURTO THEFT DETERRENT SUMÁRIO Prefácio... 1 A quem se destina... 1 Nomenclatura utilizada neste documento... 1 Tela de login... 2 Tela Inicial... 4 Gestão de Dispositivo Acompanhar

Leia mais

GUIA RÁPIDO DE UTILIZAÇÃO DO PORTAL DO AFRAFEP SAÚDE

GUIA RÁPIDO DE UTILIZAÇÃO DO PORTAL DO AFRAFEP SAÚDE GUIA RÁPIDO DE UTILIZAÇÃO DO PORTAL DO AFRAFEP SAÚDE INTRODUÇÃO O portal do Afrafep Saúde é um sistema WEB integrado ao sistema HEALTH*Tools. O site consiste em uma área onde os Usuários e a Rede Credenciada,

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

Manual 2010 Webmaster

Manual 2010 Webmaster Manual 2010 Webmaster Menu 1. Acesso ao sistema 2. Campanhas 2.1 Ver Campanhas Disponíveis 2.2 Minhas Campanhas 3. Formatos 3.1 Banners Automáticos 3.2 Banners Manuais 3.3 E-mail Marketing 3.4 Vitrines

Leia mais

Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V 1.0. www.sms.agenciaglobo.net

Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V 1.0. www.sms.agenciaglobo.net Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V 1.0 www.sms.agenciaglobo.net 1 ACESSO O SISTEMA 1.1 - Para acessar o sistema de envio entre no site http://sms.agenciaglobo.net/

Leia mais

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais ASP.NET > WebService herman_arais@yahoo.com.br Introdução Um WebService é um componente, ou unidade lógica de aplicação, acessível através de protocolos padrões de Internet. Como componentes, esses serviços

Leia mais

Manual Captura S_Line

Manual Captura S_Line Sumário 1. Introdução... 2 2. Configuração Inicial... 2 2.1. Requisitos... 2 2.2. Downloads... 2 2.3. Instalação/Abrir... 3 3. Sistema... 4 3.1. Abrir Usuário... 4 3.2. Nova Senha... 4 3.3. Propriedades

Leia mais

INSTALAÇÃO DO MICROSOFT WINDOWS SHAREPOINT SERVICES 2.0

INSTALAÇÃO DO MICROSOFT WINDOWS SHAREPOINT SERVICES 2.0 CAPÍTULO 18 INSTALANDO E CONFIGURANDO O MICROSOFT OFFICE PROJECT SERVER 2003 INSTALAÇÃO DO MICROSOFT WINDOWS SHAREPOINT SERVICES 2.0 Antes de começar a instalação do Microsoft Office Project Server 2003

Leia mais

Sumário. 1 Tutorial: Blogs no Clickideia

Sumário. 1 Tutorial: Blogs no Clickideia 1 Tutorial: Blogs no Clickideia Sumário Introdução... 2 Objetivos... 2 Instruções para utilização do Tutorial... 2 Acesso ao Portal e a Home Blog... 3 Página Inicial da área do Blog... 4 Apresentação da

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

MANUAL DO PORTAL ACADÊMICO - ALUNO

MANUAL DO PORTAL ACADÊMICO - ALUNO MANUAL DO PORTAL ACADÊMICO - ALUNO Passo a passo do Portal Acadêmico www.ucb.br - atende@ucb.br SUMÁRIO Objetivo Manual do Portal Acadêmico... 03 Navegadores... 03 Endereço Eletrônico (site)... 03 Bloqueador

Leia mais

Omega Tecnologia Manual Omega Hosting

Omega Tecnologia Manual Omega Hosting Omega Tecnologia Manual Omega Hosting 1 2 Índice Sobre o Omega Hosting... 3 1 Primeiro Acesso... 4 2 Tela Inicial...5 2.1 Área de menu... 5 2.2 Área de navegação... 7 3 Itens do painel de Controle... 8

Leia mais

Como incluir artigos:

Como incluir artigos: Como incluir artigos: O WordPress é uma ferramenta muito flexível, com muitas variações e ajustes que podem torná-lo algo muito simples e também muito sofisticado conforme os recursos que são configurados

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

GUIA BÁSICO DA SALA VIRTUAL

GUIA BÁSICO DA SALA VIRTUAL Ambiente Virtual de Aprendizagem - MOODLE GUIA BÁSICO DA SALA VIRTUAL http://salavirtual.faculdadesaoluiz.edu.br SUMÁRIO 1. Acessando Turmas 4 2. Inserindo Material 4 3. Enviando Mensagem aos Alunos 6

Leia mais

Microsoft Access XP Módulo Um

Microsoft Access XP Módulo Um Microsoft Access XP Módulo Um Neste primeiro módulo de aula do curso completo de Access XP vamos nos dedicar ao estudo de alguns termos relacionados com banco de dados e as principais novidades do novo

Leia mais

Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4.

Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4. 1 Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4. Interface do sistema... 4 1.4.1. Janela Principal... 4 1.5.

Leia mais

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede OpenCart v1.0 Manual de Instalação do Módulo estamos todos ligados ÍNDICE 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 vqmod 4 4.2 Instalação e ativação

Leia mais

Tutorial para envio de comunicados e SMS

Tutorial para envio de comunicados e SMS Tutorial para envio de comunicados e SMS Conteúdo 1. Enviando comunicado para os alunos... 1 2. Verificando a situação do envio dos e-mails para os alunos... 5 3. Enviando comunicado para colaboradores

Leia mais

PORTAL DO ALUNO - MANUAL

PORTAL DO ALUNO - MANUAL SUMÁRIO 1. Sobre o Portal do Aluno... 2 2. Acessar o Portal do Aluno... 2 2.1. Acessar o Portal... 2 2.2. Recuperação de senha... 3 2.3.1. Recuperação automática de senha por e-mail... 4 2.3.2. Recuperação

Leia mais

Passo-a-Passo para Criação de Conta no site Griaule e Download do Programa SDK e da Licença Fingerprint SDK 2009

Passo-a-Passo para Criação de Conta no site Griaule e Download do Programa SDK e da Licença Fingerprint SDK 2009 1 Importante: Passo-a-Passo para Criação de Conta no site Griaule e Download do Programa SDK e da Licença Fingerprint SDK 2009 É importante salientar que a Licença SDK não trabalha sozinha. Para que que

Leia mais

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova. 3.5 Páginas: Ao clicar em Páginas, são exibidas todas as páginas criadas para o Blog. No nosso exemplo já existirá uma página com o Título Página de Exemplo, criada quando o WorPress foi instalado. Ao

Leia mais

Sumário. Capítulo 2 Iniciando o TR4... 8 2.1 Como efetuar o login... 8

Sumário. Capítulo 2 Iniciando o TR4... 8 2.1 Como efetuar o login... 8 1 Sumário Capítulo 1 Introdução ao TR4... 4 1.1 Requisitos Mínimos... 4 1.2 Layout do Sistema... 5 1.3 Legenda... 5 1.4 Visão geral das funcionalidades... 6 1.4.1 O Menu Administração... 6 1.4.2 O Menu

Leia mais

BR DOT COM SISPON: MANUAL DO USUÁRIO

BR DOT COM SISPON: MANUAL DO USUÁRIO BR DOT COM SISPON: MANUAL DO USUÁRIO BAURU 2015 2 BR DOT COM SISPON: MANUAL DO USUÁRIO Manual do usuário apresentado para auxiliar no uso do sistema SisPon. BAURU 2015 3 SUMÁRIO 1 Instalação... 5 1.1 Sispon...

Leia mais

MANUAL DE UTILIZAÇÃO. HELP SUPORTE e HELP - REMOTO (Versão de usuário: 2.0)

MANUAL DE UTILIZAÇÃO. HELP SUPORTE e HELP - REMOTO (Versão de usuário: 2.0) MANUAL DE UTILIZAÇÃO HELP SUPORTE e HELP - REMOTO (Versão de usuário: 2.0) 1 Sumário 1 Introdução...3 2 O que é o HELP Suporte?...3 3 Cadastro no Help Suporte...3 4 Como Acessar e Utilizar o HELP SUPORTE...3

Leia mais

Smart Laudos 1.9. A Forma Inteligente de Criar seus Laudos Médicos. Manual do Usuário

Smart Laudos 1.9. A Forma Inteligente de Criar seus Laudos Médicos. Manual do Usuário Smart Laudos 1.9 A Forma Inteligente de Criar seus Laudos Médicos Manual do Usuário Conteúdo 1. O que é o Smart Laudos?... 3 2. Características... 3 3. Instalação... 3 4. Menu do Sistema... 4 5. Configurando

Leia mais

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Criando Banco de Dados, Tabelas e Campos através do HeidiSQL Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 2 Pedreiros da Informação Criando Banco de Dados, Tabelas e Campos através do HeidiSQL

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

Operador de Computador. Informática Básica

Operador de Computador. Informática Básica Operador de Computador Informática Básica Instalação de Software e Periféricos Podemos ter diversos tipos de software que nos auxiliam no desenvolvimento das nossas tarefas diárias, seja ela em casa, no

Leia mais

Apresentação. Nossa sugestão é que você experimente e não tenha medo de clicar!!!

Apresentação. Nossa sugestão é que você experimente e não tenha medo de clicar!!! Apresentação Este manual é uma orientação para os participantes de cursos no ambiente Moodle do INSTITUTO PRISMA. Tem como objetivo orientar sobre as ações básicas de acesso e utilização do ambiente virtual

Leia mais

Criando uma agenda simples com NetBeans 6.5

Criando uma agenda simples com NetBeans 6.5 Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de

Leia mais

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO Compra Direta - Guia do Fornecedor PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO Página As informações contidas neste documento, incluindo quaisquer URLs e outras possíveis referências a web sites, estão sujeitas

Leia mais

Passo a Passo da instalação da VPN

Passo a Passo da instalação da VPN Passo a Passo da instalação da VPN Dividiremos este passo a passo em 4 partes: Requisitos básicos e Instalação Configuração do Servidor e obtendo Certificados Configuração do cliente Testes para saber

Leia mais