I use sem-gem to generate a new eclipse project (seam setup, seam new-project), then I added a new action testdnd to perform drag and drop operation. This is the code
import java.util.ArrayList; | import java.util.List; | | import javax.ejb.Stateless; | import org.jboss.seam.annotations.Name; | import org.jboss.seam.annotations.In; | import org.jboss.seam.annotations.Logger; | import org.jboss.seam.log.Log; | import org.jboss.seam.core.FacesMessages; | import org.ajax4jsf.dnd.event.DropEvent; | | @Stateless | @Name("testdnd") | public class TestdndBean implements Testdnd { | | @Logger private Log log; | | @In FacesMessages facesMessages; | | public void testdnd() | { | //implement your business logic here | log.info("testdnd.testdnd() action called"); | facesMessages.add("testdnd"); | } | | public void processDrop(DropEvent dropEvent) { | System.out.println("PROCESSDROP CALLED"); | } | | public List getValori(){ | ArrayList al=new ArrayList(); | al.add("a"); | al.add("b"); | al.add("c"); | return al; | } | //add additional action methods | | } here the local interface | import java.util.List; | import org.ajax4jsf.dnd.event.DropEvent; | import javax.ejb.Local; | | @Local | public interface Testdnd { | | //seam-gen method | public void testdnd(); | | public void processDrop(DropEvent dropEvent); | | public List getValori(); | } and here the page that use the bean <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | <ui:composition xmlns="http://www.w3.org/1999/xhtml" | xmlns:s="http://jboss.com/products/seam/taglib" | xmlns:ui="http://java.sun.com/jsf/facelets" | xmlns:f="http://java.sun.com/jsf/core" | xmlns:h="http://java.sun.com/jsf/html" | xmlns:rich="http://richfaces.ajax4jsf.org/rich" | xmlns:a="https://ajax4jsf.dev.java.net/ajax" | template="layout/template.xhtml"> | | <ui:define name="body"> | | <h:messages globalOnly="true" styleClass="message"/> | | <rich:dragIndicator id="indicator" /> | <h:form id="mapping"> | <div style="float: left; width: 60%;"> | <rich:panel id="feedColumns"> | <f:facet name="header">Your Columns</f:facet> | <rich:dataTable value="#{testdnd.valori}" var="fm" | styleClass="datatable" rowClasses="rowOdd,rowEven" style="width: 100%;"> | <h:column> | <f:facet name="header">Your Column</f:facet> | </h:column> | <h:column> | <f:facet name="header">Example Data(Drag me!)</f:facet> | <a:outputPanel style="border:1px solid grey;padding:2px;" | layout="block"> | <rich:dragSupport dragIndicator=":indicator" dragType="column" | dragValue="#{fm}"> | <rich:dndParam name="label" value="#{fm}" /> | </rich:dragSupport> | <span style="float: right"><strong>#{fm}</strong></span> <em>#{fm}</em> | </a:outputPanel> | </h:column> | </rich:dataTable> | </rich:panel> | </div> | <div> | <rich:panel id="cdmFields"> | <f:facet name="header"> | <h:outputText value="CDM Fields" /> | </f:facet> | | <rich:dataGrid value="#{testdnd.valori}" | var="fm" columns="2"> | <h:column> | <a:outputPanel style="border:1px solid red;padding:2px;" layout="block"> | <rich:dropSupport acceptedTypes="column" dropValue="#{fm}" | dropListener="#{testdnd.processDrop}" reRender="cdmFields,messages,mappedColumns,feedColumns"> | </rich:dropSupport> | #{fm} | </a:outputPanel> | </h:column> | </rich:dataGrid> | </rich:panel> | </div> | </h:form> | | </ui:define> | | </ui:composition> If I use the method processDrop without the DropEvent parameter all works well, but using the previous code I obtain this error : | javax.servlet.ServletException: /testdnd.xhtml @63,104 dropListener="#{testdnd.processDrop}": Method not found: TestdndBean.processDrop(org.ajax4jsf.dnd.event.DropEvent) | at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63) | at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) | at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) | at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) | at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) | at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) | at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) | at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) | at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) | at java.lang.Thread.run(Thread.java:595) | 17:46:50,968 ERROR [ExceptionFilter] exception root cause | javax.faces.el.MethodNotFoundException: /testdnd.xhtml @63,104 dropListener="#{testdnd.processDrop}": Method not found: TestdndBean.processDrop(org.ajax4jsf.dnd.event.DropEvent) | at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:71) | at org.richfaces.component.UIDropSupport.broadcast(UIDropSupport.java:79) | at org.ajax4jsf.ajax.repeat.UIDataAdaptor.broadcast(UIDataAdaptor.java:1056) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.processEvents(AjaxViewRoot.java:180) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:156) | at org.ajax4jsf.framework.ajax.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:62) | at org.ajax4jsf.framework.ajax.AjaxContext.invokeOnRegionOrRoot(AjaxContext.java:176) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.processDecodes(AjaxViewRoot.java:267) | at org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues(LifecycleImpl.java:219) | at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:71) | at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63) | at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) | at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) | at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) | at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) | at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) | at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) | at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) | at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) | at java.lang.Thread.run(Thread.java:595) | 17:46:51,078 ERROR [DebugPageHandler] redirecting to debug page | javax.faces.el.MethodNotFoundException: /testdnd.xhtml @63,104 dropListener="#{testdnd.processDrop}": Method not found: TestdndBean.processDrop(org.ajax4jsf.dnd.event.DropEvent) | at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:71) | at org.richfaces.component.UIDropSupport.broadcast(UIDropSupport.java:79) | at org.ajax4jsf.ajax.repeat.UIDataAdaptor.broadcast(UIDataAdaptor.java:1056) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.processEvents(AjaxViewRoot.java:180) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:156) | at org.ajax4jsf.framework.ajax.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:62) | at org.ajax4jsf.framework.ajax.AjaxContext.invokeOnRegionOrRoot(AjaxContext.java:176) | at org.ajax4jsf.framework.ajax.AjaxViewRoot.processDecodes(AjaxViewRoot.java:267) | at org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues(LifecycleImpl.java:219) | at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:71) | at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63) | at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79) | at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49) | at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) | at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) | at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) | at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) | at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) | at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) | at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) | at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) | at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) | at java.lang.Thread.run(Thread.java:595) | Even if in this simple example the method processDrop don't use the DropEvent parameter I am interested to use it for some check operation. I have used the latest version of seam from cvs (downloaded today). Please help me!! View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4032847#4032847 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4032847 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user