Drag and Drop para java web

Boa tarde pessoal do GUJ
Estou fazendo meu artigo para conclusão de curso.
Já testei todos os show cases do primefaces de drag and drop. Se puderem ver no link http://www.primefaces.org/showcase-labs/ui/droppableBarca.jsf este seria o caso perfeito para meu projeto.
Tentei usar ele no netbeans porém apesar de todos os código estarem corretos ao arrastar a imagem ele não muda de cor e nem aceita a imagem fique no local onde era para ser dropada.
Então é o seguinte eu preciso dropar painéis com as informações de um list do meu banco. No meu caso tenho os professores da instituição nesses painéis.
Em outros panels que viriam de uma List do banco que seriam minhas salas.
Eu iria arrastar os professores nas salas e solta-los deichando assim a sala ocupada.
Não consegui achar nada desse tipo.
No icefaces até tem um exemplo disso mas ao instalar ele no netbeans o netbeans para de funcionar.
Então precisaria de alguma idéia para resolver o problema do exemplo do prime faces. para que ele funcione ou outro exemplo que eu possa usar…
Codigos fontes…

E você acha que a gente consegue adivinhar como você implementou essa coisa?

Quero uma sujestão de algo diferente.
Ou aquele show case que tem o link ali funcionando pq eu ja tentei de toda maneira e não funciona

Realmente,sem ver o codigo fica dificil

[quote=angelopppp]Quero uma sujestão de algo diferente.
Ou aquele show case que tem o link ali funcionando pq eu ja tentei de toda maneira e não funciona[/quote]
Eu quero um ford mustang e uma honda goldwing…
Mas, como você bem sabe, querer não é poder…
Enfim, você deve ter feito merda no código, por isso não funciona e não quer postar.

Blz pega o link do exemplo ali e tenta fazer pode copiar tudo iguau seu metidinho.
Já que vc é fodão se vc conseguir fazer funcionar manda o código e o projeto . todos os codigos fontes seus para eu baixar.
Vai la metidinho tenta fazer

Pagina jsf

01.<h:form prependId="false"> 02. 03. <p:growl id="growl" showDetail="true"/> 04. 05. <h:panelGrid columns="2" columnClasses="lineup,squad"> 06. 07. <p:panel header="Squad"> 08. <p:dataGrid id="availablePlayers" value="#{barcelona.players}" var="player" columns="4"> 09. <p:column> 10. <p:graphicImage id="player" value="/images/barca/#{player.photo}" styleClass="playerImage"/> 11. 12. <p:draggable for="player" revert="true" scope="#{player.position}" stack=".playerImage"/> 13. </p:column> 14. </p:dataGrid> 15. </p:panel> 16. 17. <h:panelGroup> 18. <h:panelGrid columns="3" style="margin-left:40px;"> 19. <p:outputPanel id="LF" styleClass="slot"> 20. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="forward" onDrop="handleDrop" datasource="availablePlayers"> 21. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 22. </p:droppable> 23. </p:outputPanel> 24. 25. <p:outputPanel id="CF" styleClass="slot"> 26. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="forward" onDrop="handleDrop" datasource="availablePlayers"> 27. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 28. </p:droppable> 29. </p:outputPanel> 30. 31. <p:outputPanel id="RF" styleClass="slot"> 32. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="forward" onDrop="handleDrop" datasource="availablePlayers"> 33. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 34. </p:droppable> 35. </p:outputPanel> 36. </h:panelGrid> 37. 38. <h:panelGrid columns="3" style="margin-left:40px;"> 39. <p:outputPanel id="LCM" styleClass="slot"> 40. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="midfield" onDrop="handleDrop" datasource="availablePlayers"> 41. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 42. </p:droppable> 43. </p:outputPanel> 44. 45. <p:outputPanel id="DM" styleClass="slot"> 46. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="midfield" onDrop="handleDrop" datasource="availablePlayers"> 47. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 48. </p:droppable> 49. </p:outputPanel> 50. 51. <p:outputPanel id="RCM" styleClass="slot"> 52. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="midfield" onDrop="handleDrop" datasource="availablePlayers"> 53. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 54. </p:droppable> 55. </p:outputPanel> 56. </h:panelGrid> 57. 58. <h:panelGrid columns="4"> 59. <p:outputPanel id="LB" styleClass="slot"> 60. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="defence" onDrop="handleDrop" datasource="availablePlayers"> 61. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 62. </p:droppable> 63. </p:outputPanel> 64. 65. <p:outputPanel id="CB1" styleClass="slot"> 66. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="defence" onDrop="handleDrop" datasource="availablePlayers"> 67. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 68. </p:droppable> 69. </p:outputPanel> 70. 71. <p:outputPanel id="CB2" styleClass="slot"> 72. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="defence" onDrop="handleDrop" datasource="availablePlayers"> 73. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 74. </p:droppable> 75. </p:outputPanel> 76. 77. <p:outputPanel id="RB" styleClass="slot"> 78. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="defence" onDrop="handleDrop" datasource="availablePlayers"> 79. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 80. </p:droppable> 81. </p:outputPanel> 82. </h:panelGrid> 83. 84. <h:panelGrid columns="1" style="margin-left:120px;"> 85. <p:outputPanel id="GK" styleClass="slot"> 86. <p:droppable tolerance="fit" activeStyleClass="slotActive" scope="goalkeeper" onDrop="handleDrop" datasource="availablePlayers"> 87. <p:ajax listener="#{barcelona.onDrop}" update="selectedPlayers growl" /> 88. </p:droppable> 89. </p:outputPanel> 90. </h:panelGrid> 91. </h:panelGroup> 92. 93. 94. </h:panelGrid> 95. 96. <p:panel header="Squad"> 97. <p:dataList value="#{barcelona.selectedPlayers}" var="player" id="selectedPlayers"> 98. #{player.number} - #{player.name} 99. </p:dataList> 100. </p:panel> 101. 102.</h:form>

