Динамически добавлять сбрасываемую часть к сетке данных
Ищите способ динамически генерировать сбрасываемые данные в java. Я могу создать первую часть динамически в Java. Это вторая часть, с которой у меня проблемы..
======== ПЕРВАЯ ЧАСТЬ =======
<p:fieldset id="fieldset3" legend="Stuff2">
<p:outputPanel id="dropArea3">
<p:dataGrid id="datagrid3" var="ds" columns="6" rows="1"
value="#{dataSourceController.fieldset3DataSources}"
paginator="true"
paginatorTemplate= "{CurrentPageReport} {FirstPageLink}
{PreviousPageLink} {PageLinks} {NextPageLink}
{LastPageLink}"
paginatorPosition="bottom"
rowsPerPageTemplate="5,10,20">
<p:column>
<p:panel id="pnl" header="#{ds.title}" style="text-align:center">
<h:graphicImage library="images" name="datasource/#{ds.extension}.png"/>
</p:panel>
<p:draggable for="pnl" revert="true" stack=".ui-panel" cursor="move"/>
</p:column>
</p:dataGrid>
</p:outputPanel>
</p:fieldset>
======== ВТОРАЯ ЧАСТЬ =============
<p:droppable id="droppable3" for="fieldset3" tolerance="touch"
activeStyleClass="ui-state-highlight" datasource="datagrid1">
<p:ajax listener="#{dataSourceController.onDataSourceDropToFieldset3}"
update="dropArea3 datagrid1"/>
</p:droppable>
Эта сбрасываемая часть не работает в Java:
Droppable drp = new Droppable();
drp.setId("droppable3");
drp.setFor("fieldset3");
drp.setTolerance("touch");
drp.setActiveStyleClass("ui-state-highlight");
drp.setDatasource("datagrid1");
MethodExpression me = FacesUtil.createMethodExpression(
"#{dataSourceController.onDataSourceDropToFieldset3}",
void.class, new Class[]{DragDropEvent.class});
MyAjaxBehavior pajax = new MyAjaxBehavior();
Class[] par = new Class[1];
par[0] = BehaviorEvent.class;
pajax.setListener( me );
pajax.setProcess( "@this" );
drp.setOnDrop("handleDrop");
drp.addClientBehavior( "drop", pajax ); // NOT WORKING - java.lang.IllegalStateException: CDATA tags may not nest
ucDsForm.getChildren().add(drp);
Я получаю эту ошибку:
java.lang.IllegalStateException: CDATA tags may not nest
Это происходит конкретно при выполнении:
drp.addClientBehavior()
Тем временем я решил пропустить создание динамического сбрасываемого набора данных для статического набора 5.