Задача состоит в том, что мне нужно обновить поле базового документа только с учетом идентификатора поля редактирования или поля со списком на Xpage. Все это должно произойти до фактического сохранения страницы. Невозможно найти какие-либо методы в UIComponent и подклассах, которые позволяют узнать имя фактического элемента документа, к которому привязан текущий элемент управления вводом XSP. Пожалуйста, помогите.
Как программно (SSJS) найти, к какому элементу базового документа привязан элемент управления вводом пользовательского интерфейса на Xpage?
comment
Не могли бы вы рассказать больше о своем сценарии использования? На самом деле я понятия не имею, что вы хотите делать с этой информацией :-)
- person Oliver Busse   schedule 14.10.2015
comment
Большое спасибо, Пол, я попробую. Вот пример использования: у меня есть несколько разделов на моей xpage с похожими группами полей ({f1_A, f2_A, f3_A}, {f1_B, f2_B, f3_B} и т. Д.), Которые могут быть добавлены или удалены пользователем со страницы, нажав + или кнопку x в любом порядке. Отображение контролируется свойством рендеринга каждого раздела. Когда пользователь щелкает x, поля раздела должны быть очищены. Если я сохраню документ с необработанным разделом, поля в серверной части не обновятся. Поэтому мне нужно сделать это в коде кнопки x. Чтобы иметь единственную функцию, мне нужно знать, к чему привязан мой элемент управления ui.
- person Misha Ovsichtcher   schedule 14.10.2015
Ответы (1)
Следующее получит привязку Expression Language для компонента с идентификатором inputText1
:
var inputText1:com.ibm.xsp.component.xp.XspInputText = getComponent("inputText1");
var valBinding:com.sun.faces.el.ValueBindingImpl = inputText1.getValueBinding("value");
return valBinding.getExpressionString();
Это вернется, например, "# {document1.myField}". Используя базовый синтаксический анализ строк, вы сможете получить то, что хотите.
Как и Оливер, мне было бы интересно услышать пример использования. Это не то, что мне нужно было использовать.
В качестве бонуса попробуйте поискать в локальной папке в проводнике пакетов XPage / Custom Control. Вы увидите все методы получения и установки компонентов на вашем XPage, которые подскажут, какие свойства и методы доступны. F3 и F4 очень полезны для просмотра всех методов / свойств и иерархии классов.
person
Paul Stephen Withers
schedule
13.10.2015