1 Customizando o Fusion. 1.1 Conhecendo os principais objetos do Fusion NeoObject InstantiableEntityInfo

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

Download "1 Customizando o Fusion. 1.1 Conhecendo os principais objetos do Fusion. 1.1.1 - NeoObject. 1.1.2 - InstantiableEntityInfo"

Transcrição

1

2 Sumário 1 Customizando o Fusion Conhecendo os principais objetos do Fusion NeoObject InstantiableEntityInfo EntityWrapper PersistEngine Persistindo os dados em um formulário Recuperando os dados de um formulário NeoUser Desenvolvendo adapters para Workflows Incluindo adapters no modelo do processo Exemplo de adapters de Workflow Persistindo dados em uma tabela externa Utilizando o Agendador de Tarefas Exemplo de Adapter para o Agendador de Tarefas Importador Simplificado Bloco Try...Catch Geração de Log Atividade Envio - Customizando Modelo de Exemplo de Modelagem Fluxo com Atividade de Envio de Exemplo de Modelo de Ferramentas e Utilitários Visualizando a estrutura de dados do formulário com dumpeformtree Visualizando os dados de um Objeto com dumpneoobject Habilitando log seletivo Consultando a base com SQL Visualizando os usuários online com activeusers... 23

3 1 Customizando o Fusion O Fusion ECM Suite foi desenvolvido pensando-se em escalabilidade. Como consequência cada contexto do Fusion está preparado para receber novas funcionalidades, portanto tudo que o produto padrão não contemple, pode ser desenvolvido como customização através do uso de Adapters Java. Para desenvolver adapters é necessário um ambiente de desenvolvimento com o Fusion instalado. O ambiente utilizado na Neomind é o Eclipse IDE. Também é essencial o conhecimento da linguagem de programação Java, especificamente no contexto de desenvolvimento de aplicações WEB. 1.1 Conhecendo os principais objetos do Fusion NeoObject NeoObject é o objeto mais genérico no Fusion, todos os outros objetos extendem ele. Para obter a Id de um Objeto utilize o método getneoid(). Também as questões de segurança do fusion estão associadas a este objeto, vários métodos de validações de segurança são invocados a partir do NeoObject InstantiableEntityInfo Entidades são classes que mapeiam e representam uma tabela no banco de dados. Para obter a instância de uma entidade, um objeto do tipo InstantiableEntityInfo deve ser criado para representá-la. Para criarmos uma instância de uma entidade usamos o método createnewentityinstance(string entityname) da classe AdapterUtils. O parâmetro do método é um objeto do tipo String que será o nome da entidade (formulário ou tabela) criado no Fusion. Lembrando que o formulário pode ser dinâmico ou externo. Este objeto é posteriormente passado como argumento dos métodos getobject()e getobjects() da classe PersitEngine, que realizam a busca na tabela(formulário). O código abaixo exemplifica o uso da entidade para mapear a tabela(formulário) Produto. O formulário Produto pode tanto ser um formulário dinâmico criado no banco do Fusion quanto uma tabela externa pertencente a um sistema legado. Se Produto for um formulário externo, a Fonte de Dados primeiramente deve ser criada no Fusion, e posteriormente o formulário externo, sendo que o Nome do formulário será o argumento passado para o método createnewentityinstance; // NeoObject é inicializado com uma instâcia que da entidade Produto NeoObject produtofusion = AdapterUtils.createNewEntityInstance("Produto");

4 EntityWrapper Wrappers são classes com o papel de encapsular as Entidades, abstraindo sua interface simplificando as operações de leitura e escrita dos dados no banco. No Fusion o EntityWrapper é a classe que encapsula a entidade. A tabela abaixo descreve os métodos mais usados do EntityWrapper: Método findfield findvalue findvalues findgenericvalue Descrição Retorna um Wrapper para manipulação do campo se o campo existir, senão retorna null Retorna um objeto com o valor do campo Retorna uma coleção de objetos Retorna um objeto genérico com o valor do campo No código abaixo primeiro criamos uma instância da entidade Produto e atribuímos ela a um NeoObject que representará a tabela no banco, em seguida embrulhamos ela com um wrapper instanciando a classe EntityWrapper passando para o construtor desta o argumento NeoObject contendo a entidade, encapsulando assim sua complexidade, agora todas operações de leitura e escrita no banco serão realizados através do objeto wrapper. Este método simplifica as operações de banco escondendo os detalhes de relacionamentos entre tabelas que serão controlados pelo Hibernate. // NeoObject é inicializado com uma instâcia da entidade Produto NeoObject produtofusion = AdapterUtils.createNewEntityInstance("Produto"); EntityWrapper wrapperprodutofusion = new EntityWrapper(produtoFusion);

5 PersistEngine A classe PersistEngine, existente no núcleo do Fusion, centraliza toda a comunicação com o banco de dados. É nela que os principais métodos de obtenção e atribuição de valores existentes no banco são implementados. A tabela abaixo descreve alguns dos métodos mais usados do PersistEngine: Método getconnection persit getobject getobjects Descrição Retorna um objeto de conexão para a fonte de dados. Recebe uma String com o nome da fonte de dados como parâmetro. Persiste os dados no banco, recebe como parâmetro um objeto que referencia a entidade. Retorna a instância de um objeto. Recebe como parâmetro um objeto classe. Retorna uma lista ou coleção de instâncias de objetos. Além do objeto representando a entidade os métodos também podem ter como parâmetro filtros, assim o resultado retornado será uma instância específica ou um subconjunto de instâncias de acordo com os critérios definidos pelos filtros Persistindo os dados em um formulário No exemplo abaixo, foi criado um formulário dinâmico com o nome de Produto com dois campos cujos nomes são código e descricao. Depois incluímos um registro no formulário utilizando o wrapper e por último persistimos o registro usando o método persit da classe PesistEngine. //instancia objeto no fusion e seta valores NeoObject produtofusion = AdapterUtils.createNewEntityInstance("Produto"); // cria wrapper para abstrair a Entidade que representa eduproduto EntityWrapper wrapperprodutofusion = new EntityWrapper(produtoFusion); // Atribui valores a variáveis locais String numeroproduto = AFR 233 ; String descricao = Montain Bike ; //Usa o wrapper para atribuir os valores aos campos wrapperprodutofusion.findfield("codigo").setvalue(numeroproduto); wrapperprodutofusion.findfield("descricao").setvalue(descricao); //persistindo os dados no banco PersistEngine.persist(produtoFusion);

