你的INDEX里是怎么写的?贴出来

解决方案 »

  1.   

    或者,你的这个类jbtest.LookupForm的大小写没错吧?
    你有没有把它放到WEB-INF下的CLASSES下?
    还有,你是不是用WAR去部署的?
    都说清楚点
      

  2.   

    明显是相关的类没有拷贝到web-inf下
      

  3.   

    我用的是tomcat,我的目录结构是:C:\Program Files\Apache Tomcat 4.0\webapps\wileyapp; wileyapp是我的应用目录,wineyapp下有WEB-INF目录,在WEB-INF目录下有struts-config.xml与web.xml两个文件与一些运行struts需要的文件,LookForm放在WEB-INF\classes\jbtest目录下,大小写应该没问题。我的index.jsp很简单:<%@ page language="java" %>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
    <html>
    <head>
    <title>Wiley Struts Application</title>
    </head>
    <body>
    <table width="500"
    border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td>&nbsp;</td>
    </tr>
    <tr bgcolor="#36566E">
    <td height="68" width="48%">
    <div align="left">
    <img src="images/hp_logo_wiley.gif"width="220"
    height="74">
    </div>
    </td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    </tr>
    </table>
    <html:form action="Lookup"
    name="lookupForm"
    type="jbtest.LookupForm" >
    <table width="45%" border="0">
    <tr>
    <td>Symbol:</td>
    <td><html:text property="symbol" /></td>
    </tr>
    <tr>
    <td colspan="2" align="center"><html:submit /></td>
    </tr>
    </table>
    </html:form>
    </body>
    </html>jbtest.LookupForm也很简单就是保存数据:
    package jbtest;
    import javax.servlet.http.HttpServletRequest;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    public class LookupForm extends ActionForm {
      private String symbol = null;
      public String getSymbol() {
        return (symbol);
     }
     public void setSymbol(String symbol) {
       this.symbol = symbol;
     }
     public void reset(ActionMapping mapping,
     HttpServletRequest request) {
        this.symbol = null;
     }}
    我把index.jsp中的<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>与
    <html:form action="Lookup"
    name="lookupForm"
    type="jbtest.LookupForm" >
    <table width="45%" border="0">
    <tr>
    <td>Symbol:</td>
    <td><html:text property="symbol" /></td>
    </tr>
    <tr>
    <td colspan="2" align="center"><html:submit /></td>
    </tr>
    </table>
    </html:form>屏蔽调,就可以。单打开<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>也出错,我不知道执行<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>,会做什么事。谢谢大家的指点
      

  4.   

    很可能你写的formbean并没有从org.apache.struts.action。ActionFormBean继承,导致类型转化错误!
      

  5.   

    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>中的uri="/WEB-INF/struts-html.tld"必须在web.xml中定义
      

  6.   

    你必须把所有和STRUTS相关的JAR放到WEB-INF下的LIB目录!而不能放到CLASSPATH中
    同时,打一个WAR包发布到TOMCAT上去!
      

  7.   

    请先确认jbtest.LookupForm是不是从org.apache.struts.action.ActionFormBean中继承过来的!
      

  8.   

    <html:form action="Lookup"
    name="lookupForm"
    type="jbtest.LookupForm" >
    中的type属性在struts-1.1中已不推荐,并且type属性的类别与struts-config.xml中的form定义要一样
      

  9.   

    谢谢大家,问题解决了。是LookupForm没有继承Action,导致类型转换出错。