Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Re: Problema ao enviar dados ao servidor - formulario do tipo multipart/form-data

Eu tenho que gerar um aqui na minha própria máquina ou isso é tarefa do servidor?
Estou um pouco perdido. Alguém pode me ajudar?

Em 31 de outubro de 2012 10:55, Diego Lopes Marques da Silva <diego.lopes@dce.ufpb.br> escreveu:
É. Pelo que eu tenho lido acho que é por ai mesmo.
Alguém saberia me dizer um bom tutorial para seguir?

Obrigado.

Em 30 de outubro de 2012 20:25, Ernani Joppert Pontes Martins <joppert@gmail.com> escreveu:
Vou tentar arriscar olhando seu código inicial.

Talvez vc precise gerar um KeyStore / TrustStore do zero, e adicionar no seu apk e mandar ele carregar no método load...

Posso estar enganado.

[]'s

Ernani


On Tue, Oct 30, 2012 at 9:23 PM, Ernani Joppert Pontes Martins <joppert@gmail.com> wrote:
Problemas de certificado SSL.

Seria legal dar uma lida como usar truststore e keystore antes, realmente eu nunca usei isso no Android, apenas em J2SE mesmo!

[]'s

Ernani


On Tue, Oct 30, 2012 at 7:41 PM, Diego Lopes Marques da Silva <diego.lopes@dce.ufpb.br> wrote:
Está ocorrendo esse problema ai.

10-30 18:26:53.016: E/NativeCrypto(6673): Unknown error 5 during connect
10-30 18:26:53.026: E/EasyLogCore(6673): HttpRequestCore.getRequest - SSL handshake failure: I/O error during system call, Connection reset by peer
10-30 18:26:53.026: E/EasyLogCore(6673): java.io.IOException: SSL handshake failure: I/O error during system call, Connection reset by peer
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.nativeconnect(Native Method)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:316)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.<init>(OpenSSLSocketImpl.java:520)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.getInputStream(OpenSSLSocketImpl.java:461)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.io.SocketInputBuffer.<init>(SocketInputBuffer.java:93)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.SocketHttpClientConnection.createSessionInputBuffer(SocketHttpClientConnection.java:83)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnection.createSessionInputBuffer(DefaultClientConnection.java:170)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.SocketHttpClientConnection.bind(SocketHttpClientConnection.java:106)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnection.openCompleted(DefaultClientConnection.java:129)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:181)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:653)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:627)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:616)
10-30 18:26:53.026: E/EasyLogCore(6673):     at br.com.avaty.easylog.core.http.HttpRequestCore.getRequest(HttpRequestCore.java:79)
10-30 18:26:53.026: E/EasyLogCore(6673):     at br.com.avaty.easylog.core.Controller$1.run(Controller.java:156)
10-30 18:26:53.026: E/EasyLogCore(6673):     at java.lang.Thread.run(Thread.java:1096)


2012/10/30 Vinicius Maciel <vnc.maciel@gmail.com>
Que problema exatamente ? Tenta especificar melhor, aí fica mais fácil para nós ajudarmos.

Abs

Em terça-feira, 30 de outubro de 2012 16h59min56s UTC-2, Diego Lopes escreveu:
Pessoal,

Estou com problemas para enviar esses dados ao servidor.
Alguém pode me dizer aonde estou errando?
Obrigado

public synchronized void sendEntregaThread(final Entrega entrega, final Context context) {
        new Thread(new Runnable() {
           
            @Override
            public void run() {
                String res = null;
                try {
                    KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
                    trustStore.load(null, null);
           
                    SSLSocketFactory sf = new MySSLSocketFactory(trustStore);
                    sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
                   
                    HttpParams params = new BasicHttpParams();
                    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
                    HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);

                    SchemeRegistry registry = new SchemeRegistry();
                    registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
                    registry.register(new Scheme("https", sf, 8080));

                    ClientConnectionManager ccm = new ThreadSafeClientConnManager(params, registry);
                   
                    HttpClient httpClient = new DefaultHttpClient(ccm, params);
                    HttpPost postRequest = new HttpPost("MEU SERVIÇO DE ENTREGA AO SERVIDOR");
                   
                   
                    MultipartEntity multipartContent = new MultipartEntity();

                    try {
                        if ((entrega.getImg() != null) && (!entrega.getImg().equals(""))) {
                            InputStreamBody photoFis = new InputStreamBody( new FileInputStream( new File(entrega.getImg()) ), entrega.getImg() );
                            multipartContent.addPart("img_canhoto", photoFis);
                        }
                    } catch (FileNotFoundException e) {}       
                    try {
                        if ((entrega.getVideo() != null) && (!entrega.getVideo().equals(""))) {
                            InputStreamBody videoFis = new InputStreamBody( new FileInputStream( new File(entrega.getVideo()) ), entrega.getVideo() );
                            multipartContent.addPart("video", videoFis);
                        }
                    } catch (FileNotFoundException e) {}
                                   
                    multipartContent.addPart("video",new StringBody(entrega.getVideo()));
                    multipartContent.addPart("assinatura", new StringBody(entrega.getAssinatura()));
                    multipartContent.addPart("foto", new StringBody(entrega.getImg())  );
                    multipartContent.addPart("dataEntrega",new StringBody(entrega.getDataEntrega()) );
                   
                    postRequest.setEntity(multipartContent);
                    ResponseHandler<String> responseHandler = new BasicResponseHandler();
                   
                    res = httpClient.execute(postRequest, responseHandler);
                  
                  
                } catch (SocketException e) {
                    Log.e(Constants.TAG, e.getMessage(), e);
                    res = "ERROR";
                  
                } catch (Throwable e) {
                    Log.e(Constants.TAG, e.getMessage(), e);
                    res = "ERROR";
                  
                }
                NetConnectivityListener.isSync = false;
                Log.i(Constants.TAG, res);
                insertEntrega(entrega, context);
            }
           
        }).start();
    }


--
 
 







--
 
 


--
 
 








--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário