gpt4 book ai didi

spring-batch - Spring批处理使用java注释java.lang.IllegalStateException : Cannot create properties without meta data

转载 作者:行者123 更新时间:2023-12-02 02:00:30 25 4
gpt4 key购买 nike

  1. 尝试仅在项目中使用 java 注释将 FieldSets 自动映射到域对象
  2. 以下情况失败:

    BeanWrapperFieldSetMapper.mapFieldSet (第 184 行)在下一行(第 187 行):

    binder.bind(new MutablePropertyValues(getBeanProperties(copy, fs.getProperties())));
    @Override
    public Properties getProperties() {
    if (names == null) {
    throw new IllegalStateException("Cannot create properties without meta data");
    }

    注意:我没有指定名称,因为我正在尝试自动映射。

  3. 以下是我的代码:

    @Bean
    public LineMapper<Partner> lineMapper() {
    DefaultLineMapper<Partner> lineMapper = new DefaultLineMapper<Partner>();
    DelimitedLineTokenizer lineTokenizer = new DelimitedLineTokenizer();
    BeanWrapperFieldSetMapper<Partner> fieldSetMapper = new BeanWrapperFieldSetMapper<Partner>();
    fieldSetMapper.setBeanFactory(getApplicationContext());
    fieldSetMapper.setTargetType(Partner.class);
    lineMapper.setLineTokenizer(lineTokenizer);
    lineMapper.setFieldSetMapper(fieldSetMapper);
    return lineMapper;
    }
  4. 精确的堆栈跟踪

    退出描述。 :org.springframework.batch.item.file.FlatFileParseException: Parsing error at line: 1 in resource=[class path resource [partner-import.csv]], input=[Mustermann,Max,dahiya.naveen@gmail.com,m]

    原因:java.lang.IllegalStateException: Cannot create properties without meta data
    at org.springframework.batch.item.file.transform.DefaultFieldSet.getProperties(DefaultFieldSet.java:745)

最佳答案

您缺少设置 likeTokenizer.setNames()因为您正在使用名称(您的 Partner 属性的名称)

关于spring-batch - Spring批处理使用java注释java.lang.IllegalStateException : Cannot create properties without meta data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26583461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com