• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Доступ К Документу

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Есть форма по документу doc1.
Так же на форме есть вид респонсов(doc2) и диалог, в котором форма по документу doc2.
В диалоге doc2 вычисляется по UNID. UNID определяется по клику в виде, но вот беда, почему-то в диалоге получаю документ doc1.
Хотя все документы существуют
 
L

lionk

Ты ID через viewScope или через sessionScope передаёшь?
Я заметил что viewScope после перезаргузки страницы очищается.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Ты ID через viewScope или через sessionScope передаёшь?
Я заметил что viewScope после перезаргузки страницы очищается.
Через compositeData.
Дело даже не в этом, в диалог UNID поступает, но вот документ не открывается
 
L

lionk

а как ты динамически меняешь переменную в compositeData?

Я вот у себя попробовал, в кнопку
viewScope.myvar=doc.unid

В настройки кастом контрола в дизайнере переменой из compositeData указал viewScope.myvar. Включил частичное обновление. Всё работает.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
В общем вопрос решен.
Диалог у меня создается динамически (т.е. диалога не существует на странице вообще). Наверное причина именно в этом.
Пришлось динамически устанавливать DataSource.
Установить DataSource можно парой методов, но у меня получилось только одним.
Условие - datasource в диалоге должен быть определен
JavaScript:
var cmp:com.ibm.xsp.component.UIIncludeComposite = getComponent( index );
var ds = cmp.getData()[0]; 
ds.setDocumentId( rowData.getUniversalID() ); 
ds.setAction('editDocument');
Если диалог существует на странице - то можно так (так можно менять все свойства)
JavaScript:
var cmp:com.ibm.xsp.component.UIIncludeComposite = getComponent( index );
cmp.getPropertyMap().setProperty("docdatasource", rowData.getDocument() );
docdatasource - свойство, добавленное вручную. Подробнее
 
Z

Zeka

А ignoreRequestParameters="true" в doc2 не пробывал поставить?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!