Sistema Eletrônico do Serviço de Informações ao Cidadão e-sic



Documentos relacionados
Antes de iniciar execute o script do banco de dados no SQLYOG ou outra ferramenta de sua preferência

Manual do Desenvolvedor Criptografia de Arquivos do WebTA

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

OWL-S Composer. MATE15 - Tópicos Especiais em Banco de Dados III. 17 de Julho de Marco Antonio Almeida 1 e Daniela Barreiro Claro 2

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Passos para a configuração do ambiente de desenvolvimento:

Acesso a banco de dados

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

TUTORIAL SISTEMA DE CONTROLE DE ACESSO

Sistema Eletrônico do Serviço de Informações ao Cidadão e-sic

Configurar o Furbot no Eclipse

CONEXÃ O NFS-E SISTEMÃ ISS-INTEL UTILIZÃNDO JÃVÃ E SSL

Utilizando o correio eletrônico da UFJF com Thunderbird e IMAP

INF1013 MODELAGEM DE SOFTWARE

Java para Desktop. Introdução à Plataforma Java JSE

Revisão: - 1 Desinstalando Versões Anteriores

Tutorial: Serviços web e suas composições

Programação online em Java

Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa

Persistência de Classes em Tabelas de Banco de Dados

Criando sua primeira aplicação JAVA com o Eclipse

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

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

Manual de Instalação e Configuração. Módulo Remote. (G2KA) para NFSE. v1.0

Instalação do Java SDK (Software Development Kit)

INSTALAÇÃO E USO DO GOOGLE APP ENGINE PLUGIN utilizando o Eclipse Galileo

Gerenciador de Conteúdo Magellan 2.0

Tutorial NFS-e. Conteúdo. Ultramax Gestão Escolar Tutorial para gerar NFS-e

Nota de Aula: Utilização da IDE Code::Blocks

SISTEMA DE PRODUTOS E SERVIÇOS CERTIFICADOS MÓDULO DO CERTIFICADOR

Tutorial: Criando aplicações J2EE com Eclipse e jboss-ide

PJCUS-361 CONTRATO COM CÓDIGO DE BARRAS

Procedimento para Atualização do DDFinance

Tutorial Mozilla Thunderbird 1.5

Ambientação JAVA. Versão 0.1 MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 UNIVERSIDADE CEUMA 08/01/2014

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA

2 Orientação a objetos na prática

Tutorial de Instalação do Ambiente de Programação Dev-C++

Instalação de impressora no Mac OS

Manual de Utilização Utilização do PDFSam

Tutorial de Instalação e Utilização do PDF Creator

Manual de Utilização COPAMAIL Criando e configurando a assinatura de . Zimbra Versão 8.0.2

Curso: Desenvolvimento Java

GUIA RÁPIDO PARA PETICIONAMENTO ON-LINE

ANDROID APPLICATION PROJECT

Aula 04 Operadores e Entrada de Dados. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

EAI Manual do Administrador

WampServer. Instalação do WampServer. Nota: Essas instruções são baseadas em uma instalação para o sistema operacional Windows.

Procedimentos de Implantação ireport x Protheus

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

TUTORIAL DE INSTALAÇÃO APACHE PHP POSTGRESQL 8.2

TUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1

Java Básico. Aula 1 por Thalles Cezar

COMO USAR O DROPBOX. Como usar o Dropbox (Foto: Reprodução/Ramon Cardoso)

Eclipse IDE Dá-se importância aos antepassados quando já não temos nenhum. Francois Chateaubriand

Faça Fácil: Deployment Server

Manual do Assinador de Documentos

1 Code::Blocks Criação de projetos

Instalando o J2SE 5.0 JDK no Windows 2000/XP

1 Procedimento de atualização de firmware do modem D-Link modelo DSL-G604T com o firmware DESATUALIZADO

INSIDE SISTEMAS SERVICEDESK TUTORIAL DE INSTALAÇÃO E ATUALIZAÇÃO DO SISTEMA SERVICE. ServiceDesk Tutoriais 1

INSTALAÇÃO OASIS + WAMP SERVER NO AMBIENTE WINDOWS

Criar um novo projeto

Usando o Eclipse - Fundamentos. Professor Vicente Paulo de Camargo

Sintaxe Básica de Java Parte 1

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

Roteiro para Solicitação e instalação de certificado digital para aplicação (Windows 2000)

MANUAL DE EXPORTAÇÃO DE CERTIFICADO SERVIDOR WEB APACHE PARA SERVIDOR WEB MICROSOFT IIS

