Reputation: 15
I am following the Java SQL Adapter tutorial for MobileFirst Platform 7.
Im trying to create a new user by using REST call type @POST
, but the chrome console is
POST http://192.168.56.1:10080/JavaAdapters/adapters/UserAdapter/?userId=test&lastName=test&firstName=test&password=test 409 (Conflict)
and the response is
Column 'userId' cannot be null
I think the params of this procedure are set with null value
This is my code
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
);}
Upvotes: 0
Views: 306
Reputation: 2118
Since you are sending a POST
request to the adapter you should not be using setQueryParameter
because that is designed for GET
requests, you should use sendFormParameters
instead of send
. Your updated code should look like this:
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);
}
Upvotes: 4