Boa noite.
Estou com problemas em receber um arquivo do meu cliente android.
Crei um web service rest, só que não sei como que recebo no POST.
Eu testei com um web service .net e deu certo, so que preciso fazer em java.
No android eu fiz a seguinte linha que envia:
Arquivo a = new Arquivo(); (essa classe tem os get's set's)
a.setConteudo(arquivoBase64);
a.setNome("MeuArquivoPDF.pdf");
a.setTamanho(1000);
GsonBuilder b = new GsonBuilder();
Gson j = b.create();
String json = j.toJson(a);
List<NameValuePair> parametros = new ArrayList<NameValuePair>();
parametros.add(new BasicNameValuePair("json", json));
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(parametros,HTTP.UTF_8);
req.setEntity(formEntity);
No Web Service eu tentei:
@POST
@Path("/ja")
@Produces("application/json")
@Consumes("application/json")
public String ja(@PathParam("MeuArquivoPDF") String json){
try {
byte[] bytes = json.getBytes();
File file = new File("MeuArquivoPDF.pdf");
BufferedOutputStream bos = null;
bos = new BufferedOutputStream(new FileOutputStream(file));
bos.write(bytes);
bos.close();
return "Deu Certo";
} catch (Exception ex) {
return "Deu Errado!";
}
}
Como que faço para receber no meu ws? Eu recebo como String mesmo? O que fiz ali está no caminho? Porque do jeito que está ali não está dando certo.
Me ajude por favor.
Obrigada