INSTALANDO O ARQUIVO ELETRÔNICO DE LEIS MUNICIPAIS

Migração de Certificado Digital (Servidor Apache para Microsoft IIS)

Instruções para instalação e solicitação da ART. 1 Acesse o site e clique no banner ART Eletrônica 2009 conforme imagem abaixo.

LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 1 APRESENTANDO O C#

Manual de Atualização

JDBC Java Database Connectivity

NetBeans. Conhecendo um pouco da IDE

Lab - Configurando o Firewall do Windows Vista

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows

1. Um servidor rodando Windows 7 (um computador onde o SIPAR ficará instalado e com os dados neste computador);

Instalação do ByYou ESB. Guia de Instalação e Atualização do ByYou ESB

Como Instalar o Sistema

Guia Sphinx: instalação, reposição e renovação

Guião de Introdução ao Eclipse IDE Índice

Bacharelado em Ciência e Tecnologia BC Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel edson.pimentel@ufabc.edu.

ANEXO TÉCNICO PROCEDIMENTOS PARA CONFIGURAR UMA CONEXÃO VPN COM A BEMATECH

Introdução ao IDE Netbeans (Programação Java)

MULTIACERVO - VERSÃO 17.*

Disciplina: INF Programação I. 1 a aula prática Introdução ao ambiente do Microsoft Visual Studio 2010

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Ler e escrever bytes, caracteres e Strings de/para a entrada e saída padrão. Ler e escrever bytes, caracteres e Strings de/para arquivos

Manual de Instalação Versão 1.0

Instrução para Instalação de Certificados Digitais de Servidor Web

Tutorial Eclipse (IDE)

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Criação Visual de Consultas. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes

Leonardo Gresta Paulino Murta

GUIA PRÁTICO DE INSTALAÇÃO

Nome N Série: Ferramentas

Transcrição:

Sistema Eletrônico do Serviço de Informações ao Cidadão e-sic Tutorial Consumindo Webservices Java Versão 1.1 Histórico de Revisão Autor Data Descrição Versão Marcio Otta 15-10-12 Criação do documento 1.0 Marcio Otta 22-10-12 Tutorial do cliente de anexos 1.1

1. Introdução Este breve tutorial irá mostrar passo a passo a criação de um programa em Java para o consumo dos webservices do e-sic. Neste exemplo, iremos chamar o serviço de consulta de pedidos com apenas alguns parâmetros básicos e também iremos fazer um cliente para obter os anexos de um pedido. No entanto, a mesma lógica poderá ser utilizada para os webservices de consultas de recursos. Utilizamos para este tutorial o Eclipse versão Juno. 2. Criando um projeto no Eclipse para a consulta de pedidos Criando um projeto de consumo de webservices Abrir o eclipse e criar um projeto Java: File New Java Project. Na tela que se abre, preencha o nome do projeto e clique em Finish.

Para criar as classes do Web Service: File New Other... Na janela que abre, selecionar a opção Web Services Web Service Client e clique em Next Na tela que se abre, preencha o endereço do WSDL : http://www.acessoainformacao.gov.br/sistema/servicos/servicoconsultapedido.asmx?wsdl 3. Clique em Finish. Diversas classes serão criadas no seu projeto, como na figura abaixo:

Crie uma nova classe no seu projeto: New Class. Preencha um nome como abaixo:

