2017-04-05 11 views
2

私はSpring MVCを初めて使用しています。私はangularjsとSpring Bootをビルドしています。Angularjs春のブートを呼び出す前

私はangularjsを通してPOST呼び出しをしようとしましたが、このエラーが発生しています。 しかし、私は郵便配達員と一緒に試してみるとx-www-form-urlencodedで動作していますが、フォームデータでは以下のエラーが発生しています。 Angularjsで

ポストマンエラー

{ 
 
    "timestamp": 1491406541851, 
 
    "status": 500, 
 
    "error": "Internal Server Error", 
 
    "exception": "org.springframework.dao.DataIntegrityViolationException", 
 
    "message": "PreparedStatementCallback; SQL [INSERT INTO employeedetails(Name, Company, Location,Age) VALUES (?,?,?,?)]; Column 'Name' cannot be null; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'Name' cannot be null", 
 
    "path": "/createEmployee" 
 
}

HTTP呼び出し

$http({ 
 
\t \t  method: 'POST', 
 
\t \t  url: "/createEmployee", 
 
\t \t  headers: {'Content-Type': 'application/x-www-form-urlencoded'}, 
 
\t \t  data: $scope.employee, 
 
\t \t }).success(function() {});

\t 
 
\t @RequestMapping(value="/createEmployee", method=RequestMethod.POST,consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE) 
 
\t public void createEmployee(employeeDetails empl) 
 
\t { 
 
\t \t System.out.println(empl.getAge()); 
 
\t \t empdao.createEmployee(empl); 
 
\t }

+0

ので、あなたの春のAPIで、あなたはメディアタイプ 'アプリケーション/ x-www-form-urlencodedで' が '形式データ' を受け入れています。フォームデータとして送信する場合は、Spring APIを変更する必要があります。 – kaushlendras

+0

あなたは私に変更するコードを教えていただけますか –

+0

どのタイプで、データを送りたいですか? 'application/x-www-form-urlencoded'または 'form-data'? – kaushlendras

答えて

0
@RequestMapping(value="/createEmployee", method=RequestMethod.POST,consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE) 
public void createEmployee(@RequestBody @Valid employeeDetails empl) 
{ 
    System.out.println(empl.getAge()); 
    empdao.createEmployee(empl); 
} 
+0

いくつかの説明を含めるように編集してください。コードのみの回答は、今後のSO読者の教育にはほとんど役に立ちません。あなたの答えは、低品質であるために調整キューに入れられることがあります。 – Jens

関連する問題