• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

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

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
Есть форма по документу doc1.
Так же на форме есть вид респонсов(doc2) и диалог, в котором форма по документу doc2.
В диалоге doc2 вычисляется по UNID. UNID определяется по клику в виде, но вот беда, почему-то в диалоге получаю документ doc1.
Хотя все документы существуют
 
Ты ID через viewScope или через sessionScope передаёшь?
Я заметил что viewScope после перезаргузки страницы очищается.
 
Ты ID через viewScope или через sessionScope передаёшь?
Я заметил что viewScope после перезаргузки страницы очищается.
Через compositeData.
Дело даже не в этом, в диалог UNID поступает, но вот документ не открывается
 
а как ты динамически меняешь переменную в compositeData?

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

В настройки кастом контрола в дизайнере переменой из compositeData указал viewScope.myvar. Включил частичное обновление. Всё работает.
 
В общем вопрос решен.
Диалог у меня создается динамически (т.е. диалога не существует на странице вообще). Наверное причина именно в этом.
Пришлось динамически устанавливать 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 - свойство, добавленное вручную. Подробнее
 
А ignoreRequestParameters="true" в doc2 не пробывал поставить?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab