Использование DynamicControl с источником данных во внешней базе данных
У меня проблема с загрузкой документов с этим кодом.
var c = getComponent("dynp")
c.show("contact",{action:'editDocument',documentId:unid})
Или на самом деле это просто раздражающая проблема.
мой var unid
указывает на документ в другой базе данных, но c.show
ожидать, что документ будет находиться в той же базе данных, что и код DynamicContent. Поэтому я каждый раз получаю сообщение об ошибке c.show("contact",{action:'editDocument',documentId:unid})
Ошибка
ошибка dynp mydynamic.xsp Возникла исключительная ситуация при вызове метода NotesDatabase.getDocumentByUNID(java.lang.String)
Источник данных customcontrols
<xp:dominoDocument formName="myForm" var="doc1" databaseName="#{javascript:getExternaldb()}" />
и поэтому документ загружается правильно. Но я все равно получаю досадную ошибку (Админ не доволен)
Есть ли способ избежать этой ошибки?
2 ответа
Вы не передаете имя базы данных в качестве параметра. Без ignoreRequestParams я почти уверен, что это примет текущую базу данных, перезаписывая все, что вы поместили в источник данных.
Это работает, если вы передаете его в параметрах?
Я никогда не пытался делать то, что ты делаешь. Я не понимаю, что вы пытаетесь сделать на самом деле. Я никогда не видел часть действия c.show. И только изредка я использую getComponent.
У вас есть динамическая панель и рабочий пользовательский элемент управления? Вы пытаетесь контролировать режим редактирования против режима чтения, верно? Почему бы вам просто не установить переменную viewScoped с чем-то вроде editMode=true / false. И затем пользовательский элемент управления считывает это, чтобы определить режим. Не нужно, что этот бизнес действий...