B 電子メールの添付の処理

この付録では、Oracle B2Bの電子メールによるペイロードの処理について説明します。

この付録の内容は次のとおりです。

B.1 ペイロードを電子メールの添付として送受信

インバウンド・メッセージについては、電子メールの本文が空で電子メール添付の部分が存在する場合、添付部分はペイロードとして扱われ、それに応じて処理されます。アウトバウンド・メッセージについては、電子メール添付をペイロードとして送信するようにデリバリ・チャネルを構成できます。添付としてペイロードを送信するには、「添付として送信」trueに設定して、デリバリ・チャネルを構成します。

電子メールの本文が無視されるデフォルト・サイズは5文字です。電子メールの本文に6文字以上含まれる場合は、本文がペイロードとして扱われます。

無視するサイズのデフォルト値は、Oracle Fusion Middleware ControlコンソールでOracle B2Bサーバーの次のプロパティを使用して構成できます。

b2b.DefaultBodySize=20 (それ以外の場合、デフォルト値は5)

B.2 ペイロードを電子メールの本文として送受信

アウトバウンド・メッセージ処理で電子メールの本文としてペイロードを送信する場合は、「添付として送信」falseに設定して、デリバリ・チャネルを構成できます。

この場合、インバウンド側では、電子メールの本文がペイロードとして扱われ、Oracle B2Bによって処理されます。

B.3 添付とともにペイロードを電子メールの本文として送受信

アウトバウンド・メッセージ処理でペイロードを電子メールの本文として添付とともに送信する場合、「添付として送信」falseに設定し、バックエンド・アプリケーションでAttachmentヘッダーに添付を指定することによって、デリバリ・チャネルを構成する必要があります。

例B-1は、単一の添付を示しています。

例B-1 単一の添付

<?xml version="1.0" encoding="UTF-8"?>
<Attachments xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="AttachmentDescriptor.xsd" boundary="boundary----">
  <AttachmentPart>
     <Location>file:///tmp/oralogo_small.gif</Location>
     <Content-Type>
         <Top-Level-Type>image</Top-Level-Type>
         <Sub-Type>jpeg</Sub-Type>
     </Content-Type>
    <Content-Transfer-Encoding>BASE64</Content-Transfer-Encoding>
    <Content-ID/>
    <Content-Description>A GIF file</Content-Description>
</AttachmentPart>
</Attachments>

この場合、インバウンド側では、電子メールの本文がペイロードとして扱われ、添付は構成されている添付ディレクトリに格納されます。添付ディレクトリは、Oracle Fusion Middleware ControlコンソールでOracle B2Bサーバーの次のプロパティを設定して構成できます。

b2b.attachments.dir=<directory_name>/

B.4 複数の添付とともにペイロードを電子メールの本文として送受信

アウトバウンド・メッセージ処理でペイロードを電子メールの本文として複数の添付とともに送信する場合、「添付として送信」falseに設定し、バックエンド・アプリケーションでAttachmentヘッダーに添付を指定することによって、デリバリ・チャネルを構成する必要があります。

例B-2は、複数の添付を示しています。

例B-2 複数の添付

<Attachments xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="AttachmentDescriptor.xsd" boundary="boundary----">
  <AttachmentPart>
     <Attachment>UjBsR09EbGhjZ0dTQUxNQUFBUUNBRU1tQ1p0dU1GUXhEUzhi</Attachment>
     <Content-Type>
        <Top-Level-Type>image</Top-Level-Type>
        <Sub-Type>jpeg</Sub-Type>
     </Content-Type>
     <Content-Transfer-Encoding>BASE64</Content-Transfer-Encoding>
     <Content-ID/>
     <Content-Description/>
  </AttachmentPart>
  <AttachmentPart>
      <Location>file:///tmp/SpreadSheet.xls</Location>
      <Content-Type>
        <Top-Level-Type>application</Top-Level-Type>
        <Sub-Type>vnd.ms-excel</Sub-Type>
      </Content-Type>
      <Content-Transfer-Encoding>BASE64</Content-Transfer-Encoding>
      <Content-ID>SpreadSheet-1</Content-ID>
      <Content-Description/>
  </AttachmentPart>
</Attachments>

この場合、インバウンド側では、電子メールの本文がペイロードとして扱われ、添付は構成されている添付ディレクトリに格納されます。