6 Normalmente os passos para Ler/Escrever em formulários são : 1- Crie uma entidade para representar o formulário (tabela) //instancia objeto no fusion e seta valores NeoObject produtofusion = AdapterUtils.createNewEntityInstance("Produto"); 2- Crie um wrapper para encapsular a entidade // cria wrapper para abstrair a Entidade que representa eduproduto EntityWrapper wrapperprodutofusion = new EntityWrapper(produtoFusion); 3- Use o wrapper para escrever/ler/alterar os dados no banco // Atribui valores a variáveis locais String numeroproduto = AFR 233 ; String descricao = Montain Bike ; //Usa o wrapper para atribuir os valores aos campos wrapperprodutofusion.findfield("codigo").setvalue(numeroproduto); wrapperprodutofusion.findfield("descricao").setvalue(descricao); 4- Use o mecanismo de persistência do hibernate para persistir/remover os dados //persistindo os dados no banco PersistEngine.persist(produtoFusion); Recuperando os dados de um formulário O código abaixo exemplifica a recuperação dos registros em um formulário. Através do método getobjects os registros encontrados no formulário Produto são carregados para dentro de uma lista de objetos tipo NeoObject. Em seguida usamos um looping for para percorrer a lista usando um iterador percorremos cada registro até o final da lista, note que utilizamos um wrapper para para realizar a operação sobre a entidade (tabela), o método findfield retorna o campo do objeto e o método getvalue traz o valor do campo. No final usamos a classe System para mostrar os valores no console a cada iteração na lista. List<NeoObject> listaproduto = (List<NeoObject>) PersistEngine.getObjects(AdapterUtils.getEntityClass("Produtos")); for(neoobject produto : listaproduto) //dados eform externo EntityWrapper wrapperprodutos = new EntityWrapper(produto);

7 String codigo = (String) wrapperprodutos.findfield("codigo").getvalue(); String descricao = (String) wrapperprodutos.findfield("descricao").getvalue(); //mostra valores dos campos System.out.println(codigo+"\n"); System.out.println(descricao); //remove objeto PersistEngine.remove(produtoFusion); NeoUser A classe NeoUser representa a abstração de um usuário do sistema. Ela é utilizada quando uma ação específica a um usuário ou grupo de usuários deve ser realizada. Através dela, uma referência ao usuário atual do sistema é obtida, retornando um objeto, que pode ser utilizado em diversas ocasiões, como na verificação do papel do usuário. Para obter o usuário atual logado, utilize o código apresentado abaixo. // A variável user recebe o objeto que representa o usuário. NeoUser user = PortalUtil.getCurrentUser(); Para verificar o papel em que o usuário está inserido, é necessário criar o objeto que mantém a referência do usuário, conforme o código acima. O exemplo abaixo demonstra como verificar se o usuário atual está no papel Estagiário. boolean isestagiario = user.isinrole(securitymanager.getinstance().getrole("estagiário")); Através da variável user, que representa o usuário logado, utiliza-se o método isinrole(). Este método, por fim, recebe um parâmetro contendo o nome do papel, neste caso, Estagiário. Se o usuário estiver neste papel, a variável isestagiario receberá true, caso contrário, false.

8 2.2 Desenvolvendo adapters para Workflows Na fase de construção do Workflow algumas funcionalidades necessárias para automatizar o processo tais como integrações, validações, elementos de interface, etc. podem demandar o desenvolvimento de adapters de Workflow. Estes possuem características específicas dentro do contexto de Workflow, e devem implementar a classe AdapterInterface que possui dois métodos obrigatórios o método start() e o back(). Normalmente o código para os adapters de workflow é desenvolvido dentro destes dois métodos Incluindo adapters no modelo do processo Para incluirmos um adapter de workflow no processo, precisamos inclui-lo na modelagem. O adapter é uma atividade do tipo Script, para alterarmos a atividade para o tipo Script, clique na atividade, no ícone de atalho para o tipo de atividade escolha Script. Depois de alterado para o tipo Script a caixa de atividade mudará de cor, e também o Painel de Propriedades terá suas propriedades alteradas para o contexto de Script. No painel de propriedades preencha o campo Descrição, e no campo Tipo de Script deixe o valor padrão que é adapter, na propriedade Classe Java informe o namespace da classe Java desenvolvida. Muito cuidado com o namespace pois qualquer erro impedirá que o Adapter funcione.

9 A maneira mais segura de copiar o namespace no Eclipse é posicionar o cursor sobre o nome da classe e clicar com o botão direito, selecionar o item Copy Qualified Name, o Eclipse copiará para a área de transferência o namespace da classe. Cole na propriedade Classe Java no Painel de Propriedades. Assim a possibilidade de erros de digitação será anulada.

10 2.2.2 Exemplo de adapters de Workflow Persistindo dados em uma tabela externa public class CadastraPgtoERP implements public void start(task origin, EntityWrapper processentity, Activity activity) // TODO Auto-generated method stub StringBuffer sql = new StringBuffer(); sql.append("insert INTO produto"); sql.append(" (ProductID, Name, ProductNumber, Color, StandardCost, ListPrice, Size, Weight, SellStartDate,rowguide, ModifiedDate)"); sql.append(" VALUES(?,?,?,?,?,?,?,?,?, NEWID(), GETDATE() )"); Long productid = null; String name =null; String productnumber = null; String color = null; BigDecimal standadcost = null; BigDecimal listprice = null; String size = "45"; BigDecimal weight = new BigDecimal( ); GregorianCalendar sellstartdate = null; productid = (Long) processentity.findvalue("codigo"); name = (String) processentity.findvalue("nome"); productnumber = (String) processentity.findvalue("productnumber"); color = (String) processentity.findvalue("color"); standadcost = (BigDecimal) processentity.findvalue("cost"); listprice = (BigDecimal) processentity.findvalue("listprice"); sellstartdate =(GregorianCalendar) processentity.findvalue("sellstartdate"); Date x = new Date(sellStartDate.getTimeInMillis());//converte gregorian para Date Connection connection = PersistEngine.getConnection("Neo Produto"); PreparedStatement st = null; try connection.setautocommit(false); st = connection.preparestatement(sql.tostring()); st.setlong(1, productid); st.setstring(2, name); st.setstring(3, productnumber); st.setstring(4, color); st.setbigdecimal(5,standadcost); st.setbigdecimal(6, listprice); st.setstring(7, size); st.setbigdecimal(8, weight); st.setdate(9, x); st.executeupdate(); connection.commit(); catch (Exception e) e.printstacktrace(); throw new WorkflowException("Erro ao Salvar os dados "+e.getmessage()); finally try st.close(); connection.close(); catch (Exception e) e.printstacktrace();

