Olá pessoal, estou iniciando um trabalho com webservices, encontrei uma video aula que me ajudou iniciar o desenvolvimento.
a idéia é que o cliente envie um arquivo, para o webservice, o webservice receba o arquivo e faça o tratamento adequado…
meu problema é o seguinte, o webservice que desenvolvi seguindo uma video aula, está retornando textos
como devo proceder para que o mesmo receba um arquivo (do cliente), acione o código que faz o tratamento neste arquivo, e em seguida o webservice retorne o arquivo (após o tratamento) para o cliente.
Poderiam me ajudar?
Segue o código (extraido desta video aula :http://www.youtube.com/watch?v=mcaUbMDMR8Y&feature=relmfu)
classe RESTApplication
[code]import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
/**
*Esta é a Classe que vai conter o endereço de entrada
- @author Fabricio Garcia
*/
@ApplicationPath("/resources")
public class RESTApplication extends Application{
}[/code]
Classe ContatoResource
[code]/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package rest.resources;
import entidades.Contato;
import java.util.ArrayList;
import java.util.List;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
/**
*
- @author Fabricio Garcia
*/
@Path("/contatos")
public class ContatoResource {
//Método que retorna uma lista de contatos getContatos
//Metodo vai ser acessado pelo metodo HTTP GET
@GET
//Produzindo XML ou JSON.
//Como vamos retornar mais de 1 tipo, devemos coloca-los em um Array
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
public List<Contato> getContatos() {
List<Contato> contatos = new ArrayList<Contato>();
//Adicionando contatos
contatos.add(new Contato(1, "Usuario 1"));
contatos.add(new Contato(2, "Usuario 2"));
contatos.add(new Contato(2, "Usuario 3"));
//retornando a lista
return contatos;
}
}
[/code]
Classe Contato
[code]/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package entidades;
import javax.xml.bind.annotation.XmlRootElement;
/**
*
- @author Fabricio Garcia
*/
/* @XmlRootElement
- Faz o Tratamento de transformar o objeto XML e de
- converte-lo de volta para XML */
@XmlRootElement
public class Contato {
//-------- 1º PASSO -------------
/*1º PASSO: a classe possui 2 campos */
private Integer id;
private String nome;
//--------FIM 1º PASSO -------------
//--------3º PASSO -------------
//Construtor sem argumentos
public Contato() {
}
//Construtor que recebe os 2 argumentos
public Contato(Integer id, String nome) {
this.id = id;
this.nome = nome;
}
//--------FIM 3º PASSO -------------
//--------2º PASSO -------------
/* 2º PASSO:
* criando os Gets e Sets (Refatorar> Encapsular Campos)
Selecionar tudo, REFATORAR.*/
/**
* @return the id
*/
public Integer getId() {
return id;
}
/**
* @param id the id to set
*/
public void setId(Integer id) {
this.id = id;
}
/**
* @return the nome
*/
public String getNome() {
return nome;
}
/**
* @param nome the nome to set
*/
public void setNome(String nome) {
this.nome = nome;
}
//----------------FIM SEGUNDO PASSO ----------------
}
[/code]