Ajax с использованием плагинов Dojo в Struts2 - PullRequest
0 голосов
/ 12 марта 2012

Я пытаюсь сделать ajax-вызов из div, используя плагины dojo в struts2 .Я использую следующие jar: struts2-core-2.1.8.1.jar

struts2-dojo-plugin-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 . Может кто-нибудь, пожалуйста, помогите мне здесь.

1 Ответ

0 голосов
/ 21 марта 2012

Если вы только начинаете, я бы посоветовал вам не использовать Dojo.Этот плагин ajax устарел и больше не поддерживается.

Попробуйте Jquery (есть даже плагин struts-jquery), который очень прост в изучении, активно поддерживается и содержит множество плагинов, поэтому вам не нужно зановоколесо.

...