11 3- Utilizando o Agendador de Tarefas O Agendador de Tarefas permite a execução de tarefas automaticamente de acordo com parâmetros temporais configurados previamente. Deste modo podemos gerar tarefas para sincronizar bancos, iniciar Workflows automaticamente, limpar logs, etc. As tarefas a serem executadas devem estar contidas em um adapter java, e devem implementar a interface CustomJobAdapter. O código a ser executado estará dentro do método execute. Para agendar uma tarefa clique em Novo, dê um nome e uma descrição para a tarefa, e defina o campo Habilitado para Sim. No campo Adapter informe o namespace da classe que será executada. Configure o Gatilho que executará a tarefa no painel Gatilho clique em Novo preencha os campos solicitados para repetir a execução agendada.

12 3.2 Exemplo de Adapter para o Agendador de Tarefas Importador Simplificado O código abaixo exemplifica a estrutura de um adapter para o agendador de tarefas. Neste exemplo os dados de uma tabela externa são importados para um formulário dinâmico do Fusion. public class ExemploAgendadorImportaDados implements public void execute(customjobcontext ctx) // TODO Auto-generated method stub List<NeoObject> listaproduto = (List<NeoObject>) PersistEngine.getObjects(AdapterUtils.getEntityClass("AdventureProdutos")); for(neoobject produto : listaproduto) //dados eform externo EntityWrapper wrapperprodutos = new EntityWrapper(produto); String descricao = (String) wrapperprodutos.findfield("name").getvalue(); String numeroproduto = (String) wrapperprodutos.findfield("productnumber").getvalue(); //instancia objeto no fusion e seta valores NeoObject produtofusion = AdapterUtils.createNewEntityInstance("Produto"); EntityWrapper wrapperprodutofusion = new EntityWrapper(produtoFusion); wrapperprodutofusion.findfield("codigo").setvalue(numeroproduto); wrapperprodutofusion.findfield("descricao").setvalue(descricao); //mostra valores dos campos a serem importados no console System.out.println(numeroProduto+"\n"); System.out.println(descricao); //persistindo objeto PersistEngine.persist(produtoFusion);

13 5 - Bloco Try...Catch Para manter um melhor controle da execução do código e otimizar o tratamento de erros, é importante que o código dos adapters seja inserido entre um ou mais blocos try...catch. A função deste bloco é isolar e tratar qualquer erro que ocorra no código, impedindo que este erro interrompa a execução de outra parte do código. O exemplo abaixo mostra um código simples de adapter. Primeiro, um campo é lido no workflow. Se o valor dele for diferente de Processo Judicial, o valor é alterado. Todo o código está envolvido no bloco try...catch e, caso um erro ocorra, uma mensagem é apresentada. public void start(task origin, EntityWrapper wrapper, Activity activity) try // início do bloco try String tipoprocesso = wrapper.findvalue( TipoProcesso ); if (!tipoprocesso.equals( Processo Judicial )) wrapper.findfield( TipoProcesso ).setvalue( Processo Judicial ); catch (Exception e) // fim do bloco try // Mensagem apresentada quando o erro ocorre System.out.println( Erro ao executar o código do adapter! ) 6 - Geração de Log A geração de logs é muito importante para realizar a manutenção do sistema. Quando um evento inesperado ocorre, é necessário que uma informação referente a ele seja gerada. Isto é feito através da classe LogFactory, que fornece os métodos necessários para se gerar o log do evento. O trecho de código abaixo reproduz a situação onde o valor de um campo denominado Versao é lido do e-form de um processo, através de um adapter, porém o nome do campo é passado de forma errada (Versaao), gerando um erro no Fusion que será gravado no log. //Criação do objeto log, utilizando o nome da classe atual private static final Log log = LogFactory.getLog(NomeDaClasse.class); public void start(task origin, EntityWrapper wrapper, Activity activity) try String versao = wrapper.findfield( Versaao ).getvalue(); catch (Exception e) log.error( Erro ao ler o campo Versao no e-form!,e);

14 7 Atividade Envio - Customizando Modelo de A comunicação é uma das áreas críticas dentro das organizações, mecanismos de notificação são extremamente úteis para que as metas sejam atingidas. No Fusion o envio de notificação por para as Atividades de Usuário é automático. No entanto, quando se trata de uma Atividade de Envio é necessário configurar o envio. Ao selecionar a Atividade de Envio na caixa de atividades ela mudará de cor e as propriedades de configuração serão alteradas para o Tipo Envio. Neste tipo de atividade a continuidade do fluxo não depende da execução da atividade para avançar. É utilizada como informativo para pessoas que não executam nenhuma tarefa no processo, mas precisam ser notificadas quando algum evento ou atividade acontece e também para notificar pessoas externas a organização, que não utilizam o Fusion. No Painel de Propriedades o campo Enviar para participante: Indica se o vai ser enviado para o participante da Raia. Se Sim o de notificação será enviado para os participantes da raia (usuário/papel/grupo). Se o valor de Enviar para Participante for Não o campo Enviar para deve ser preenchido com um campo do tipo Usuário/Papel/Grupo, ou tipo Texto quando os destinatários não forem usuários do Fusion. Neste caso os s dos destinatários devem ser separados por ponto e vírgula (;) e podem ser preenchidos em tempo de execução ou incluídos na Propriedade Valor Padrão do campo tipo Texto. Caso o deva ser enviado tanto para usuários do Fusion participantes da Raia e para pessoas que não utilizam o Fusion (parceiros de negócios). O valor do Campo Enviar para participante deve ser sim e o valor do campo Enviar para também deve ser preenchido.

15 Para que esta atividade funcione é necessário informar o Modelo do que será utilizado. Para isto, se faz necessário criar uma servlet java que renderizará o formatado. Através deste modelo poderemos informar no corpo do informações específicas da instância do processo. Por exemplo, o solicitante, data da solicitação ou qualquer campo que faça parte do formulário do processo, inclusive dados de formulários externos que sejam filhos do formulário do processo. O nome do modelo deve ser informado juntamente com o caminho em que se encontra no servidor na pasta de instalação do Fusion. No caso de modelo de o arquivo modelo deverá ser salvo na pasta mail. As imagens usadas no corpo do devem ser salvas na pasta imagens na pasta de instalação do Fusion. No exemplo abaixo foi informado o seguinte valor no campo Modelo do /mail/envia exemplo.jsp. Mais abaixo mostramos o código do arquivo envia exemplo.jsp.

