spring 是可以轻松处理多个表单的,我回去可以帮你查下我的笔记,我以前学习的时候用过

解决方案 »

  1.   

    由于下班才能回家看笔记,所以先网上查了下 ,你先参考下
    http://opensource.atlassian.com/confluence/spring/display/COOK/Forms+-+Multiple+forms+on+the+same+page
      

  2.   

    goal_ 你好,昨晚一直等你,请帮忙解答
      

  3.   

    一直没有人用spring mvc吗?这个需求是很正常的
      

  4.   

    难道没有人用spring mvc吗,怎么没有人回答
      

  5.   

    我们项目中用到过simpleformcontroller, 我个人觉得他功能很强大, 扩展性很强, 我们做过一个项目, 项目中包含6个大表单, 表单中有小表单, 每个小表单可以随意增加一行, 我们用simpleFormController 一下子就得到了所有form的直.
    你说的问题我遇到过, 我先查一下笔记,然后给你一个demo.
      

  6.   

    跟你说两点:
    1: 在你的simpleFormController中用到的successView 和formView你不能通过jsp来访问, 要通过你配置的controller bean name 来访问, 比如你的actionA, actionB.
    2: jsp中数据绑定不要按你那样, 那样会出错. 像我这样:<form method="post" action="addbook.do">
    <spring:bind path="book.id">
    <input type="text" name="id" value="<core:out value="${book.id}"/>"/>
    </spring:bind>
    <spring:bind path="book.name">
    <input type="text" name="name" value="<core:out value="${book.name}"/>"/>
    </spring:bind>
    <spring:bind path="book.author">
    <input type="text" name="author" value="<core:out value="${book.author}"/>"/>
    </spring:bind>
    <spring:bind path="book.price">
    <input type="text" name="price" value="<core:out value="${book.price}"/>"/>
    </spring:bind>
    <input type="submit"  value="Submit" /><br>
    </form>
      

  7.   

    如果你要demo, 可以给我email, 我发给你.
      

  8.   

    非常感谢sunxing007,现在需要解决的问题不是要一个大的form,而是多个没有任何联系的form。
    在simpleFormController中用到的successView 和formView中我指定的jsp,是通过
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> 
        <property name="prefix"> 
          <value>/WEB-INF/jsp/ </value> 
        </property> 
        <property name="suffix"> 
          <value>.jsp </value> 
        </property>
    来查找的。
    我不知道通过什么连接进入包含form的jsp。
    对于只包含一个form的jsp来说,我只能通过actionA进入,
    即使我这样定义了
    <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 
        <property name="mappings"> 
          <props> 
            <prop key="/index.html">formwardController </prop> 
            <prop key="/main.html">formwardController </prop>    
            <prop key="/jspA.html">formwardController </prop>    
            <prop key="/actionA.html">actionA </prop> 
            <prop key="/actionB.html">actionB </prop> 
          </props> 
        </property> 
      </bean> 
      <bean id="formwardController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController" /> 
    也不能通过jspA.html进入。我是从spring 2.5.4开始学习的,以前版本的spring我没有看过,我了解的是<spring:bind path="book.id">
    这样格式不建议使用,而是直接是
    <form:form>  <!--对应aciont是actionB  --> 
      属性1: <form:input path="field1" /> <br /> 
      属性2: <form:input path="fidld2" /> <br /> 
      若干字段 
        ... 
      ... 
      <br /> 
    <input type="submit" value="提交" /> 
    <input type="reset" value="重置" /> 
    </form:form> 
    这种格式。
    如果<spring:bind path="book.id">这种格式能够解决问题,也好
    请给发我发邮件[email protected]
    或者qq联系也可以:645621848
    多谢了!!!
      
      

  9.   

    我明白你的意思, 你是想一个jsp中多个form提交到多个或者有个controller. 不知道对否?
    要是这样, 那肯定会出错的. 你可以去研究一下simpleformcontroller的工作流程:
    当你用get方式想进入form页面的时候, 它会调用一个formbackingObject方法构造你页面需要的form, 然后结合你的页面进行绑定, 他的这个绑定是单一的, 也就是只有一个commandName, 你不妨做一个过渡form, 他包含你需要的所有的子form, 然后在controller中配置好他们, 在你的controller中再从这个大form 中得到你想要的子form.
    我家里的demo太简单了, 书上到处都是, 比较复杂的放在公司, 但是这周我休假.
      

  10.   

    谢谢你的解答,就是一个jsp内有多个form,分别对应不同的controller。就如同百度,
    最上面一个查询的form,查询出结果后,在下面列出查询结果,此查询结果也是一个form,可以对查询结果再进一步处理。
    这种需求是很平常的。我不理解spring为什么不考虑这种情况。
    我理解simpleformcontroller的工作流程。
    你的那种方式会导致controller爆炸,
    例如有3个form:form1,form2,form3,
    jsp1内是form1和form2;
    jsp2内是form1和form3;
    jsp3内是form2和form3;
    这样会导致相同的功能存在于多处。
      

  11.   

    lz解决了上面的问题没有?
    我现在也遇到这样的问题。我想如果两个form的业务逻辑不是很一样的话,iframe解决?如果form的业务是相关联,是否可以将两个实体command到一个里面去,或者系两个实体存在继承的关系,用一个form来提交!
    希望有遇到的朋友也帮帮忙提提意见!
    激情期待......
      

  12.   

    我也遇到楼主的问题了,
    顶上去
    高手来呀~~~~good luck
      

  13.   

    见下面连接http://blog.csdn.net/haole/archive/2008/10/28/3166816.aspx