barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)

пятница, 26 августа 2011 г.

org.orbeon.saxon.trans.XPathException: An empty sequence is not allowed as the value of variable $section-holder

Проблема: при попытке получить pdf-ку из заполненной в orbeon формы вместо pdf-ки вываливается исключение "org.orbeon.saxon.trans.XPathException: An empty sequence is not allowed as the value of variable $section-holder".

Причина:
  • где-то в форме есть секция (fr:section), bind которой не имеет id вида "{sectionRootTagInModel}-bind", где {sectionRootTagInModel} - имя тэга в модели, к которому привязана секция с помощью конструкции bind. Т.е. секции должны быть привязаны к элементам модели следующим образом: <xforms:bind id="{sectionRootTagInModel}-bind " nodeset="{sectionRootTagInModel}"> для секции, объявленой как <fr:section id="{sectionRootTagInModel}-section" bind="{sectionRootTagInModel}-bind"> (использование другого id самой секции вроде как проблем не вызывает). 
  • в форме используются вложенные друг в друга bind`ы. Секции вкладывать друг в друга можно, но вот bind`ы - нет (за исключением вложения всех биндов в общий бинд к корневому тегу модели).

Решение: всегда присваивать bind`ам секций id вида "{sectionRootTagInModel}-bind". Не использовать вложенные секции

Комментариев нет:

Отправить комментарий