16 7.1 Exemplo de Modelagem Fluxo com Atividade de Envio de No fluxo abaixo temos um exemplo simples do uso da Atividade de Envio. O fluxo inicia na tarefa Solicitar Inclusão Novo Produto solicitando a inclusão, em seguida é usado o componente de Decisão Paralela para dividir o fluxo notificando os participantes da Raia Notificados e ao mesmo tempo segue para aprovação. Na tarefa Aprovar Inclusão o gestor da área aprovará ou não a inclusão do novo produto, caso ele aprove, o fluxo seguirá para a tarefa Incluir Produto em seguida notificando os interessados. Caso o gestor não aprove, o fluxo seguirá para a atividade de notificação. Antes do final mais um componente de Decisão paralela é utilizado, neste caso para unir os dois fluxos novamente. Na atividade Notifica Solicitação a propriedade Enviar para participantes está com o valor Sim, e neste caso a notificação será apenas para os usuários participantes da Raia Na atividade Notifica Status Final o objetivo é notificar os participantes da Raia bem como, pessoas externas a organização, portando o campo Enviar para também está

17 configurado, neste caso com um campo do tipo Texto cujo Valor Padrão é uma lista de separado por ponto e virgula (;). 7.2 Exemplo de Modelo de O código abaixo exemplifica a criação do modelo de import="com.neomind.fusion.portal.portalutil"%> import="com.neomind.fusion.common.neoobject"%> import="com.neomind.fusion.persist.persistengine"%> taglib uri="/web-inf/mail.tld" prefix="mail"%> taglib uri="/web-inf/workflow.tld" prefix="wf"%> taglib uri="/web-inf/portal.tld" prefix="portal"%> import="java.util.*"%> import="java.sql.time"%> import="com.neomind.util.neoutils"%> import="com.neomind.fusion.entity.entitywrapper"%> import="com.neomind.fusion.workflow.activity"%> import="com.neomind.fusion.workflow.task"%> import="com.neomind.util.neocalendarutils"%> <% NeoObject obj = (NeoObject)request.getAttribute("Entity"); EntityWrapper wrapper = new EntityWrapper(obj); String processo = (String) wrapper.findvalue("wfprocess.model.name");//nome DO PROCESSO String codigo = (String)wrapper.findValue("wfprocess.code"); //CODIGO PROCESSO String codigoproduto = NeoUtils.safeOutputString(wrapper.findValue("codigo"));//CODIGO PRODUTO String descricao = NeoUtils.safeOutputString(wrapper.findValue("descricao"));// DESCRIÇÃO String observacao = NeoUtils.safeOutputString(wrapper.findValue("observacao"));// OBSERVÇÃO GregorianCalendar datasol = (GregorianCalendar) wrapper.findvalue("datasolicitacao");// PEGA A DATA NO FORMATO JAVA CALENDAR String datasolicitacaotexto = NeoCalendarUtils.fullDateToString(dataSol);//CONVERTE DATA PARA STRING String title= "Solicitação de Novo Produto" + " - " + codigo; %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=iso " /> <portal:baseurl url="geturlpath" /> <base href="<%= PortalUtil.getBaseURL() %>" /> </head> <body bgcolor="#fff1d2"> <p><mail:title title='<%=title %>' /></p> <mail:img src="/imagens/cabecalho.jpg" width="768" height="124" /> <h3><u><%=codigo %> - <%=processo %></u></h3> <p> <strong>codigo Produto</strong> <%=codigoproduto%> </p> <p> <strong>descrição do Produto :</strong> <%=descricao%></p> <p> <strong>observação:</strong> <%=observacao%> </p> <p><strong>data Solicitação :</strong> <%=datasolicitacaotexto%></p> <mail:img src="/imagens/rodape.jpg" width="768" height="145" /> </body> </html>

18 Normalmente para criarmos um template de usamos os passos a seguir: 1 Importamos as classes necessárias import="com.neomind.fusion.portal.portalutil"%> import="com.neomind.fusion.common.neoobject"%> import="com.neomind.fusion.persist.persistengine"%> taglib uri="/web-inf/mail.tld" prefix="mail"%> taglib uri="/web-inf/workflow.tld" prefix="wf"%> taglib uri="/web-inf/portal.tld" prefix="portal"%> import="java.util.*"%> import="java.sql.time"%> import="com.neomind.util.neoutils"%> import="com.neomind.fusion.entity.entitywrapper"%> import="com.neomind.fusion.workflow.activity"%> import="com.neomind.fusion.workflow.task"%> import="com.neomind.util.neocalendarutils"%> 2- Usamos o método getattribute do Objeto Request para pegarmos os dados vindos do processo, assim teremos acesso aos dados preenchidos na atividade do processo através do argumento Entity que representa o formulário principal do processo. NeoObject obj = (NeoObject)request.getAttribute("Entity"); 3-Criamos um objeto wrapper para encapsular a entidade. EntityWrapper wrapper = new EntityWrapper(obj); 5- Atribuímos o valor dos campos provenientes do processo a variáveis locais realizando conversões de tipo quando necessário. Os valores passados para o método findvalue do objeto wrapper são os nomes dos campos do formulário do processo. String processo = (String) wrapper.findvalue("wfprocess.model.name");//nome DO PROCESSO String codigo = (String)wrapper.findValue("wfprocess.code"); //CODIGO PROCESSO String codigoproduto = NeoUtils.safeOutputString(wrapper.findValue("codigo"));//CODIGO PRODUTO String descricao = NeoUtils.safeOutputString(wrapper.findValue("descricao"));// DESCRIÇÃO String observacao = NeoUtils.safeOutputString(wrapper.findValue("observacao"));// OBSERVÇÃO GregorianCalendar datasol = (GregorianCalendar) wrapper.findvalue("datasolicitacao");// PEGA A DATA NO FORMATO JAVA CALENDAR String datasolicitacaotexto = NeoCalendarUtils.fullDateToString(dataSol);//CONVERTE PARA STRING String title= "Solicitação de Novo Produto" + " - " + codigo;

19 6- Formatamos o código HTML que será gerado pela Servlet, incluímos as variáveis locais dentro das tags jsp <% %> inseridas no código HTML para renderizar os valores do campos do processo no corpo do . <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=iso " /> <portal:baseurl url="geturlpath" /> <base href="<%= PortalUtil.getBaseURL() %>" /> </head> <body bgcolor="#fff1d2"> <p><mail:title title='<%=title %>' /></p> <mail:img src="/imagens/cabecalho.jpg" width="768" height="124" /> <h3><u><%=codigo %> - <%=processo %></u></h3> <p> <strong>codigo Produto</strong> <%=codigoproduto%> </p> <p> <strong>descrição do Produto :</strong> <%=descricao%></p> <p> <strong>observação:</strong> <%=observacao%> </p> <p><strong>data Solicitação :</strong> <%=datasolicitacaotexto%></p> <mail:img src="/imagens/rodape.jpg" width="768" height="145" /> </body> </html> A imagem abaixo ilustra como ficaria o padrão de acordo como o código acima:

