этот кусок кода доставляет мне проблемы (richfaces 3.3.2.GA):
<rich:dragIndicator id="indicator"> </rich:dragIndicator>
<h:dataTable id="myData" value="#{resultArray}" var="data" >
<h:column>
<a4j:outputPanel>
<rich:dragSupport id="myDrag" dragIndicator="indicator" dragType="sug" dragValue="#{data}" >
<rich:dndParam name="name" value="#{data.name}" >
</rich:dndParam>
</rich:dragSupport>
<h:outputText value="#{data.name}"></h:outputText>
</a4j:outputPanel>
</h:column>
</h:dataTable>
<rich:panel id="myPanel">
<f:facet name="header">Drop Zone</f:facet>
<rich:dropSupport id="dropZone" acceptedTypes="sug" dropListener="#{dropSuggestion}" reRender="box"/>
</rich:panel>
<rich:dataTable id="box" value="#{nameList}" var="cap2">
<f:facet name="caption">Concepts chosen</f:facet>
<h:column>
<h:outputText value="#{cap2.name}"/>
</h:column>
</rich:dataTable>
Действие называется:
public void dropSuggestion(DropEvent event)
System.out.println("OntologyActions.dropSuggestions");
FacesContext context = FacesContext.getCurrentInstance();
OntologyActions dropItem = new OntologyActions();
String dropItemString=event.getDragValue().toString();
//Get request items
dropItem= (OntologyActions) event.getDragValue();
//Locate the position of the dropped element
int index = dropItem.resultArray.indexOf(dropItemString);
System.out.println("String: " + dropItemString + " DropItem: " + dropItem.resultArray.get(index).name + " Index: " + index);
//Add the element to the selected array
selectedSuggestionsArray.add(dropItem.resultArray.get(index));
nameList.add(dropItemString);
//resultArray.remove(dropItem);
}
Проблема в том, что когда я опускаюэлемент в зону сброса, никаких действий не происходит, но я уверен, что он может видеть эту зону сброса, потому что я вижу зеленый или красный цвета, в зависимости от acceptTypes.
Но концепция не удаляется из контейнера,и не добавляется в зону удаления.
Когда я захожу на эту страницу, я получаю эту ошибку:
drop: Элемент с [form1: j_id640: _form: myPanel]Идентификатор не был найден в дереве DOM.
Возможно, элемент не имеет идентификатора клиента или идентификатор клиента не был записан.DnD отключен.Проверьте пожалуйста!
И в консоли JSF (но только с первой попытки) отладка с помощью firebug:
Узел не найден "code:" 8
Это кому-нибудь знакомо?
Заранее спасибо