0
<script type="text/javascript" src="${pageContext.request.contextPath}/resources/js/jquery.validate.min.js"></script>

        <script>
        function setHiddenVal(){
      var goAhead = true;
      var myVal="I am hidden value";                
        document.getElementById("secretValue").value = myVal;
        if (goAhead == true) {
        document.forms["register-form"].submit();
      }
      }
      </script> 
     </head>
     <body>
<!--Main Container Starts here-->
<div class="main_container">
    <div class="header">            
        <div class="right_panel">
            <h2 align="center"><u>User Master</u></h2>                      
                <div class="top-form">
                <div>
                  **<form:form action="/usermaster" modelAttribute="CustomerForm" id="register-form" method="POST">**
                   <table cellspacing="0" cellpadding="0" border="" class="form1">

                        <tr>
                                <td class="label">Name:</td>
                                <td>
                                    <form:input path="firstname"/>
                                </td>
                        </tr>
                        <tr>
                                <td class="label">Password:</td>
                                <td>
                                    <form:input path="password"/>
                                </td>

                        </tr>

                        </tbody>

                    </table>

             <div>
                <table>
                    <tr>
                    <td>&nbsp;</td>
                            <td>
                                <input type="button" class="btn blue px16" value="Search" />
                                <input type="button" name="submit" id="btnsubmit" value="Submit" onclick="setHiddenVal();"/>
                                <input type="button" class="btn blue px16" value="Clear" />                             
                                <input type="button" class="btn blue px16" value="Change Password" />               
                                <input type="button" class="btn blue px16" value="Manage User Notification Profile" />              
                     </td>
                    </tr>
                </table>
                   </div>
                </form:form>


                 </div> 
             </div>                                                
            <div class="clear"></div>
        </div>
    </div>
</div>
</body>
</html>


so above one is my code for jsp and below is the code of controller



    @RequestMapping(value={"/usermaster" }, method = RequestMethod.POST)
      public  final String addUserMaster(@ModelAttribute("CustomerForm") CustomerForm pricing, Map<String, Object> map,
                 Model model,  HttpServletRequest request) {
 System.out.println("the first name is "+pricing.getFirstname());
 System.out.println("the password is "+pricing.getPassword());
  return "usermaster";
           }

@RequestMapping(value={"/showusermaster" }, method = RequestMethod.GET)
      public String showPage(ModelMap model){
      model.addAttribute("CustomerForm", new CustomerForm());
      return "usermaster";
      }

しかし、私のページは次のURLのポップアップを使用して開かれます:

C:\Users\ganganshu.s\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\YW6383E8\usermaster

したがって、次のように開く必要があります

http://localhost:8080/enbee/usermaster

フォームアクションに何を入れるべきか教えてください..スプリングMVCのフォームアクションに間違いがあると思うので、上記の場合のようにアクションを入れます。

Spring 構成ファイルは以下のとおりです。

    <mvc:interceptors> 
<bean class="com.enbee.admin.interceptor.AuthenticationInterceptor" />

<!-- Declare a view resolver-->
<bean id="jspViewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver"
    p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" p:order="1" />

jsp 名は usermaster.jsp です。

そしてsidemenu.jspで私はこれに変更しました:

 <li><a href="<c:url value='/showusermaster'/>">User Master</a></li>
4

2 に答える 2

0

注釈のmethodパラメーターを次のように変更します。RequestMappingRequestMethod.POST

@RequestMapping(value="/usermaster", method = RequestMethod.POST)
public final String addUserMaster(...){
...
}

このメソッドを/usermaster使用してフォームを URL に送信すると、実行されます。method="POST"

また、このページをユーザーに表示する (URL にマップされた) メソッドも必要です。これには、以下の方法を使用できます。

@RequestMapping(value = "/showusermaster", method = RequestMethod.GET)
public String showPage(ModelMap model){
model.addAttribute("CustomerForm", new CustomerForm());
return "usermaster";
} 

このメソッドを配置すると、URL

http://localhost:8080/enbee/showusermaster

usermaster.jspページをユーザーに表示します。これを送信するformと、上記のaddUserMasterメソッドが呼び出されます。

新しい jsp ファイルを作成する必要はありません。URLはユーザーに/showusermasterを返し、usermaster.jspユーザーはフォームの値を追加してフォームを送信できます。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
...
<c:url var="submitUrl" value="/usermaster">
<form:form id="form" action="${submitUrl}" modelAttribute="CustomerForm" method="POST">

ユーザーが送信ボタンをクリックすると、このフォームが/usermasterURLに送信され、addUserMasterメソッドによって処理されます。

于 2013-10-18T10:38:49.783 に答える