Nie je problém v tom, že nepoužívaš Multipart message? Teda ak máš v maili iba jednu časť, tak tá je zároveň aj jeho jediným telom. Skúšal si pridať nejaký text (aspoň "posielam subory")?
GG -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Dusan Zatkovsky Sent: Tuesday, October 06, 2009 12:40 PM To: Java Subject: Re: JavaMail - MimeBodyPart.attachFile() Este ma napadlo - ja by som este teoreticky dokazal prezit, ze sa mi .txt nacitava do stringu, ale problem bude u velkych suborov, pretoze moj pokus s 2x800MB ascii subormi "foo.txt" a jeho kopiu "foo.bin" dopadol tak, ze volanie attachFile() (a alternativa s DataSource) pre "foo.bin" trva zlomok sekundy (vytvori sa len referencia na subor), ale u "foo.txt" to vyzere pamat a crashne (nacitava 800MB do stringu). > DD. > > Diky, ale nepomohlo: > > for ( String s : new String[] { "/etc/passwd", "/tmp/passwd.txt" } ) { > FileDataSource fds = new FileDataSource(new File(s)); > DataHandler dh=new DataHandler(fds); > System.out.println(dh.getContentType()); > } > > - java.io.FileInputStream > - java.lang.String > > > Dobry den, > > > > skuste attachment pridat cez DataHandler: > > > > MimeBodyPart oBody = new MimeBodyPart(); > > FileDataSource oFds = new FileDataSource("/etc/passwd.txt"); > > oBody.setDataHandler(new DataHandler(oFds)); > > oBody.setFileName("passwd.txt"); > > > > S pozdravom > > Radovana Straube > > > > --- On Tue, 10/6/09, Dusan Zatkovsky <[email protected]> wrote: > > > From: Dusan Zatkovsky <[email protected]> > > > Subject: JavaMail - MimeBodyPart.attachFile() > > > To: "Java" <[email protected]> > > > Date: Tuesday, October 6, 2009, 11:57 AM > > > Ahoj. > > > > > > Ma tu niekto skusenosti s JavaMail? Konkretne sa mi jedna o > > > uvedenu metodu. > > > > > > Kod: > > > > > > MimeBodyPart part1 = new > > > MimeBodyPart(); > > > part1.attachFile( new File ( > > > "/etc/passwd"); > > > part1.setFileName("passwd"); > > > > > > MimeBodyPart part2 = new > > > MimeBodyPart(); > > > part2.attachFile( new File ( > > > "passwd.txt"); > > > part2.setFileName("/tmp/passwd.txt"); > > > > > > /etc/passwd je ako kazdy vie ascii textovy subor. > > > passwd.txt je jeho prosta > > > kopia pod inym nazvom (.txt). > > > > > > Nasleduje problem: > > > > > > > > > > > > System.out.println(part1.getContentType()); > > > > > > System.out.println(part1.getContent().getClass()); > > > > > > // text/plain, java.io.FileInputStream > > > > > > > > > > > > System.out.println(part2.getContentType()); > > > > > > System.out.println(part2.getContent().getClass()); > > > > > > // text/plain, java.lang.String !!! > > > > > > Vypada to, ze ten **** nejak heurestikuje podla mena a > > > obsahu suboru a usudi, > > > ze textovy subor je mozne ulozit do stringu. To je ale > > > presne to, co nechcem, > > > pretoze sa obavam, ze pri dekodovani smime spravy moze > > > dojst k nejakym > > > neocakavanym javom ( kodovanie a spol... ). > > > > > > Pozeral som sa aj na vysledky pomocou > > > part.writeTo(System.out), oba su zhodne: > > > > > > Content-Disposition: attachment; > > > filename=passwd > > > ... obsah suboru > > > > > > Content-Disposition: attachment; > > > filename=passwd.txt > > > ... obsah suboru > > > > > > > > > Da sa nejak MimeBodyPart donutit, aby attachFile() robil > > > skutocny attach file? > > > > > > > > > Dik. > > > > > > -- > > > Dusan > > > > > > > > > ... tykajte mi -- Dusan ... tykajte mi
smime.p7s
Description: S/MIME cryptographic signature
