2011-06-27 6 views

答えて

0

あります。それは少なくとも一時的な場所が必要です。あなたはそのようなものが欲しい理由を教えてもらえますか?そして、あなたが本当に必要とするもののための解決策を提案することができます。

+0

私たちの要件は、サーバーに保存しないようなものです。私はなぜ飛行にpdfの添付ファイルが可能ではない..知っているかもしれません..私は別のオプションを続行することができます理由を知っていますか? –

+0

Javaメールを使用して何かを添付するには、ファイルへのパスを指定する必要があります。一時的にファイルを保存するのはなぜあなたの選択肢ではありませんか? – Bee

+0

これは、逸脱することなく実装するための当社の要件です。私たちはあなたが言ったようにすでに実装していますが、再び一時的に保存しないように求められます。したがって、この場合には、適切な正当化は、彼らを説得するために提供されなければならない...彼らは2回の別々の一連の処理であるため親切 –

1

は、実際にファイルを作成してアタッチする方法があります。ファイルデータからバイトを取得し、特定のコンテンツタイプを指定するだけです。 http://www.feedforall.com/mime-types.htm

public static class CustomFileDataSource extends FileDataSource { 

     private byte[] data; 

     public CustomFileDataSource(String fileName, byte[] data) { 
      super(fileName); 
      this.data = data; 
     } 

     @Override 
     public String getContentType() { 
      return "application/pdf"; 
     } 

     @Override 
     public InputStream getInputStream() throws IOException { 

      return new ByteArrayInputStream(data); 
     } 

    } 
    MimeBodyPart filePart = new MimeBodyPart(); 
    filePart.setDataHandler(new DataHandler(new CustomFileDataSource(file.getFileName(),file.getFile()))); 
    filePart.setFileName(file.getFileName()); 
    Multipart mp = new MimeMultipart(); 
    mp.addBodyPart(filePart); 
    message.setContent(mp); 
関連する問題