<jbo:SetAttribute>

行インスタンスで指定された行の特定の属性を更新します。

JSP構文

<jbo:SetAttribute
  datasource="datasourceInstanceName"
  dataitem="attributeName | *"
  [ value="attributeValue" ]
  [ usemultipartformat="true | false" ]
/>

説明

属性の更新には次の値のいずれかを使用します。

行インスタンスはRowデータ・タグを使用して作成します。SetAttributeタグは、更新処理を実行する行インスタンス定義の内部に挿入する必要があります。

HTTPリクエスト・パラメータを使用してフォーム入力のデータを処理する場合は、SetAttributeタグのdataitemプロパティに対してワイルド・カード文字(*)を指定します。ワイルド・カードを指定すると、SetAttributeタグは、行インスタンスのデータソースで定義されたビュー・オブジェクトの属性名に一致するHTTPリクエスト・パラメータを検索します。一致するパラメータが見つかった場合、SetAttributeタグは、このHTTPリクエスト・パラメータ値でビュー・オブジェクトの属性を更新します。

HTTPリクエスト・パラメータでinterMediaデータ型を処理する場合は、multipart/form-data形式でエンコードされたMIMEタイプでHttpRequestオブジェクトを渡します。この場合、SetAttributeタグでは、usemultipartformatプロパティをtrueに設定する必要があります。

オブジェクト型フィールドには、address.streetのようにdataitemにドット表記法を使用してアクセスします。

参照項目: oracle.jbo.Row

属性

次のSetAttributeの例では、静的値と動的値の両方を使用して行の属性を更新します。

<jbo:Row id="row1" datasource="ds1" action="Current" >
  <jbo:SetAttribute dataitem="Contactname" value="<%= first_name %>" />
  <jbo:SetAttribute dataitem="Status" value="P" />
  <jbo:SetAttribute dataitem="CustomerId" value="<%= cust_id %>" />
</jbo:Row>

次のSetAttributeの例では、dataitem属性でアスタリスク(*)を使用します。アスタリスクは、フォームで行属性値を設定し、それをHTTPパラメータで渡して更新するような場合に使用する必要があります。dataitemにアスタリスクが指定されたSetAttributeタグは、名前がHTTPリクエスト・パラメータ名に一致する属性の行属性を更新します。

<jbo:Row id="row1" datasource="ds1" action="Current" >
<HTML>
<BODY>
  <jbo:SetAttribute dataitem="*" usemultipartformat="true" />
</jbo:Row>

もう1つの例を次に示します。

<%@ taglib uri="/webapp/DataTags.tld" prefix="jbo" %>
<HTML>
<BODY>
<jbo:ApplicationModule id="OnlineOrdersModule"
configname="OnlineOrders.OnlineOrdersModule.LocalConfig"
releasemode="Stateless" />

<jbo:DataSource id="ds1" appid="OnlineOrdersModule" viewobject="CustomerView" >
</jbo:DataSource>

<jbo:Row id="newRow" datasource="ds1" action="Create" >
  <jbo:SetAttribute dataitem="Id" value="101" />
  <jbo:SetAttribute dataitem="Lastname" value="tiger" />
  <jbo:SetAttribute dataitem="Firstname" value="tiger" />
  <jbo:SetAttribute dataitem="Address.Street" value="101 Main st" />
  <jbo:SetAttribute dataitem="Address.City" value="Redwood city" />
</jbo:Row>

</BODY>
</HTML>
<jbo:Commit appid="OnlineOrdersModule" />

<jbo:ReleasePageResources />


BC4Jマルチメディア・データ・タグについて
データ・タグを使用したマルチメディア・コンテンツのレンダリング