2012-03-12 61 views
0

我想使用struts2中的dojo插件從div中調用ajax調用。我使用下面的罐子: Struts2的核心 - 2.1.8.1.jar在struts2中使用dojo插件的Ajax

Struts2的,泥鰍插件,2.1.8.1.jar

我有以下的jsp:

<%@ taglib prefix="sx" uri="/struts-dojo-tags"%> 
    <%@ taglib prefix="s" uri="/struts-tags"%> 
    <html> 
     <head> 
     <sx:head/> 
     </head> 
     <body> 
     <sx:div id="loginDiv" theme="ajax"> 
     <div style="width: 300px;border-style: solid"> 
      <s:form action="login" validate="true">   
       <s:textfield name="username" label="Login name"/> 
       <s:password name="password" label="Password"/> 
       <sx:submit targets="loginDiv" notifyTopics="/login"/>  
      </s:form> 
     </div> 
     </sx:div> 
     </body> 
    </html> 

但我得到以下例外

java.lang.AbstractMethodError 
at org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java:59) 
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:53) 
at org.apache.jsp.WEB_002dINF.content.rule.rule_jsp._jspx_meth_sx_submit_0(rule_jsp.java from :253) 
at org.apache.jsp.WEB_002dINF.content.rule.rule_jsp._jspx_meth_s_form_0(rule_jsp.java from :186) 
at org.apache.jsp.WEB_002dINF.content.rule.rule_jsp._jspx_meth_sx_div_0(rule_jsp.java from :138) 
at org.apache.jsp.WEB_002dINF.content.rule.rule_jsp._jspService(rule_jsp.java from :82) 
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:109) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:403) 
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:476) 
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:366) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:538) 
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478) 
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) 
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:517) 
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225) 

我有適當的struts.xml和動作定義。 同樣的工作,如果我不使用ajax。有人可以幫我在這裏。

回答

0

如果你剛開始,我建議你不要使用Dojo。該ajax插件已棄用,不再維護。

嘗試jquery(甚至有一個struts-jquery插件),它非常容易學習,主動維護並具有大量插件,因此您不必重新發明輪子。