update_member.jsp页面部分代码是(manage是工程名字):
<form name="form" method="post" action="/manage/member.do?method=update_member">
    <table width="90%" border="0" align="center" class="title">
      <tr>
        <td colspan="2" class="title">修改会员</td>
  </tr>
      <tr>
        <td width="30%" class="td"><div align="right">用户名:</div></td>
        <td width="70%" class="td"><input name="userName" type="text"  value="" size="20"/></td>
      </tr>            
       <tr>
        <td class="td"><div align="right">性别:</div></td>
        <td class="td">
          <select name="sex" size="1">
            <option value="1">男</option>
            <option value="0">女</option>
          </select>        </td>
      </tr>
      <tr>
        <td class="td"><div align="right">出生年月日:</div></td>
        <td class="td"><input name="birthday" type="text"  value="" size="20"/></td>
      </tr>
     
      <tr>
        <td class="td"><div align="right">是否关闭此会员:</div></td>
        <td class="td"><select name="manage" size="1">
          <option value="0" >是</option>
          <option value="1" >否</option>
        </select></td>
      </tr>      <tr>
        <td class="td"><div align="right">注册时间:</div></td>
        <td class="td"><input name="date" type="text" value="" size="20"/></td>
      </tr>
           <tr>
        <td align="right" class="td"><input type="submit" name="submit" value="修改"/></td>
        <td class="td"><input type="reset" name="Submit22" value="重置" /></td>
      </tr>
</table>
</form>struts-config.xml中相应的代码:
<action
      attribute="memberForm"
      name="memberForm"
      parameter="method"
      path="/member"
      scope="request"
      type="com.taolala.action.MemberAction">
      <forward name="succcess" path="/manage_member.jsp" />
</action>我在MemberAction中刚开始打印一句话(System.out.println("找不到啊!")),但根本就到不了哪就抛异常,异常如下:2007-9-4 18:41:59 org.apache.commons.beanutils.PropertyUtilsBean invokeMethod
严重: Method invocation failed.
java.lang.IllegalArgumentException: argument type mismatch
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:1773)
at org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:1759)
at org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1648)
at org.apache.commons.beanutils.PropertyUtilsBean.setProperty(PropertyUtilsBean.java:1677)
at org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1022)
at org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:493)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:805)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:203)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:595)
2007-9-4 18:41:59 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.IllegalArgumentException: Cannot invoke com.taolala.form.MemberForm.setDate - argument type mismatch
at org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:1778)
at org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:1759)
at org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1648)
at org.apache.commons.beanutils.PropertyUtilsBean.setProperty(PropertyUtilsBean.java:1677)
at org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1022)
at org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:493)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:805)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:203)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:595)

解决方案 »

  1.   

    处理这个表单的Action是com.taolala.action.MemberAction吗?
    如果是那么<form>里的action的值跟struts-config.xml中的path应该一样吧?
    <action
          attribute="memberForm"
          name="memberForm"
          parameter="method"
          path="/member"
          scope="request"
          type="com.taolala.action.MemberAction">
          <forward name="succcess" path="/manage_member.jsp" />
    </action>path改成path="/manage/member"看看
      

  2.   

    看异常是setDate出错。请检查下setDate的参数及类型是否正确吧。若你用的setDate(Date date),不妨改成setDate(String date)试下。
      

  3.   

    memberForm中的字段和页面上匹配吗?
      

  4.   

    Cannot invoke com.taolala.form.MemberForm.setDate 非法参数,应该换成String类型
      

  5.   

    把setDate(Date date)改成setDate(String date)就OK了!!!
    为什么会出现这样的问题啊!我数据库中可是Date类型的啊!