我最近将我的项目中的BeanIO从1.2.3升级到2.0.6,作为升级的一部分,我不得不修改一些使用Bean元素开始使用Segment元素的映射。
但是我注意到之前如果流中的一行必须是小字段beanio仍然会初始化映射中bean元素中定义的对象。现在在同一场景中,应该使用该对象设置的属性只是设置为null。
使用空Test对象填充testName属性的旧代码:
<bean name="testName" class="com.project.Test">
<field name="test1" type="string" default=""/>
<field name="test2" type="string" default=""/>
</bean>
新代码未初始化Test对象并将testName属性设置为null:
<segment name="testName" class="com.project.Test" minOccurs="0">
<field name="test1" type="string" default="" minOccurs="0"/>
<field name="test2" type="string" default="" minOccurs="0"/>
</segment>
有没有办法强制Segment元素始终初始化对象? (是的,我确实需要保持minOccurs =“0”而不是如果我删除它,它不能解决问题)
THX,
专家组
答案 0 :(得分:0)
尝试在类路径根目录的org.beanio.createMissingBeans=true
文件中设置beanio.properties
。