Копирование / перемещение файлов в PDI / Spoon дает ошибку "не файл"

Я пытаюсь автоматизировать еженедельное создание базы данных. В качестве первого шага в этом процессе мне нужно получить набор файлов из сетевого расположения M:\. Процесс выглядит следующим образом:

  1. Удалите все, возможно, оставшиеся старые исходные файлы из моей локальной папки (REMOVE_OLD_FILES).
  2. Получите имена необходимых файлов с помощью регулярных выражений (GET_FILES).
  3. Скопируйте файлы из сетевого расположения в мою локальную папку для дальнейшей обработки (COPY/MOVE FILES)

Процесс приобретения

На шаге 3 у меня возникают проблемы, я часто получаю следующую ошибку:

Error processing files. Exception : org.apache.commons.vfs.FileNotFoundException: Could not read from "file:///M:/FILESOURCE/FILENAME.zip" because it is a not a file.

Однако, когда я вручную нахожу «ошибочный» файл в сетевой папке и пытаюсь открыть или скопировать его, проблем не возникает. Если я затем перезапущу задание Spoon, ошибок для этого файла не произойдет (хотя следующий файл может привести к ошибке).

Пока что я убедился, что шаги 1 и 2 выполняются правильно: точнее, в именах файлов, возвращаемых на шаге 2, нет ошибок.

Очевидно, я бы предпочел не открывать сначала все файлы вручную, чтобы Spoon могла их правильно скопировать. Кто-нибудь знает, что может вызывать такое поведение?

Для полноты ниже приведены параметры, выбранные на шаге COPY/MOVE FILES.

Диалог копирования файла


person Wouter Kuijsters    schedule 31.12.2015    source источник


Ответы (2)


У меня была такая же проблема с разными клиентами, и, наконец, я попробовал какой-то базовый подход, и она была решена. Это может помочь и в вашем случае.

Также этому правилу могут следовать другие пользователи.

Просто попробуйте следующее: создайте все необходимые папки с помощью Spoon Job «Создать папку» и отключите / удалите эти прыжки из своей работы или преобразования, как только ваши папки будут созданы.

Это связано с тем, что пользователь, которого вы используете для удаления файла / ов, не распознается как пользователь Windows. Как только ваша папка будет на месте, вы можете удалить шаги «Создать папку» из своего задания.

Работа создана для удаления файла

person Gaurav Wadhwa    schedule 17.05.2016

Неправильный путь к файлу. Если вы используете ложку в среде Windows, вы должны использовать формат Windows для путей к файлам. Попробуйте перейти с

"файл: /// M: /FILESOURCE/FILENAME.zip"

To

"M: \ FILESOURCE \ FILENAME.zip"

Между прочим, это будет работать, только если M: является фактическим приводом в машине. Если вы хотите получить доступ к файлу в сети, вы должны использовать сетевой путь к общей папке следующим образом:

"\\ MachineName \ M $ \ FILESOURCE \ FILENAME.zip"

or

"\\ MachineName \ FILESOURCE \ FILENAME.zip"

Если вы попытаетесь получить доступ к файлу на сетевом диске, это не сработает.

person t3b4n    schedule 08.02.2016