Amigos preciso de um help.
Eu recebo por upload na minha aplicação um arquivo e preciso enviar para outra aplicação.
Encontrei dois sites que ensinam como fazer:
http://evgeny-goldin.com/blog/uploading-files-multipart-post-apache/
http://www.accordess.com/wpblog/file-upload-apache-httpclient-library/
Quando chamo o execute o outro servidor recebe a requisição porém sem NENHUM parâmetro.
E não sei oque estou fazendo errado ou deixando de fazer.
Me ajudem por favor.
Segue o código:
HttpPost post = new HttpPost(resource.toURL());
MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
for(Entry< String, Object > e : params.entrySet()){ //percorro os parâmetros da requisição original
if(e.getValue() instanceof CWSMultiPartFileParameter){ //se for arquivo
CWSMultiPartFileParameter value = (CWSMultiPartFileParameter) e.getValue();
reqEntity.addPart(e.getKey(), new ByteArrayBody(value.getData(), "application/octect-stream", value.getFileName()));
} else { // se for parâmetro normal
try {
reqEntity.addPart(e.getKey(), new StringBody(e.getValue().toString(), "text/plain", Charset.forName("ISO-8859-1")));
} catch (UnsupportedEncodingException e1) {
throw new IllegalStateException(e1);
}
}
}
post.setEntity(reqEntity);
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
httpclient.execute(post);
Não mais o que fazer pessoal!!
Valew pela ajuda