2013-10-25 1 views
4

Я использую весеннюю партию для чтения, обработки, записи и создания файлов непосредственно из местоположения FTP. Я мог читать файлы, используя следующую конфигурацию.Spring batch Writer для записи файлов непосредственно в ftp-местоположение,

<bean id="cvsFileItemReader2" class="org.springframework.batch.item.file.FlatFileItemReader"> 
    <!-- Read a csv file --> 
<property name="resource" 
value="ftp://user123:[email protected]/Ftpfiles/it/se/dev/expfiles/ABEXCEP.CSV"/> 

Но тот же я пытаюсь написать, используя FlatFileItemWriter uaing ниже конфигураций

<bean class="org.springframework.batch.item.file.FlatFileItemWriter"> 
<property name="resource" value="ftp://user123:[email protected]/Ftpfiles/it/se/dev/expfiles/ABFIXED.TXT" /> 

Получения следующего исключения

java.io.FileNotFoundException: 
    URL [ftp://user123:[email protected]/Ftpfiles/it/se/dev/expfiles/ABFIXED.TXT] 
    cannot be resolved to absolute file path because it does not reside in the file system: 
    ftp://user123:[email protected]/Ftpfiles/it/se/dev/expfiles/ABFIXED.TXT 
    at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:205) 

Цените любую помощь на этом .. Спасибо

ответ

2

Я думаю, что вы не можете создать удаленный FTP Resource. Одно из решений состоит в использовании Spring Batch для создания вашего файла. Затем вы можете использовать FTP/FTPS Adapters, чтобы перенести сгенерированный файл на FTP-сервер.

Надежда может вам помочь.

+0

в соответствии с моей интеграцией весы анализа, также создавая файлы локально и отправляя в ftp-местоположение, как в отдельной контрольной точке? Мне нужно создавать и записывать данные непосредственно в ftp-местоположение. – Ayyappak

+1

Весенняя интеграция полностью независима от партии Spring. Подумайте, что это демон, который проверяет наличие нового сгенерированного файла в каталоге назначения вашего записывающего устройства. Если это так, он отправит его на ваш ftp-сервер. –

2

Springs org.springframework.core.io.Resource имеет под-интерфейс, который называется org .springframework.core.io.WritableResource, для которого единственными реализованными мной реализациями были: FileSystemResource и FileSystemContextResource. Так что писать на ftp невозможно. То, что вы можете сделать, это записать локально на диск и написать цепочку, загружаемую с диска на ftp.

1

Использование пружинного интеграции для данного типа задания (см this example) для дальнейшего объяснения

+0

В этом примере также создаются файлы локально и отправляются в ftp-местоположение, как в отдельной тарелке? Мне нужно создавать и записывать данные непосредственно в ftp-местоположение. – Ayyappak

0

Использование тасклет для отправки файлов через SFTP. Обратитесь к этому link, link за дополнительной информацией/кодировкой для этого.

 Смежные вопросы

  • Нет связанных вопросов^_^