如何使用RESTFUL将参数从jsp传递到java类

时间:2013-01-29 05:46:22

标签: rest

我创建了一个jsp页面,我从中获取了一些值,并且在提交时它应该使用rest将参数传递给java类。

  

< form id =“payment”method =“post”action =“addtogroup”>

     

< ol style =“padding:0;”>

     

<立GT;< label for =“groupId”>组ID:< /标签>

     

< input type =“text”id =“groupId”name =“groupId”/>

     

< br />

     

<立GT;< label for =“vendorId”> Profile Id:< /标签>

     

< input type =“text”id =“vendorId”name =“vendorId”/>                           
      <李>                          <输入类型=“提交”值=“提交”/>                           < br />                   < /醇>
    < /形式>

,java代码是:

  

@RequestMapping(value =“/ addtogroup / {groupId} / {vendorId}”,method = RequestMethod.POST)

public String addtoGroup(@ModelAttribute("groupId") String groupId,@ModelAttribute("vendorId") String profileId){       
    Authentication auth = SecurityContextHolder.getContext().getAuthentication();
     String username = auth.getName();
     System.out.println("group id is="+groupId);
     System.out.println("profileId  is="+profileId);
     System.out.println("username  is="+username);
     grpDao.addToGroup(groupId,profileId,username);

    return "addtogroup";
}
  

当我在地址栏中直接键入[http:// localhost:8080 / biznex / rest / addtogroup / 2/13]时,代码就会被执行。   但是当我点击jsp中的提交按钮时,我找不到页面错误。   请帮助我。

2 个答案:

答案 0 :(得分:2)

< form id="payment" method="post" action="addtogroup">此声明表示使用POST方法将FORM数据提交到网址“currentpath”/“addtogroup”

但是,您的RESTFUL服务器端组件需要GET方法中/addtogoup/{groupid}/{vendorid}形式的URL

我建议您使用JavaScript方法将表单字段转换为URI路径 - 使用jQuery或纯JavaScript

答案 1 :(得分:0)

正如thewhiterabbit所写,您必须使用groupid和vendorid传递完整的REST URL。

为了构建它,你不需要使用JS,它就足够了spring标签库。在这里,它是如何工作的:

 <spring:url value="/addtogoup/${form.groupid}/${form.vendorid}" var="actionURL"/>

 <form:form method="POST" action="${actionURL}"  modelAttribute="form">