В моей системе есть переменная, определенная в файле nifi.properties
, которую я пытаюсь прочитать в процессоре ExecuteScript
, используя Groovy
.Ниже я попробовал:
def flowFile = session.get()
if (!flowFile) return
try
{
def newFile = new File(${config.password.file}).getText()
flowFile = session.putAttribute(flowFile, "passwordFile", newFile.toString())
session.transfer(flowFile, REL_SUCCESS)
}
catch(Exception e)
{
flowFile = session.putAttribute(flowFile, "errorStack",e.toString())
session.transfer(flowFile, REL_FAILURE)
}
Значение config.password.file
- это абсолютный путь к файлу, который содержит пароль, который мне нужно использовать.
Не уверен, но этот подход не работает.Вот стек ошибок, который я получаю:
groovy.lang.MissingPropertyException: No such property: config for class: Script90
Я попытался использовать отличную функциональность чтения пароля из файла на моей локальной машине с помощью приведенного ниже кода, и это работаетхорошо.
def filex = "C:\\Users\\myUser\\Desktop\\passwordFile.pass"
String passFile = new File(filex).getText()
Есть идеи, что я пропускаю / делаю неправильно?
Кроме того, исходя из стека ошибок, о котором я упоминал выше, в нем не упоминается, какое именно свойство отсутствует.Кто-нибудь имеет какие-либо идеи о том, как настроить код как таковой, он генерирует ошибку точно, какое свойство отсутствует или что-то подобное?