Передача параметра IBM MFP 7.1 из собственного приложения Android - всегда неопределенная
Я использую Android Studio 2.1.2 и IBM MFP 7.1. Я настроил собственное студийное приложение, как описано в документации здесь https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/7.1/quick-start/android-quick-start/
Я могу успешно подключиться к MF-серверу.
У меня проблема с передачей параметров адаптерам. Я поместил Logger точку в коде адаптера следующим образом:
function listTasksByUserName(username){
var baseUrl = "/Rest/v1/tasks";
WL.Logger.info("The username passed to the listTasksByUserName is: " + username);
var input = {
method : 'get',
returnedContentType : 'json',
path : baseUrl,
parameters : {
"mUserName" : username
}
};
return WL.Server.invokeHttp(input);
}
Моя реализация Java:
//create the adapter URI
URI adapterPath = null;
try {
adapterPath = new URI("/adapters/TasksAdapter/listTasksByUserName");
} catch (URISyntaxException e) {
e.printStackTrace();
}
//create the request
String username="caseworker";
WLResourceRequest request = new WLResourceRequest(adapterPath,WLResourceRequest.GET);
request.setQueryParameter("params", username);
request.send(new MyInvokeListener());
}
вывод из журналов выглядит следующим образом: [12/1/16 11:53:44:992 EST] 0000013f ht.integration.js.JavaScriptIntegrationLibraryImplementation I Имя пользователя, переданное в listTasksByUserName: undefined [проект AndroidNativeApiTest] [12/1/16 11:53:58:999 EST] 00000085 ht.integration.js.JavaScriptIntegrationLibraryImplementation I Имя пользователя, переданное в listTasksByUserName, является: undefined [проект AndroidNativeApiTest]
Любая помощь приветствуется.
1 ответ
Необходимо использовать точное имя параметра следующим образом и указывать значения в виде литералов!!!!!
request.setQueryParameter ("params", "[\ '" + username + "\']");