0

BeanIO 書き込み用に mapping.xml ファイルをセットアップしようとしていますが、いくつかの問題が発生しています。

出力を次のようにしようとしています。

<EmailRequest>
  <Header>
     <Version>1.0.0</Version> 
     <ApplicationId>1234</ApplicationId>
     <SessionKey>SESSION_KEY</SessionKey> 
  </Header>
  <BulkEmail>
     <TemplateName>TEMPLATE_NAME</TemplateName>
     <Search> 
         <SearchOption>SOLE</SearchOption>
     </Search> 
    <ColumnDelimiter>|</ColumnDelimiter> 
    <RowDelimiter>NEWLINE</RowDelimiter>
    <Sequence>
        <VariableName>REWARD_NUMBER</VariableName>
        <VariableName>REWARD_NUMBER</VariableName>
    </Sequence> 
  </BulkEmail>
</EmailRequest>

しかし、私はいくつかの問題を抱えています。「BulkEmail」、「Search」、「Header」、および「Sequence」のそれぞれに対して Bean を作成しましたが、書き込みを実行しようとするたびに、次のエラーが発生します。

スレッド「メイン」org.beanio.BeanIOConfigurationException での例外: ストリーム「EmailRequest」内の無効なレコード「ヘッダー」: 無効な Bean クラス「com.xmlheader.Header」

これは簡単に修正できますか?それとも私のマッピングが間違っていますか?または、これを行うためのより簡単な方法があれば、大歓迎です! マッピングは以下にあります。ご協力ありがとうございます。

<stream name="EmailRequest" format="xml">
    <record name="requestHeader" class="com.xmlheader.Header">
        <field name="Version" />
        <field name="ApplicationId" />
        <field name="SessionKey" />
    </record>
    <record name="BulkEmail" class="com.xmlheader.BulkEmail">
      <field name="TemplateName" />
        <bean name="search" class="com.xmlheader.Search" xmlType="element">
            <field name="SearchOption" />
        </bean>
      <field name="ColumnDelimiter" />
      <field name="RowDelimiter" />
        <bean name="Sequence" class="com.xmlheader.Sequence" xmlType="element">
            <field name="VariableName" />
        </bean>
    </record>
  </stream>  
4

1 に答える 1