Classe Barcelona.java

01.package org.primefaces.examples.view; 02. 03.import java.io.Serializable; 04.import java.util.ArrayList; 05.import java.util.List; 06.import javax.faces.application.FacesMessage; 07.import javax.faces.context.FacesContext; 08.import org.primefaces.event.DragDropEvent; 09.import org.primefaces.examples.domain.Player; 10. 11.public class Barcelona implements Serializable { 12. 13. private List<Player> players; 14. 15. private List<Player> selectedPlayers; 16. 17. public Barcelona() { 18. players = new ArrayList<Player>(); 19. selectedPlayers = new ArrayList<Player>(); 20. 21. players.add(new Player("Messi", 10, "messi.jpg", "forward")); 22. players.add(new Player("Villa", 7, "villa.jpg", "forward")); 23. players.add(new Player("Pedro", 17, "pedro.jpg", "forward")); 24. players.add(new Player("Bojan", 9, "bojan.jpg", "forward")); 25. players.add(new Player("Xavi", 6, "xavi.jpg", "midfield")); 26. players.add(new Player("Iniesta", 8, "iniesta.jpg", "midfield")); 27. players.add(new Player("Mascherano", 16, "mascherano.jpg", "defence")); 28. players.add(new Player("Puyol", 5, "puyol.jpg", "defence")); 29. players.add(new Player("Alves", 2, "alves.jpg", "defence")); 30. players.add(new Player("Valdes", 1, "valdes.jpg", "goalkeeper")); 31. players.add(new Player("Abidal", 22, "abidal.jpg", "defence")); 32. players.add(new Player("Adriano", 16, "adriano.jpg", "defence")); 33. players.add(new Player("Pinto", 13, "pinto.jpg", "goalkeeper")); 34. players.add(new Player("Pique", 3, "pique.jpg", "defence")); 35. players.add(new Player("Keita", 7, "keita.jpg", "midfield")); 36. players.add(new Player("Maxwell", 5, "maxwell.jpg", "defence")); 37. } 38. 39. public List<Player> getPlayers() { 40. return players; 41. } 42. 43. public List<Player> getSelectedPlayers() { 44. return selectedPlayers; 45. } 46. 47. public void onDrop(DragDropEvent event) { 48. Player player = (Player) event.getData(); 49. 50. selectedPlayers.add(player); 51. 52. FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(player.getName() + " added", "Position:" + event.getDropId())); 53. } 54.}

Para facilitar a vida de vcs no pagina jsf tem uma function vou postar aki se alguem conseguir fazer funciona posta o codigo pq ja fiz o que eu podia e não consegui

[code]
.lineup {
}

		.squad {
			vertical-align: top;
		}
		
		.slot {
			background:#333333; 
			width:90px; 
			height:110px;
			display:block;
		}

        .slotActive {
			background: #FFCC00;
		}
	</style>
	
	<script type="text/javascript">
		function handleDrop(event, ui) {
			ui.draggable.fadeOut(function() {$(this).fadeIn();});

			$(this).droppable('disable');
		}
	</script>