20 8 Ferramentas e Utilitários O Fusion traz um conjunto de ferramentas administrativas em forma de servlets que é extremamente útil para utilização avançada do ambiente. Estas ferramentas facilitam muito o processo de construção de workflows e customizações do sistema. Vamos ver as principais ferramentas e sua utilização prática. 8.1 Visualizando a estrutura de dados do formulário com dumpeformtree Este servlet mostra a estrutura do formulário no formato de árvore, facilitando a visualização de todos os campos e sua estrutura. Para utilizarmos o dumpeformtree precisamos do perfil administrador, só este possui acesso as ferramentas de administração. Para carregarmos este servlet basta informarmos no Navegador a URL padrão das ferramentas administrativas seguida do nome da servlet e por último o nome do formulário. Conforme o exemplo abaixo: Importante: neste servidor o Fusion está rodando na porta 8080 como localhost, portanto substitua a parte pela correspondente em seu ambiente. SacPrincipal é o nome do formulário Para navegar nesta estrutura clique nos campos, se forem do tipo formulário expandirão e mostrarão os campos do mesmo.

21 8.2 Visualizando os dados de um Objeto com dumpneoobject Com este servlet é possível visualizar os dados estruturados de um objeto. Para carregarmos este servlet basta informarmos no Navegador a URL padrão das ferramentas administrativas seguida da id do Objeto. Como todos objetos do Fusion possuem uma NeoId, por exemplo, no item anterior utilizamos o dumpeformtree para vermos a estrutura de dados do formulário, notem o campo dadoscliente, o número que aparece é o NeoId deste objeto veja imagem. Agora chamamos a servlet passando este número veja abaixo:

22 8.3 Habilitando log seletivo Com o log seletivo podemos habilitar o log de acordo com um contexto específico, facilitando a depuração erros no código. Chame a URL abaixo para carregar o log seletivo: Selecione nas opções quais logs específicos desejar. 8.4 Consultando a base com SQL O servlet SQL permite utilizarmos a linguagem SQL diretamente no banco do Fusion ou em fontes de dados cadastradas no Fusion. Chame a URL abaixo para carregar o servlet de SQL: Note que os formulários dinâmicos tornam-se tabelas com o prefixo D_ e formulários externos com o prefixo EXT_.

23 8.5 Visualizando os usuários online com activeusers O servlet activeusers lista todos os usuários do sistema que estão online no momento. Permitindo o monitoramento do sistema. Chame a URL abaixo para carregar o servlet activeusers:

Java na Web. Aplicações Web

Java na Web. Aplicações Web Montando o ambiente com HSQLDB JSP com um conteúdo de banco de dados: JDBC Integre JSPs com servlets aplicando o Modelo-Visualização- Controle Montando o ambiente com HSQLDB Faça a transferênci da página

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

Unidade 9: Middleware JDBC para Criação de Beans

Unidade 9: Middleware JDBC para Criação de Beans Programação Servidor para Sistemas Web 1 Unidade 9: Middleware JDBC para Criação de Beans Implementando MVC Nível 1 Prof. Daniel Caetano Objetivo: Preparar o aluno para construir classes de entidade com

Leia mais

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart.

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. 16/08/2013 BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. Versão 1.0 19/12/2014 Visão Resumida Data Criação 19/12/2014 Versão Documento 1.0 Projeto

Leia mais

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro.

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro. Material de apoio a aulas de Desenvolvimento Web Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS AAS - www.aas.pro.net Março-2012 Este pequeno tutorial tem como objetivo conduzir o programador passo-a-passo

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

Java Beans e Servlets

Java Beans e Servlets 6 Java Beans e Servlets Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Apresentar os recursos de orientação à objetos Java em JSP e integrá-los a tecnologia

Leia mais

TUTORIAL JSP & SERVLET

TUTORIAL JSP & SERVLET TUTORIAL JSP & SERVLET A.A.S. UNINOVE WWW.AAS.PRO.BR Exemplo simples de JSP com Servlet (para envio e recebimento de dados) Sumário JSP & SERVLET... 2 1. Criando Projeto... 2 2. O primeiro JSP... 3 3.

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

Índice. http://www.gosoft.com.br/atualiza/gosoftsigadmservico.pdf Versão 4.0

Índice. http://www.gosoft.com.br/atualiza/gosoftsigadmservico.pdf Versão 4.0 Índice I ENVIO DE BOLETOS POR E-MAIL... 2 APRESENTAÇÃO... 2 ALTERAÇÕES NO SIGADM CONDOMÍNIO... 4 ALTERAÇÕES NO SIGADM IMÓVEIS... 6 ALTERAÇÕES NO SIGADM CONCILIAÇÃO BANCÁRIA... 8 ALTERAÇÕES NO SIGADM CONDOMÍNIO

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Marcelo Lobosco DCC/UFJF Comunicação em Sistemas Distribuídos Aula 06 Agenda Modelo Cliente-Servidor (cont.) Invocação Remota de Método (Remote Method Invocation RMI) Visão Geral

Leia mais

Produto IV: ATU SAAP. Manual de Referência

Produto IV: ATU SAAP. Manual de Referência Produto IV: ATU SAAP Manual de Referência Pablo Nogueira Oliveira Termo de Referência nº 129275 Contrato Número 2008/000988 Brasília, 30 de outubro de 2008 1 Sistema de Apoio à Ativideade Parlamentar SAAP

Leia mais

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES

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

Leia mais

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

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

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser A1Criando um módulo de negócio Capítulo 27 Aplicação dividida em módulos - Introdução Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser compreendido como uma solução de

Leia mais

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA FERRAMENTAS DE COLABORAÇÃO CORPORATIVA Manual de Utilização Google Grupos Sumário (Clique sobre a opção desejada para ir direto à página correspondente) Utilização do Google Grupos Introdução... 3 Página

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

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br JSP (Java Server Pages) - JavaServer Pages (JSP) - Tecnologia de programação serverside - Permite

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

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

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

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

inux Sistemas Ltda. MANUAL DO USUÁRIO www.inux.com.br

