I am getting bad request issue from spring controller. (Reason : The request sent by the client was syntactically incorrect.) Below is my rest call :
Requested payload:
categoty: "Game"
itemDescription: "adas"
itemDiscount: 1
itemName: "asdas"
itemPrice: 1
itemQuantity: 1
Rest Method
@RequestMapping(value="/addItem", method = RequestMethod.POST,headers="Accept=application/json")
public @ResponseBody String createItem(@RequestBody Item item) {
ItemDAO itemDAO=new ItemDAO(item);
try{
itemDAO.createProduct();
return "Success";
}catch(Exception e){
System.out.println("Exception occured in item update");
e.printStackTrace();
return "Exception occured in item add";
}
}
Model (Just properties)
@Entity
@Table(name= "Item")
public class Item {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="id")
private int id;
private String itemName,itemDescription,categoty;
private double itemPrice;
private float itemDiscount;
private int itemQuantity;
}
Markup
<div data-ng-show="show=='addProduct'">
<p class="{{errorClass}}">{{newProductError}}</p>
<h2>Add an Item</h2>
<form class="form-horizontal" role="form">
<div class="form-group">
<label class="control-label col-sm-2" for="email">Item Name</label>
<div class="col-sm-10">
<input class="form-control" placeholder="Item Name" ng-model="newItem.itemName">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="email">Item Description</label>
<div class="col-sm-10">
<input class="form-control" placeholder="Item Description" ng-model="newItem.itemDescription">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="email">Item Price</label>
<div class="col-sm-10">
<input class="form-control" type="number" placeholder="Item Price" ng-model="newItem.itemPrice">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="pwd">Item Discount</label>
<div class="col-sm-10">
<input type="number" class="form-control" id="pwd" placeholder="Item Discount" ng-model="newItem.itemDiscount">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="pwd">Item Quantity</label>
<div class="col-sm-10">
<input type="number" class="form-control" id="pwd" placeholder="Item Quantity" ng-model="newItem.itemQuantity">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="email">Item Category</label>
<div class="col-sm-10">
<input class="form-control" placeholder="Item Category" ng-model="newItem.categoty">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success" ng-click="addItem();">Submit</button>
</div>
</div>
</form>
</div>
Service
addItem: function(item){
return $http({
method : 'POST',
url : '/Ecomm-Java-Backend/item/addItem',
data: item,
heades:{
'Content-type': 'application/json'
}
}).success(function(result){
console.log(result.length);
console.log("result success "+ result);
return result;
}).error(function(err){
console.log("result success "+ err);
return err;
});
}
When I invoke the rest call , I'm getting bad request error.
What could be the issue here? Any help would appreciated.