0

MobileFirst Platform 7 のJava SQL Adapterチュートリアルに従っています。REST 呼び出しタイプを使用して新規ユーザーを作成しようとしています@POSTが、chrome コンソールは

POST http://192.168.56.1:10080/JavaAdapters/adapters/UserAdapter/?userId=test&lastName=test&firstName=test&password=test 409 (競合)

そして応答は

列「userId」を null にすることはできません

このプロシージャのパラメータには null 値が設定されていると思います

これは私のコードです

var userId = "test";var lastName = "test";var firstName = "test";var password = "test";

function createUser(userId,lastName,firstName,password){
  busyIndicator.show();
  var resourceRequest = new WLResourceRequest("/adapters/UserAdapter/", WLResourceRequest.POST);
  resourceRequest.setQueryParameter("userId", userId);
  resourceRequest.setQueryParameter("lastName", lastName);
  resourceRequest.setQueryParameter("firstName", firstName);
  resourceRequest.setQueryParameter("password", password);
  resourceRequest.send().then(
        createUserSuccess,
        createUserFailure
);}
4

1 に答える 1

4

リクエスト用に設計されているため、POST使用すべきではないアダプターにリクエストを送信しているため、代わりに を使用する必要があります。更新されたコードは次のようになります。setQueryParameterGETsendFormParameterssend

function createUser(userId, lastName, firstName, password){
  busyIndicator.show();
  var resourceRequest = new WLResourceRequest("/adapters/UserAdapter/", WLResourceRequest.POST);
  var user = {
    "userId": userId,
    "firstName": firstName,
    "lastName": lastName,
    "password": password
  };

  resourceRequest.sendFormParameters(user).then(createUserSuccess).fail(createUserFailure);
}
于 2015-04-16T21:20:10.977 に答える