inux Sistemas Ltda. MANUAL DO USUÁRIO www.inux.com.br 2013 inux Sistemas Ltda. s MANUAL DO USUÁRIO www.inux.com.br Sumário 1 Introdução... 2 2 Visão Geral do Sistema... 2 3 Tela de Configuração... 3 4 Tela de Mensagens... 5 5 Tela de Importação... 8 6 Tela

Leia mais

2.3.9 - Fluxo de Sequência... 29 2.3.9.1 - Definindo Regras de Negócio no Fluxo de Sequência... 30 2.3.10 - Temporizador... 31 2.4 Validando o modelo

2.3.9 - Fluxo de Sequência... 29 2.3.9.1 - Definindo Regras de Negócio no Fluxo de Sequência... 30 2.3.10 - Temporizador... 31 2.4 Validando o modelo Doc v.1 Sumário 1 - Definindo a Estrutura de Dados do Processo... 4 1.1 - Criação de Formulários Dinâmicos... 4 1.1.1 - Descrição dos campos do formulário:... 6 1.1.2 - Criando os campos do Formulário...

Leia mais

Programação para Android. Aula 08: Persistência de dados SQL

Programação para Android. Aula 08: Persistência de dados SQL Programação para Android Aula 08: Persistência de dados SQL Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados. Para guardar informações de forma persistente

Leia mais

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS COTAS DE DISCO. Professor Carlos Muniz

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS COTAS DE DISCO. Professor Carlos Muniz ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS Trabalhando com cotas Usando o Gerenciador de Recursos de Servidor de Arquivos para criar uma cota em um volume ou uma pasta, você pode limitar o espaço em disco

