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,但每次我尝试运行我的 write 时都会收到以下错误:

线程“main”org.beanio.BeanIOConfigurationException 中的异常:流“EmailRequest”中的记录“Header”无效: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

0

<record name="requestHeader" class="com.xmlheader.Header"> 应该如下, <record name="Header" class="com.xmlheader.Header"> 因为在您的示例 xml 中它是“标题”

于 2013-11-24T11:11:42.870 回答