Site Search :
Standard Enterprise XML Methodology Pattern Setting Tunning Other
Article Contributors
GuestBook
Javapattern Maven
XSourceGen Dev
JetSpeed Test
JLook Image
jLook Family Site


Java WebMail System Implementation(3)
 
아시는 분은 알겠지만 2001년에 모모 사이트에 돈(무려 900원)받고 올라간 내용인데 요청에 의하여 자바패턴사이트에 다시 공개합니다. ( 2003/04/29 ) 484
Written by ienvyou - 최지웅
3 of 3
 


Forwarding Messages

메시지를 포워딩시키는 것은 조금만 더 신경쓰면 될것이다. 

호출을 위해 어떤 메소드도 존재하지 않으며, 메시지를 만드는 것은 

단순히 part들은 조작함으로서 만들어낼수 있을것이다.

메일 메시지를 multiple parts(메일은 Part인터페이스부터 시작한다고 말했었다.) 만듦으로서 

가능한데, 각각의 part는 BodyPart, 즉 조금더 구체적으로 말하면 MIME message를 

조작할 때의 MimeBodyPar부분이라고 할수 있다.

서로 다른 part를 위해 컨테이너가 Multipart, MimeMultipart를 호출함으로써 

메시지가 구성되어 질수 있다.

메시지를 포워딩시키기 위해서는 메시지의 텍스트에 하나의 part를 생성한후 , 

두번째 part를 생성하고, 두 part를 조합하기 위해서 값들을 multipart안으로 집어넣으면 된다. 

그런 후에는 메시지를 보낼 곳의 정확한 주소를 입력한 후 보내기만 하면  된다.



// 포워딩할 메시지를 생성한다.
Message forward = new MimeMessage(session);

// 헤더에 값을 입력한다.(수취인 정보및 보낸이 정보등등)

forward.setSubject("Fwd: " + message.getSubject());

forward.setFrom(new InternetAddress(from));

forward.addRecipient(Message.RecipientType.TO, 

  new InternetAddress(to));

// 새로운 MessagePart를 생성한다.

//사실 일반적인 메시지를 보낼때는 Message msg = new MimiMessage()를 사용했었다.

BodyPart messageBodyPart = new MimeBodyPart();

messageBodyPart.setText(

  "Here you go with the original message:\n\n");

// part들을 조합하기 위해 MultiPart를 생성한다

Multipart multipart = new MimeMultipart();

multipart.addBodyPart(messageBodyPart);

// 포워딩되는 내용을 위해 part를 생성하고, 값을 채운다.

messageBodyPart = new MimeBodyPart();

// folder에서 얻어온 값(message)
messageBodyPart.setDataHandler(message.getDataHandler()); 


// multi part에 Part를 추가한다.

multipart.addBodyPart(messageBodyPart);

// 메시지를 multi-part에 결합시킨다.

forward.setContent(multipart);

// 메시지를 보낸다.

Transport.send(forward);

요번편에서는 간략하게 메시지를 포워딩시키는 방법에 대하여 알아보았고, 다음편에서는 파일첨부하는 소스코드를 이용하여 파일을 전송하여 보자.
 
1 2 3
References
 
Copyright ⓒ 2003 www.javapattern.info & www.jlook.com, an jLOOK co.,LTD