Copie o código abaixo na sua classe, alterando o usuário e senha. import java.util.calendar; import java.util.gregoriancalendar; import br.gov.acessoainformacao.requestobterpedido; import br.gov.acessoainformacao.responseobterpedido; import br.gov.acessoainformacao.responsepedido; import br.gov.acessoainformacao.servicoconsultapedidolocator; import br.gov.acessoainformacao.servicoconsultapedidosoapstub; public class ConsultaPedido { public static void main(string[] args) { try { RequestObterPedido request = new RequestObterPedido(); Calendar datainicio = new GregorianCalendar(2012,Calendar.SEPTEMBER,01); Calendar datafim = Calendar.getInstance(); request.setdtaberturainicio(datainicio); request.setdtaberturafim(datafim); request.setusuario("wscgu"); request.setsenha("*****"); ServicoConsultaPedidoLocator locator = new ServicoConsultaPedidoLocator(); ServicoConsultaPedidoSoapStub cliente=(servicoconsultapedidosoapstub)locator.getservicoconsultapedidosoap(); ResponseObterPedido response; response = cliente.obterpedidos(request); System.out.println("Codigo execucao: " + response.getcodigoexecucao()); ResponsePedido[] pedidos = response.getpedidos(); System.out.println("Qtd Pedidos: " + pedidos.length); for (ResponsePedido pedido : pedidos ) { System.out.println("------------------------------------- --"); System.out.println("Protocolo:" + pedido.getprotocolo()); System.out.println("Nome:" + pedido.getsolicitante().getnome()); System.out.println("Descricao:" + pedido.getdescricaopedido()); catch(exception exc) { System.out.println(exc.getMessage()); Execute o projeto: Botão Direito do Mouse na Classe Run as Java Application. Ao executar o projeto, os dados dos pedidos irão ser mostrados na Console, como abaixo:

3. Criando uma classe para a consulta de anexos de pedidos Os webservices de anexos servem para a obtenção dos arquivos que foram anexados aos pedidos e aos recursos. Estes anexos, para trafegarem via webservices, são codificados em BASE-64. Para reduzir o tamanho das mensagens, o arquivo é compactado, antes da codificação para BASE-64, usando o GZIP. Portanto, o fluxo para o cliente Webservice de Anexox seria algo como: Chama o Webservice Decodifica o arquivo de BASE-64 Descompacta e salva o arquivo Abaixo o passo-a-passo para a criação deste método: No mesmo projeto do exemplo anterior, temos que adicionar a biblioteca para a decodificação de BASE-64. Usamos a biblioteca Common Codecs do Apache (http://commons.apache.org/codec/userguide.html)

Faça o download dos JAR do conversor de base-64 do apache commons (http://commons.apache.org/codec/download_codec.cgi) Adicione os JAR no seu projeto (crie uma pasta LIB, copie o JAR nesta pasta e adicione ao build path Crie uma classe chamada ConsultaAnexoPedido e copie o código abaixo. Altere o número do protocolo para um que seja do seu órgão e tenha anexos. import org.apache.commons.codec.binary.base64; import br.gov.acessoainformacao.responsearquivo; import br.gov.acessoainformacao.responseobterpedidoanexo; import br.gov.acessoainformacao.servicoconsultapedidolocator; import br.gov.acessoainformacao.servicoconsultapedidosoapstub; public class ConsultaAnexoPedido { public static void main(string[] args) { try { ServicoConsultaPedidoLocator locator = new ServicoConsultaPedidoLocator(); ServicoConsultaPedidoSoapStub cliente=(servicoconsultapedidosoapstub)locator.getservicoconsultapedidosoap(); ResponseObterPedidoAnexo responseanexo; String protocolo = "00075000872201246"; responseanexo = cliente.obteranexospedidos("wscgu", "*****", protocolo); System.out.println("Codigo execucao: " + responseanexo.getcodigoexecucao()); ResponseArquivo[] arquivos = responseanexo.getarquivos(); System.out.println("Qtd Anexos: " + arquivos.length); for (ResponseArquivo arquivo : arquivos) {

System.out.println("---------------------------------------"); System.out.println("Nome:" + arquivo.getnomearquivo()); byte[] decoded = Base64.decodeBase64(arquivo.getArquivoZipAndBase64().getBytes()); AnexoUtils.dezipaSalvaArquivo(decoded, "c:\\temp\\" + arquivo.getnomearquivo()); catch(exception exc) { System.out.println(exc.getMessage()); Crie uma classe chamada AnexoUtils e copie o código abaixo: import java.util.zip.gzipinputstream; import java.io.bytearrayinputstream; import java.io.outputstream; import java.io.fileoutputstream; import java.io.fileinputstream; import java.io.ioexception; public class AnexoUtils { public static void dezipasalvaarquivo(byte[] byteszip, String nomearquivo) throws IOException { try { GZIPInputStream gzipinputstream = null; ByteArrayInputStream bais = new ByteArrayInputStream(bytesZip); gzipinputstream = new GZIPInputStream(bais); String outfilename = nomearquivo; OutputStream out = new FileOutputStream(outFilename); byte[] buf = new byte[1024]; int len; while ((len = gzipinputstream.read(buf)) > 0) { out.write(buf, 0, len); gzipinputstream.close(); out.close(); catch(ioexception e){ System.out.println("Ocorreu uma excecao em dezipasalvaarquivo: " + e); Ao executar, o sistema irá gravar na pasta c:\temp do seu computador os arquivos anexos do pedido.