CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: Varioflex con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 14 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 35 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 8 su 8
Discussione:

Eccezione java.lang.ArrayIndexOutOfBoundsException strana

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Androidiano


    Registrato dal
    Sep 2010
    Messaggi
    53

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Eccezione java.lang.ArrayIndexOutOfBoundsException strana

    Salve ragazzi.
    Ho un problema. Sto eseguendo su un server due thread nei quali ricevo dal client una stringa di comando e successivamente in base al comando dato eseguo un azione.
    In particolare ricevo dal client due file xml.
    In un caso non ho nessun problema. Il file viene correttamente ricevuto.
    Nell'altro caso invece ho un eccezione molto strana dato che è esattamente tutto uguale al primo caso:

    il codice è il seguente:



    L'eccezione che mi capita è:

    java.lang.ArrayIndexOutOfBoundsException
    at java.lang.System.arraycopy(Native Method)
    at java.io.BufferedOutputStream.write(Unknown Source)
    at agenda.bean.TCPDesktopServer.run(TCPDesktopServer. java:104)
    at java.lang.Thread.run(Unknown Source)

    dove la riga TCPDesktopServer.java:104 è la seguente:
    bos2.write(mybytearray2, 0 , current2);

    ....quello che non capisco è come mai quando vado a togliere l'altra parte di codice che è identica a quella in questione a differenza della stringa di comando che viene inviata dal client e letta dal server (ma il resto è tutto uguale, in quanto ricevo un file e lo memorizzo alla stessa maniera) non mi viene generata l'eccezione e funziona in quanto mi ritrovo il file xml correttamente scritto, invece se lascio entrambe le parti mi si genera l'eccezione e uno dei due file xml ricevuti (quello per cui si genera l'eccezione risulta vuoto).
    Vi ringrazio ciao

  2.  
  3. #2
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Ma quindi le differenze sono solo tra i due file XML inviati?
    A questo punto forse converrebbe che postassi tali file...
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. #3
    Androidiano


    Registrato dal
    Sep 2010
    Messaggi
    53

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    si le differenze sono sui file xml nel senso che il contenuto di questi due file xml che vengono scritti è diverso....l'eccezione è generata sull'array il cui contenuto andrebbe poi a scrivere il file xml stesso....non capisco come mai quando eseguo i due thread identici uno va e il relativo file xml viene scritto e l'altro no...la dimensione di quest'ultimo file è 0kb.

  5. #4
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da sangio85 Visualizza il messaggio
    si le differenze sono sui file xml nel senso che il contenuto di questi due file xml che vengono scritti è diverso....l'eccezione è generata sull'array il cui contenuto andrebbe poi a scrivere il file xml stesso....non capisco come mai quando eseguo i due thread identici uno va e il relativo file xml viene scritto e l'altro no...la dimensione di quest'ultimo file è 0kb.
    Mi viene in mente una problematica di caratteri speciali... però senza vedere i files è un'analisi al buio...
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  6. #5
    Androidiano


    Registrato dal
    Sep 2010
    Messaggi
    53

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    due minuti e ti posto entrambi i file xml....grazie

  7. #6
    Androidiano


    Registrato dal
    Sep 2010
    Messaggi
    53

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    File AZIONITOSERVER.XML



    File QUANTITATOSERVER.XML

  8. #7
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    La mia prima analisi è che il primo file non funziona perché non c'è grappa

    A parte gli scherzi, non ne sono esattamente venuto a capo, ma di solito lavorare con i buffer ha sempre effetti curiosi. Secondo me il problema potrebbe dipendere dal modo in cui la variabile filesize viene calcolata, che non vedo nella porzione di codice che hai postato, visto che poi lei determina la lunghezza del buffer e, in pratica, fa da tara per tutte le misure nelle trasformazioni. Purtroppo non mi viene in mente nient'altro...
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  9. #8
    Androidiano


    Registrato dal
    Sep 2010
    Messaggi
    53

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ahahah...eh si magari a dargli un po di grappa funziona tutto...
    cmq per quanto riguarda filesize la inizializzo cosi:
    int filesize=60223866;

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy