It's not possible to read the code. I would migrate to an LTS 3.7.x and not to 3.6.0, this is the first suggestion I have.
Il giorno mer 19 mag 2021 alle ore 15:13 Mikael Andersson Wigander <mikael.andersson.wigan...@pm.me.invalid> ha scritto: > Hi > In Camel 2.x we have a file component with a filter bean and now migrating > to Camel 3 the bean is not found and program crashes upon start. > The migration has been only with the route converting to use > EndpointRoutebuilder, the config, bean and class is unchanged. > > Config > > @Bean > > public static > > HouseKeepingFileFilter > > < > > String > > > > > houseKeepingFileFilter > > () { > > return new > > HouseKeepingFileFilter > > <>() > > ; > > } > > Impl > > @CommonsLog > > public class > > HouseKeepingFileFilter > > <T> > > implements > > GenericFileFilter > > < > > String > > > { > > public boolean > > accept > > ( > > GenericFile > > file) { > > SimpleDateFormat > > sdf > > = > > new > > SimpleDateFormat > > ( > > "yyyy-MM-dd HH:mm:ss" > > ) > > ; > > final boolean > > isValid > > = > > file > > . > > isDirectory > > () > > ? > > true > > : > > file > > . > > getLastModified > > () > > < > > LocalDateTime > > . > > now > > () > > . > > minusMonths > > (1L) > > . > > atZone > > ( > > ZoneId > > . > > systemDefault > > ()) > > . > > toInstant > > () > > . > > toEpochMilli > > () > > ; > > log > > . > > trace > > ( > > MessageFormat > > . > > format > > ( > > "File :{0}, with modification date: {1} is {2} for archive" > > , > > file > > . > > getFileName > > () > > , > > sdf > > . > > format > > (file > > . > > getLastModified > > ()) > > , > > isValid > > ? > > "valid" > > : > > "NOT valid" > > )) > > ; > > return > > isValid > > ; > > } > > } > > Camel 3 > > @Override > > public void > > configure > > () > > throws > > Exception > > { > > from > > ( > > file > > ( > > "mifir/" > > ) > > . > > antInclude > > ( > > "{{housekeeping.files.include}}" > > ) > > . > > antExclude > > ( > > > "**/archive/**,**/data/**,**/LegalReportingModuleTransporterBridge/**,**/MAPPING/**,{{housekeeping.files.exclude}}" > > ) > > . > > recursive > > ( > > true > > ) > > . > > filter > > ( > > "#houseKeepingFileFilter" > > ) > > . > > scheduler > > ( > > "quartz" > > ) > > . > > schedulerProperties > > ( > > "cron" > > , > > "{{housekeeping.cron}}" > > ) > > . > > schedulerProperties > > ( > > "triggerId" > > , > > "houseKeepingId" > > ) > > . > > schedulerProperties > > ( > > "triggerGroup" > > , > > "houseKeepingGroup" > > )) > > . > > description > > ( > > "HOUSEKEEPING-ROUTE" > > , > > "Archive files older than a month" > > , > > "en" > > ) > > . > > process > > (s > > -> > > { > > long > > houseKeepingSize > > = > > 0L > > ; > > final > > Message > > in > > = > > s > > . > > getIn > > () > > ; > > try > > { > > houseKeepingSize > > = > > in > > . > > getHeader > > ( > > "HouseKeepingSize" > > , > > Long > > . > > class > > ) > > ; > > } > > catch > > ( > > Exception > > ignored) { > > } > > final > > File > > body > > = > > in > > . > > getBody > > ( > > File > > . > > class > > ) > > ; > > houseKeepingSize > > += > > body > > . > > length > > () > > ; > > in > > . > > setHeader > > ( > > "HouseKeepingSize" > > , > > houseKeepingSize > > ) > > ; > > }) > > . > > aggregate > > ( > > constant > > ( > > true > > ) > > , > > new > > ZipAggregationStrategy > > ( > > true > > )) > > . > > to > > ( > > log > > ( > > "HouseKeeping" > > ) > > . > > level > > ( > > "INFO" > > ) > > . > > groupInterval > > (5_000L) > > . > > groupActiveOnly > > ( > > true > > )) > > . > > completionFromBatchConsumer > > () > > . > > eagerCheckCompletion > > () > > . > > to > > ( > > file > > ( > > "mifir/archive" > > )) > > . > > log > > ( > > "Monthly housekeeping is done! Archived > ${exchangeProperty.CamelAggregatedSize} files and saved > ${header.HouseKeepingSize} bytes" > > ) > > . > > end > > () > > ; > > } > > Camel 2 > > @Override > > public void > > configure > > () > > throws > > Exception > > { > > from > > ( > > "file:mifir/" > > + > > "?antInclude={{housekeeping.files.include}}" > > + > > > "&antExclude=**/archive/**,**/data/**,**/LegalReportingModuleTransporterBridge/**,**/MAPPING/**,{{housekeeping.files.exclude}}" > > + > > "&recursive=true" > > + > > "&filter=#houseKeepingFileFilter" > > + > > "&scheduler=quartz2" > > + > > "&scheduler.cron={{housekeeping.cron}}" > > + > > "&scheduler.triggerId=houseKeepingId" > > + > > "&scheduler.triggerGroup=houseKeepingGroup" > > ) > > . > > description > > ( > > "HOUSEKEEPING-ROUTE" > > , > > "Archive files older than a month" > > , > > "en" > > ) > > . > > process > > (s > > -> > > { > > long > > houseKeepingSize > > = > > 0L > > ; > > final > > Message > > in > > = > > s > > . > > getIn > > () > > ; > > try > > { > > houseKeepingSize > > = > > in > > . > > getHeader > > ( > > "HouseKeepingSize" > > , > > Long > > . > > class > > ) > > ; > > } > > catch > > ( > > Exception > > ignored) { > > } > > final > > File > > body > > = > > in > > . > > getBody > > ( > > File > > . > > class > > ) > > ; > > houseKeepingSize > > += > > body > > . > > length > > () > > ; > > in > > . > > setHeader > > ( > > "HouseKeepingSize" > > , > > houseKeepingSize > > ) > > ; > > }) > > . > > aggregate > > ( > > constant > > ( > > true > > ) > > , > > new > > ZipAggregationStrategy > > ( > > true > > )) > > . > > to > > ( > > "log:HouseKeeping?level=INFO&groupInterval=5000&groupActiveOnly=true" > > ) > > . > > completionFromBatchConsumer > > () > > . > > eagerCheckCompletion > > () > > . > > to > > ( > > "file:mifir/archive" > > ) > > . > > log > > ( > > "Monthly housekeeping is done! Archived ${property.CamelAggregatedSize} > files and saved ${header.HouseKeepingSize} bytes" > > ) > > . > > end > > () > > ; > > } > > Read the migration guide but not finding any clues… > > From Camel 2.25.3 to 3.6.0 > > /M