Я делаю преобразование формата данных между POJO и CSV и наоборот. При этом при преобразовании CSV в файл Object (Unmarshalling) я получаю незаконное исключение аргумента для типа данных int. Только для струны работает нормально. Ниже мой POJOApache camel: bindy незаконный аргумент exception
@CsvRecord(separator="//|",crlf="UNIX",generateHeaderColumns=false)
public class EmployeeVO implements Serializable{
private static final long serialVersionUID = -663135747565879908L;
@DataField(pos=1)
private String name;
@DataField(pos=3)
private Integer age;
@DataField(pos=2)
private String grade;
// getter setter
}
CSV данные
sumit|4th standrad|22
выше CSV генерируется из приведенного выше POJO. Но в то время преобразования CSV в POJO я получаю folloing исключения
java.lang.IllegalArgumentException: Parsing error detected for field defined at the position: 3, line: 1
Ниже мой верблюд - файл контекста для справки
маршал
<route>
<from uri="cxf:bean:rtoemplyeeService"/>
<convertBodyTo type="java.lang.String" id="stringInput"/>
<bean ref="govtEmpBean" method="getEmployeeCSV" beanType="govtEmpBean" id="govtEmp"/>
<log message="before marshalling ================== ${body}"/>
<marshal ref="bindyDataformat">
<bindy type="Csv" packages="com.mycompany.converter.vo"/>
</marshal>
<log message="after marshalling ================== ${body}"/>
<to uri="file://D:/JATO_WORK/repo_bkp/csv/"/>
<setBody>
<simple>CSV output is generated at file system </simple>
</setBody>
</route>
ипа маршалом
<route id="csvtoobject">
<from uri="file://D:/JATO_WORK/repo_bkp/csv?delay=10000&initialDelay=10"/>
<log message="csv string ============= ${body}"/>
<unmarshal ref="bindyDataformat"/>
<log message="${body}"/>
<bean ref="govtEmpBean" method="printCSVObject" beanType="govtEmpBean" id="govtEmp"/>
</route>
является POJO термином java для типа POD? –
его простой старый объект java, простой java bean с собственностью и getter сеттеры – vashishth