Я хотел бы написать собственный компонент, который отображает функцию javascript. В основном он будет вести себя как омнифейс onloadscript и будет использовать идентификатор клиента включающего родителя в качестве параметра функции javascript.
Пример:
<h:panelGroup id="panel">
<my:component />
</h:panelGroup>
Я начал писать такой пользовательский компонент, используя в качестве руководства реализацию omnifaces onloadscript. Пока все выглядит хорошо, но когда объемлющий родитель является составным компонентом, фактическим родителем моего пользовательского компонента является не составной компонент, а родитель тега insertChildren.
Хотя это имеет смысл, это, конечно, не то поведение, которое мне нужно.
Пример:
<my:composite id="panel">
<my:component />
</my:composite>
Идентификатор клиента родителя my:component не является «панелью», если составной элемент использует тег insertChildren в своей реализации.
Вопросы:
- Как я могу решить эту проблему?
- Может ли мой пользовательский компонент быть обработчиком тегов, который создаст один компонент ресурса в корне представления вместо фактического компонента пользовательского интерфейса, перемещенного в корень представления?