ページの先頭行へ戻る
Interstage Interaction Manager V9.1.1 Interstage Portalworksシナリオ作成支援ガイド

A.6.6 記述例

以下の条件の記述例を示します。

  1. リクエストからマルチパートデータを取り出す。

  2. 独自にコンテンツを作る

  3. マルチパートデータを作成する(1.および2.で受け取ったデータを利用)

  4. データの送受信

  5. 受信データからマルチパートデータを取り出す。

    ・・・・
    <!-ブラウザからリクエストされたコンテンツ-->
    <pwst:referParcel sourceObject="<%=scenarioRequest%>" parcel="reqParcel"/>
    <%
      out.println("1つ目のリクエストデータは、" + reqParcel.getParcel(0)); 
      out.println("2つ目のリクエストデータは、" + reqParcel.getParcel(1)); 
    %>
    
    <!--1個目の添付の作成(コンテンツを直接書く方法)-->
    <pwst:parcel parcel="part1" >
    <pwst:parcelHeader name="Content-Type" value="text/xml; charset=UTF-8"/>
    <pwst:parcelHeader name="Content-Disposition" value="form-data; name=\"start\""/>
    <pwst:parcelHeader name="Content-ID" 
      value="<E:\\doc\\send_message_request.xml@yamakan>"/>
    <pwst:parcelBody encoding="UTF-8" >
    <?xml version="1.0" encoding="UTF-8" ?> 
    <teamware xmlns="urn:xmlns-fujitsu-com:tw2001-09" version="1.0" xmlversion="1.0">
            <service>forum</service>
            <head>
                    <title>List Mainforums</title>
            </head>
            <body>
                    <service_pXML>forum</service_pXML>
                    <sort_pXML>f_name</sort_pXML>
                    <inherit_pXML>pragmanocache</inherit_pXML>
                    <auth>required</auth>
                    <template_name>forum/list_mainforums.xml</template_name>
            </body>
    </teamware>
    </pwst:parcelBody>
    </pwst:parcel>
    
    <!--2個目の添付の作成(コンテンツをオブジェクトで指定する方法)-->
    <%
    //任意のヘッダを設定
    prat2Headers = new Hashtable();
    prat2Headers.put("Content-Type","text/plain; charset=Shift_JIS");
    prat2Headers.put("Content-Disposition","form-data; name=\"attachment\"; 
      filename=\"E:\\doc\\agenda.txt\"");
    prat2Headers.put("Content-ID","<E:\\doc\\agenda.txt@yamakan>");
    prat2Headers.put("Content",attachmentData); 
    String Part2Body="USPに送信する2つめの本体";
    %>
    <pwst:parcel headers="<%=prat2Headers%>" parcel="part2" >
    <pwst:parcelBody body="<%=Part2Body%>" />
    </pwst:parcel>
    
    <!--親のコンテンツを作成(マルチパートコンテンツを設定する方法)-->
    <pwst:parcel parcel="multiPart"/>
    <pwst:parcelHeader name=" Content-Type" value="multipart/related; 
      boundary=--------------------------7d12c633f60; type=text/xml; 
      start=\"<E:\\doc\\send_message_request.xml@yamakan>\""/>
    </pwst:parcel>
    <pwst:addParcel parcel="<%=multiPart%>" add="<%=part1%>"/>
    <pwst:addParcel parcel="<%=multiPart%>" add="<%=part2%>"/>
    <pwst:addParcel parcel="<%=multiPart%>" add="<%= reqParcel.getParcel(1)%>"/>
    
    <!--マルチパートコンテンツの送信-->
    <pwst:call service="xUSP" type="XML" sendDataObject="<%= multiPart %>"/>
    <pwst:receive service="xUSP" result="receiveResult"/>
    
    <!--親の受信コンテンツの取り出し-->
    <pwst:referParcel sourceObject="<%=receiveResult%>" parcel="receiveParcels"/>
    <%
        out.println("1つ目の受信データは、" + receiveParcels .getParcel(0)); 
        out.println("2つ目の受信データは、" + receiveParcels .getParcel(1)); 
    %>