Consumir dados Webservice

4 respostas Resolvido
M

Prezados, boa tarde!

Sou iniciante com programação JAVA, e para efeito de estudo criei um WEBSERVICE com glassfish, ao realizar um consumo através de um campo “String” não estou tendo nenhum problema.

O erro ocorre quando tento realizar o consumo a partir do parametro com “data”, o qual recebo o seguinte retorno:

GET RequestFailed RequestFailed --> Status: (204)

Response: {

}

Assim gerando o seguinte erro:

Grave: java.text.ParseException: Unparseable date: 01-03-2019

at java.text.DateFormat.parse(DateFormat.java:366)

at ws.Empresa.getReciboPagto(Empresa.java:90)
abaixo segue meu método com a identificação da linha “90”.

///////////////Recibo de pagamento

<a class="mention" href="/u/get">@GET</a>

@Produces(“application/json”)

<a class="mention" href="/u/path">@Path</a>(“ReciboPago/get/{competencia}”)

public String getReciboPagto(@PathParam(“competencia”) String competencia)

{

try {
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    ReciboPagto rec = new ReciboPagto();

:90 Date dataformatada =(Date) df.parse(competencia);
rec.setCompetencia(dataformatada);

UsuarioDAO dao = new UsuarioDAO();
    rec = dao.buscarrecibo(rec);
    
    Gson g = new Gson();
    return g.toJson(rec);
} catch (ParseException ex) {
    Logger.getLogger(Empresa.class.getName()).log(Level.SEVERE, null, ex);
}
return null;

}
Já pesquisei no Google, outros sites porém sem sucesso.

Assim gostaria se possível de uma ajuda.

Grato!!!

4 Respostas

darlan_machado

esta frase contém um erro: ou você é iniciante ou você já está criando webservices, não há maneiras de um iniciante fazer isso.
Iniciante é o cara que está aprendendo sintaxe da linguagem e paradigma, OO no caso. Fora isso, já não é mais iniciante.

Indica que houve uma tentativa de transformar o valor passado em uma data, porém, este padrão não é um padrão válido para conversão em um objeto compatível com o tipo de objeto de data.
E isso ocorre por que você definiu que a conversão deve seguir o padrão dd/MM/yyyy

E não dd-MM-yyyy, como é enviado para o teu serviço.

M

Boa tarde, Darlan!

Sim a frase está errada, era para escrever " estou iniciando este projeto ".

M
Solucao aceita

boa tarde,
mesmo após alterar o formato da data, continuo recebendo a mensagem:

GET RequestFailed RequestFailed --> Status: (204)
Response: {

}

M

1- Alterei meu parâmetro para “Date”
2-Retirei o try - catch, juntamente com o SimpleDateFormat df = new SimpleDateFormat(“dd/MM/yyyy”);
3-assim passei a pesquisar com o valor 2019-03-01, recebi o Status-200 e o retorno dos dados.

Criado 8 de janeiro de 2020
Ultima resposta 14 de jan. de 2020
Respostas 4
Participantes 2