2014-09-09 3 views
0

У меня есть странная ошибка, которая воспроизводима, но я не могу узнать, что вызывает ее. Если я называю это XPage я получаю следующее сообщение об ошибке:Пользовательское свойство в режиме повторного управления перестало работать

Ошибка при выполнении JavaScript вычисленного выражения

«имя_поля» не найден

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" 
xmlns:xe="http://www.ibm.com/xsp/coreex" 
xmlns:xc="http://www.ibm.com/xsp/custom"> 
<xp:this.data> 
    <xp:dominoDocument var="Request"></xp:dominoDocument> 
</xp:this.data> 
<xp:repeat rows="999" var="fieldname"> 
    <xp:this.value><![CDATA[#{javascript:"myfieldname"}]]></xp:this.value> 
    <xc:Widgets_Field 
     field_datasource="#{javascript:currentDocument}" 
     field_name="#{javascript:fieldname}"> 
    </xc:Widgets_Field> 
</xp:repeat> 

Я пытался опустошить куб.см но без каких-либо успехов. Единственное, что работает, - это когда я либо hardcoding имя свойства field_name, либо когда я установил элемент управления повтора для «создания элементов управления при создании страницы»

Я абсолютно уверен, что код работал до этого, но я не могу узнать, что вызывает сообщение об ошибке. Не могли бы вы дать ему попробовать и сообщить мне, если у вас тоже такая же проблема.

Прикрепленный см стека

com.ibm.xsp.exception.EvaluationExceptionEx: Error while executing JavaScript computed expression 
com.ibm.xsp.binding.javascript.JavaScriptValueBinding.getValue(JavaScriptValueBinding.java:132) 
com.ibm.xsp.page.compiled.ExpressionEvaluatorImpl.getBindingValue(ExpressionEvaluatorImpl.java:151) 
xsp.Widgets_005fField$Widgets_005fFieldPage.createInputText4(Widgets_005fField.java:776) 
xsp.Widgets_005fField$Widgets_005fFieldPage.createComponent(Widgets_005fField.java:142) 
com.ibm.xsp.page.compiled.AbstractCompiledPage.buildComponent(AbstractCompiledPage.java:265) 
com.ibm.xsp.page.compiled.CompiledComponentBuilder.buildChildren(CompiledComponentBuilder.java:115) 
com.ibm.xsp.page.compiled.CompiledComponentBuilder.buildAll(CompiledComponentBuilder.java:84) 
+0

Пожалуйста, пост трассировки стека. –

+0

Я ответил на вопрос. Если вы вставляете проблемные привязки в пользовательский элемент управления, я могу попытаться найти обходное решение. –

+0

Какой код вашего CC? В частности, компонент * InputText4 *? –

ответ

3

В пользовательский элемент управления, если вы используете неправильное связывание, которые должны быть известны на странице загрузки, он выдает такую ​​ошибку. Например, если ваш пользовательский элемент управления содержит «загруженный» атрибут, например:

<xp:text 
    loaded="${compositeData.field_name}"> 

Это приведет к такой ошибке. Именно поэтому он работает с настройкой «create controls at page creation».

Update: Если вы собираетесь использовать динамическое связывание в пользовательский элемент управления, увидеть мой ответ на этот вопрос:

Dynamic Data Binding?

+0

, что будет иметь смысл, но проблема в том, что CC полностью пуст. – user2316219

+0

. Каковы ваши типы собственности? Кроме того, есть ли какое-либо событие или свойство, определенное в cc? –

+0

field_datasource имеет тип объекта, остальное - строка – user2316219