Наиболее вероятная причина: ignoreRequestParams
не установлен на true
. Если вы не укажете это, источник данных извлекает все данные о том, какой документ редактировать, основываясь на параметрах строки запроса URL (параметрах запроса HTTP). В результате параметры строки запроса URL имеют приоритет, и в случае, если ничего не задано, это означает «использовать новый документ». Если вы определили, что параметры строки запроса URL-адреса должны иметь приоритет, запуск кода, который затем просто игнорирует его, неэффективен. В результате action="openDocument"
также игнорируется - если у вас есть docId в строке запроса, он откроет его, в противном случае он создаст новый документ.
documentId
может быть обработан только один раз, когда страница сначала загружается. В зависимости от того, связан ли источник данных с панелью или с XPage / Custom Control, он также будет запускаться до события beforePageLoad
. Таким образом, привязка во время выполнения (#{javascript:...
) не имеет никакого эффекта. ${javascript:...
позволит избежать путаницы.
Обработка ошибок может помочь определить, есть ли ошибка. XPages OpenLog Logger - один из наиболее распространенных (отказ от ответственности, я автор) https://openntf.org/main.nsf/project.xsp?r=project / XPages% 20OpenLog% 20Logger .