Leia mais

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Manual do Publicador Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Sumário Painel de Administração... 3 1 - Inserção de post... 5 2 Publicação de post com notícia na área headline (galeria de

Leia mais

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

AJAX no GASweb. Mas e afinal, para que usamos o AJAX? Nível - Avançado AJAX no GASweb Por: Pablo Hadler AJAX (Asynchronous Javascript and XML) foi criado com o princípio de ser uma maneira rápida e otimizada de podermos fazer requisições Web, sendo esta totalmente

Leia mais

Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL.

Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL. Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL. Procuraremos mostrar os principais procedimentos para fazer um cadastro de registros numa base de dados MySQL utilizando a linguagem

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 1 PROF. EMILIO PARMEGIANI

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 1 PROF. EMILIO PARMEGIANI DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 1 PROF. EMILIO PARMEGIANI Exercício 1 Neste exercício trabalharemos com alguns web controls básicos e praticaremos os tipos de dados do C#. Vamos criar

Leia mais

MANUAL DE MEMBRO COMUNIDADE DO AMIGO

MANUAL DE MEMBRO COMUNIDADE DO AMIGO SUMÁRIO Efetuando o Login na comunidade... 3 Esqueceu sua senha?... 3 Página Principal... 4 Detalhando o item Configurações... 5 Alterar Foto... 5 Alterar Senha... 5 Dados Pessoais... 6 Configurações de

Leia mais

www.coldfusionbrasil.com.br

www.coldfusionbrasil.com.br www.coldfusionbrasil.com.br 2000 1 O que é Cold Fusion? 3 Arquitetura Cold Fusion 3 Cold Fusion Markup Language (CFML) 4 O que devo saber para programar em CFML? 4 HTML 4 Desenho de Banco de Dados Relacionais

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

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

Leia mais

MANUAL DO ADMINISTRADOR

MANUAL DO ADMINISTRADOR WinShare Proxy admin MANUAL DO ADMINISTRADOR Instalação do WinShare Índice 1. Instalação 2. Licenciamento 3. Atribuindo uma senha de acesso ao sistema. 4. Configurações de rede 5. Configurações do SMTP

Leia mais

Manual de Envio de Torpedos SMS Comtele. Introdução... 02. 1.Cadastrar um Grupo... 02. 2.Inserir ou Importar Contatos... 06. 2.1 Ordem de envio...

Manual de Envio de Torpedos SMS Comtele. Introdução... 02. 1.Cadastrar um Grupo... 02. 2.Inserir ou Importar Contatos... 06. 2.1 Ordem de envio... Manual de Envio de Torpedos SMS Comtele Índice Introdução... 02 1.Cadastrar um Grupo... 02 2.Inserir ou Importar Contatos... 06 2.1 Ordem de envio... 08 3.Criar e Enviar uma Mensagens... 12 4. Salvando

Leia mais

Aplicativos para Internet Aula 01

Aplicativos para Internet Aula 01 Aplicativos para Internet Aula 01 Arquitetura cliente/servidor Introdução ao HTML, CSS e JavaScript Prof. Erika Miranda Universidade de Mogi das Cruzes Uso da Internet http://www.ibope.com.br/pt-br/noticias/paginas/world-wide-web-ou-www-completa-22-anos-nesta-terca-feira.aspx

Leia mais

Criação e Configuração do APP do Facebook

Criação e Configuração do APP do Facebook Criação e Configuração do APP do Facebook Acesse o perfil de sua conta no Facebook e logo em seguida acesse o link abaixo: https://developers.facebook.com Você estará na pagina de Developers do Facebook

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

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

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

Leia mais

Gestão inteligente de documentos eletrônicos

Gestão inteligente de documentos eletrônicos Gestão inteligente de documentos eletrônicos MANUAL DE UTILIZAÇÃO VISÃO DE EMPRESAS VISÃO EMPRESAS - USUÁRIOS (OVERVIEW) No ELDOC, o perfil de EMPRESA refere-se aos usuários com papel operacional. São

Leia mais

Leonardo Gresta Paulino Murta leomurta@gmail.com

Leonardo Gresta Paulino Murta leomurta@gmail.com Leonardo Gresta Paulino Murta leomurta@gmail.com O Que é JDBC? API de acesso a banco de dados relacional do Java Faz uso do driver provido pelo banco de dados Roda SQL (create, insert, update, etc.) no

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

AVISO. O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio.

AVISO. O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio. AVISO O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio. Nenhuma parte desta publicação pode ser reproduzida nem transmitida

Leia mais

TUTORIAL DE INTRODUÇÃO AO CEWOLF

TUTORIAL DE INTRODUÇÃO AO CEWOLF 1 TUTORIAL DE INTRODUÇÃO AO CEWOLF CRIANDO GRÁFICOS COM JSP, CEWOLF/JFREECHART E MYSQL 1. Introdução O Cewolf (http://cewolf.sourceforge.net/) é uma biblioteca que facilita a criação de gráficos dinâmicos

Leia mais

Integração TOTVS Microsiga Protheus e Fluig ECM

Integração TOTVS Microsiga Protheus e Fluig ECM 08/2013 Sumário Sumário... 2 1 Objetivo... 3 2 Integração manual... 3 2.1 Formulário... 3 2.1.1 ECM... 3 2.1.2 Protheus... 4 2.1.3 MVC... 5 2.1.4 Rotina Automática (Modelo 1)... 6 2.2 Processo... 7 2.3

Leia mais

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e

Leia mais

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos Novell Vibe 4.0 Março de 2015 Inicialização Rápida Quando você começa a usar o Novell Vibe, a primeira coisa a se fazer é configurar sua área de trabalho pessoal e criar uma área de trabalho de equipe.

Leia mais

A barra de menu a direita possibilita efetuar login/logout do sistema e também voltar para a página principal.

A barra de menu a direita possibilita efetuar login/logout do sistema e também voltar para a página principal. MANUAL DO SISCOOP Sumário 1 Menu de Navegação... 3 2 Gerenciar País... 5 3- Gerenciamento de Registro... 8 3.1 Adicionar um registro... 8 3.2 Editar um registro... 10 3.3 Excluir um registro... 11 3.4

Leia mais

MANUAL DO USUÁRIO SUMÁRIO

MANUAL DO USUÁRIO SUMÁRIO SUMÁRIO 1. Home -------------------------------------------------------------------------------------------------------- 7 2. Cadastros -------------------------------------------------------------------------------------------------

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

Desenvolvendo Aplicações Web com NetBeans

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

Leia mais

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

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

Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc.

Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc. CRIANDO UMA CAMPANHA Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc. O primeiro passo é adicionar uma lista, as lista basicamente são grupos

Leia mais

Introdução. Nesta guia você aprenderá:

Introdução. Nesta guia você aprenderá: 1 Introdução A criação de uma lista é a primeira coisa que devemos saber no emailmanager. Portanto, esta guia tem por objetivo disponibilizar as principais informações sobre o gerenciamento de contatos.

Leia mais

J550. Model View Controller

J550. Model View Controller J550 Model View Controller 1 Design de aplicações JSP Design centrado em páginas Aplicação JSP consiste de seqüência de páginas (com ou sem beans de dados) que contém código ou links para chamar outras

Leia mais

Tutorial Jogo da Velha WEB

Tutorial Jogo da Velha WEB Tutorial Jogo da Velha WEB Criação do Projeto 1- Inicie o Eclipse 2- Crie um novo projeto Web dinâmico. 3- Na tela seguinte, digite o nome do projeto e caso no campo Target Runtime não estiver aparecendo

Leia mais

Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade Quando métodos são invocados sobre um objeto:

Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade Quando métodos são invocados sobre um objeto: Tratamento de Exceções Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Exceções Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade

Leia mais

Capítulo 7 O Gerenciador de Arquivos

Capítulo 7 O Gerenciador de Arquivos Capítulo 7 O Gerenciador de Arquivos Neste capítulo nós iremos examinar as características da interface do gerenciador de arquivos Konqueror. Através dele realizaremos as principais operações com arquivos

Leia mais

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5 JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,

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

Apache -Tomcat. Instalação e Configuração. Grupo Multitecnus, 2012 www.multitecnus.com

Apache -Tomcat. Instalação e Configuração. Grupo Multitecnus, 2012 www.multitecnus.com Apache -Tomcat Instalação e Configuração Grupo Multitecnus, 2012 www.multitecnus.com 1) Baixe o arquivo de instalação do Apache-Tomcat 7 (neste exemplo, foi obtido do endereço http://tomcat.apache.org/download-70.cgi

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

Novell Vibe 3.4. Novell. 1º de julho de 2013. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos

Novell Vibe 3.4. Novell. 1º de julho de 2013. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos Novell Vibe 3.4 1º de julho de 2013 Novell Inicialização Rápida Quando você começa a usar o Novell Vibe, a primeira coisa a se fazer é configurar sua área de trabalho pessoal e criar uma área de trabalho

Leia mais

SSE 3.0 Servidor de Notificação por E-Mail. Cadastrando E-Mail

SSE 3.0 Servidor de Notificação por E-Mail. Cadastrando E-Mail SSE 3.0 Modulo Servidor de Notificação de E-Mail - 1 SSE 3.0 Servidor de Notificação por E-Mail O módulo servidor de notificação por e-mail tem como objetivo enviar uma notificação via e- mail para os

Leia mais

Tutorial Plone 4. Manutenção de Sites. Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados

Tutorial Plone 4. Manutenção de Sites. Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados Tutorial Plone 4 Manutenção de Sites Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados Sumário Introdução 1 Como fazer a autenticação do usuário 1.1 Através do

Leia mais

EMENTA DO CURSO. Tópicos:

EMENTA DO CURSO. Tópicos: EMENTA DO CURSO O Curso Preparatório para a Certificação Oracle Certified Professional, Java SE 6 Programmer (Java Básico) será dividido em 2 módulos e deverá ter os seguintes objetivos e conter os seguintes

Leia mais

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

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

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

Prática em Laboratório N.02 Criando um serviço Web via NetBeans

Prática em Laboratório N.02 Criando um serviço Web via NetBeans Prática em Laboratório N.02 Criando um serviço Web via NetBeans O objetivo deste exercício é criar um projeto apropriado para desenvolver um contêiner que você resolva utilizar. Uma vez criado o projeto,

Leia mais

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB) Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido

Leia mais

Presskit Guia Rápido. Release 2.0. Presskit

Presskit Guia Rápido. Release 2.0. Presskit Presskit Guia Rápido Release 2.0 Presskit 06/07/2009 Sumário 1 Login 2 Login e Senha...................................... 2 Esqueci minha senha.................................. 2 Fale Com o Suporte...................................

Leia mais

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

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

Leia mais

DWR DIRECTED WEB REMOTING

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

Leia mais

USANDO APPLETS NO NETBEANS (WEB APPLICATION)...E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011)

