Будет ли работать этот фрагмент кода с использованием Beanshell?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Будет ли работать этот фрагмент кода с использованием Beanshell?

Сообщение Anonymous »


Итак, У меня возникла проблема с определенным фрагментом кода. В коде используется интерпретатор bean-shell (bsh.Interpeter) для динамического присвоения значений предложению запроса, которое импортируется из текстового файла. Я не разбираюсь в bean-shell, а также Evalerror, который выдает ошибку при возникновении ошибки, не имеет особого смысла. Публикуем сценарий запроса и фрагмент кода.

Скрипт:

Stat = "Имя:{1} И Дата рождения: {2}"; SetValue(1,Person.getName()); Setvalue(2,Person.getDob()); Теперь они передают весь этот сценарий в виде одной строки интерпретатору для оценки, а перед этим они передают Java-объект Person, который содержит имя, dob и другие переменные, используя «set». Идея заключается в создании динамических предложений запроса. используя сценарии текстовых файлов, подобные приведенному выше, где значения запросам будут присваиваться динамически с помощью setvalue и вызова установщиков из объекта. Объект заранее заполняется всей информацией.

Фрагмент кода:

Интерпретатор i=new Interpreter(); пытаться{ i.set("Человек",p); //p — объект человека с предварительно заполненными данными. i.eval(query);//запрос содержит приведенный выше скрипт String s=(String)i.get("Stat"); System.out.print(s); } поймать (EvalError е) { System.out.println(e); } Теперь при выполнении возникает какая-то ошибка, и ошибка Evalerror выдает что-то вроде команды не найдена, setvalue(....), похоже, что setvalue либо не поддерживается во время выполнения, либо существует какой-то неправильный синтаксис. Это было бы будет полезно, если доступна какая-то помощь, будет ли этот код работать или его нужно будет сделать каким-то другим способом.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»