我在尝试运行这条骆驼路线时遇到错误:
<route>
<from id="_from1" uri="timer:foo?repeatCount=1"/>
<to id="_to3" uri="sql:select nro_servicio, documentodesconexionsap FROM servicio_cab;?dataSource=dataSource"/>
<to id="_to2" uri="bean:com.enelint.pangeaent.GlobalDataController?method=processGlobalData(Exchange)"/>
<marshal id="_marshal1">
<csv/>
</marshal>
<to id="_to1" uri="file:/fs/out?fileName=out.csv"/>
</route>
堆栈跟踪是:运行main时发生错误:org.apache.camel.test.blueprint.Main。 如果我将marshal更改为string,则会创建输出文件,但显然内容未格式化为逗号分隔。 我使用的是Camel 2.17版。 任何帮助将不胜感激。
更新: 这是我的POJO课程:
package com.enelint.pangeaenelint;
import java.util.Date;
import org.apache.camel.dataformat.bindy.annotation.CsvRecord;
import org.apache.camel.dataformat.bindy.annotation.DataField;
@CsvRecord(separator="\\;")
public class ServicioCab {
@DataField(pos=1, required=false)
String documentodesconexionsap;
@DataField(pos=2, required=false)
String nro_cuenta_contrato;
@DataField(pos=3, required=false)
String status;
@DataField(pos=4, required=true)
String motivo_accion;
@DataField(pos=5, required=false, pattern="dd.MM.yyyy")
String fecha_corte_repo;
@DataField(pos=6, required=false)
String hora_corte_repo;
@DataField(pos=7, required=false)
String reemite;
@DataField(pos=8, required=false)
String dias_reemision;
@DataField(pos=9, required=false)
String enviado_sap;
public String getDocumentodesconexionsap() {
return documentodesconexionsap;
}
public void setDocumentodesconexionsap(String documentodesconexionsap) {
this.documentodesconexionsap = documentodesconexionsap;
}
public String getNro_cuenta_contrato() {
return nro_cuenta_contrato;
}
public void setNro_cuenta_contrato(String nro_cuenta_contrato) {
this.nro_cuenta_contrato = nro_cuenta_contrato;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getMotivo_accion() {
return motivo_accion;
}
public void setMotivo_accion(String motivo_accion) {
this.motivo_accion = motivo_accion;
}
public String getFecha_corte_repo() {
return fecha_corte_repo;
}
public void setFecha_corte_repo(String fecha_corte_repo) {
this.fecha_corte_repo = fecha_corte_repo;
}
public String getHora_corte_repo() {
return hora_corte_repo;
}
public void setHora_corte_repo(String hora_corte_repo) {
this.hora_corte_repo = hora_corte_repo;
}
public String getReemite() {
return reemite;
}
public void setReemite(String reemite) {
this.reemite = reemite;
}
public String getDias_reemision() {
return dias_reemision;
}
public void setDias_reemision(String dias_reemision) {
this.dias_reemision = dias_reemision;
}
public String getEnviado_sap() {
return enviado_sap;
}
public void setEnviado_sap(String enviado_sap) {
this.enviado_sap = enviado_sap;
}
}