USANDO APPLETS NO NETBEANS (WEB APPLICATION)...E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011) USANDO APPLETS NO NETBEANS (WEB APPLICATION)......E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011) PASSO 1 Na estrutura do Netbeans vamos ter: Pacote externo (aqui

Leia mais

USANDO O ROUNDCUBE WEBMAIL

USANDO O ROUNDCUBE WEBMAIL USANDO O ROUNDCUBE WEBMAIL ATENÇÃO! Para utilizar este tutorial não se esqueça: Onde estiver escrito seusite.com.br substitua pelo ENDEREÇO do seu site (domínio). Ex.: Se o endereço do seu site é casadecarnessilva.net

Leia mais

Manual Email marketing v.240215

Manual Email marketing v.240215 1º Passo Acessar a página www.marketing.vardigital.com.br e fazer login com os seguintes dados: Usuário: email@dominio Senha: var@emkt 2º Passo A página seguinte é o painel geral de administração, sendo

Leia mais

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3 ÍNDICE Sobre o módulo de CRM... 2 1 Definindo a Campanha... 3 1.1 Incluir uma campanha... 3 1.2 Alterar uma campanha... 4 1.3 Excluir... 4 1.4 Procurar... 4 2 Definindo os clientes para a campanha... 4

Leia mais

Assessoria Técnica de Tecnologia da Informação - ATTI. Projeto de Informatização da. Secretaria Municipal de Saúde do. Município de São Paulo

Assessoria Técnica de Tecnologia da Informação - ATTI. Projeto de Informatização da. Secretaria Municipal de Saúde do. Município de São Paulo Assessoria Técnica de Tecnologia da Informação - ATTI Projeto de Informatização da Secretaria Municipal de Saúde do Município de São Paulo Agendamento Regulado Unidades Solicitantes Manual de Operação

Leia mais

Cadastramento de usuário. Acesse o site www.tefmatic.com.br. Clique no link Criar uma conta.

Cadastramento de usuário. Acesse o site www.tefmatic.com.br. Clique no link Criar uma conta. 1 Tutorial Tefmatic. Index: Cadastro de usuário no site Pag. 02 Cadastro de empresa parceira Pag. 04 Cadastro de clientes Pag. 05 Abertura de chamado técnico - Pag. 06 Impressão de boletos segunda via.

Leia mais

Repeater no GASweb. Regiões

Repeater no GASweb. Regiões Repeater no GASweb Por: Rodrigo Silva O controle de servidor Repeater é um container básico que permite a você criar uma lista de qualquer informação que deseja em uma página Web. Ele não tem uma aparência

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

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

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

Leia mais

TML 2.3 MANUAL DO PROGRAMA DE ENVIO DE EMAIL TML 2.3 Tela 1 - Início Apenas apresentação do Programa

TML 2.3 MANUAL DO PROGRAMA DE ENVIO DE EMAIL TML 2.3 Tela 1 - Início Apenas apresentação do Programa MANUAL DO PROGRAMA DE ENVIO DE EMAIL TML 2.3 Tela 1 - Início Apenas apresentação do Programa Tela Inícial Tela inicial do programa TML outlook 2.3 Tela de Cadastro de Servidores Está é a tela onde você

Leia mais

2.0.0.X. Storage Client. TecnoSpeed. Tecnologia da Informação. Manual do Storage Client

2.0.0.X. Storage Client. TecnoSpeed. Tecnologia da Informação. Manual do Storage Client 2.0.0.X TecnoSpeed Tecnologia da Informação Storage Client Manual do Storage Client 1 Conteúdo 1. Apresentação... 3 1.1. Apresentação do Produto... 3 1.2. Sobre este Manual... 3 2. Sobre o Storage Client...

Leia mais

Guia de administração. BlackBerry Professional Software para Microsoft Exchange. Versão: 4.1 Service pack: 4B

Guia de administração. BlackBerry Professional Software para Microsoft Exchange. Versão: 4.1 Service pack: 4B BlackBerry Professional Software para Microsoft Exchange Versão: 4.1 Service pack: 4B SWD-313211-0911044452-012 Conteúdo 1 Gerenciando contas de usuários... 7 Adicionar uma conta de usuário... 7 Adicionar

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

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

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia LGTi Tecnologia Soluções Inteligentes Manual - Outlook Web App Siner Engenharia Sumário Acessando o Outlook Web App (Webmail)... 3 Email no Outlook Web App... 5 Criar uma nova mensagem... 6 Trabalhando

Leia mais

Manual do Instar Mail Sumário

Manual do Instar Mail Sumário Manual do Instar Mail Sumário 1 - Apresentação do sistema... 2 2 - Menu cliente... 2 3 - Menu Importação... 5 4 - Menu Campanhas... 9 5 - Menu banco de arquivos... 16 6 - Menu agendamento... 16 7 - Menu

Leia mais

Manual do Painel Administrativo

Manual do Painel Administrativo Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...

Leia mais

VISTORIA DO SISTEMA REGIN PREFEITURAS

VISTORIA DO SISTEMA REGIN PREFEITURAS Página 1 / 29 ÍNDICE ÍNDICE... 2 APRESENTAÇÃO... 3 MÓDULO DE ACESSO... 3 CONFIGURAÇÃO MÓDULO VISTORIA... 4 ANÁLISE DOS PROTOCOLOS... 5 CONTROLE DE EXPORTAÇÃO MÓDULO VISTORIA... 8 DISPOSITIVO REGIN PREFEITURA...

Leia mais

Manual de instalação, configurações e uso do LiveZilla

Manual de instalação, configurações e uso do LiveZilla Manual de instalação, configurações e uso do LiveZilla Sumário Criando Servidor/Conta Livezilla... 1 Configurando e colocando ícone Livezilla no Site... 12 Editando perfil seu e do chat... 22 Criando Servidor/Conta

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

SSE 3.0. Guia Rápido. Módulo Secretaria. Nesta Edição

SSE 3.0. Guia Rápido. Módulo Secretaria. Nesta Edição SSE 3.0 Guia Rápido Módulo Secretaria Nesta Edição 1 Acessando o Módulo Secretaria 2 Cadastros Auxiliares 3 Criação de Modelos Definindo o Layout do Modelo Alterando o Layout do Cabeçalho 4 Parametrização

Leia mais

WF Processos. Manual de Instruções

WF Processos. Manual de Instruções WF Processos Manual de Instruções O WF Processos é um sistema simples e fácil de ser utilizado, contudo para ajudar os novos usuários a se familiarizarem com o sistema, criamos este manual. Recomendamos

Leia mais

Conecta S_Line. 2.2 Downloads Para instalar o Conecta S_Line, basta acessar www.sline.com.br/downloads.aspx

Conecta S_Line. 2.2 Downloads Para instalar o Conecta S_Line, basta acessar www.sline.com.br/downloads.aspx 1 Introdução O Conecta S_Line permite que o laboratório envie à Central S_Line os resultados de exames gerados pelo Sistema de Informação Laboratorial (LIS) em forma de arquivos digitais. Todo o processo

Leia mais

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução SCIM 1.0 Guia Rápido Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal Introdução Nesta Edição O sistema de Controle Interno administra o questionário que será usado no chek-list

Leia mais