我正在制定一种方法,当单击网站上某人的姓名时,将使用angularJS触发请求。请求应将名称作为字符串发送到应用程序的后端部分,该应用程序连接到LDAP并使用JSONobjects提取有关人员的信息,然后将其发送回前端部分。我确定一切正常,因为我已经对其进行了测试,唯一的问题是我不知道如何将人员名称的String值传递给该方法的后端请求。这是单击此人的姓名时触发的JS代码:
var personApp = angular.module('personApp', [ 'ngRoute', 'ngCookies' ]);
personApp.controller('PersonController', function($scope, $http) {
$scope.showPerson = function(name){
$scope.name = name;
$http({
method : "POST",
url : "AMPServlet",
params : {
parameterType : "personName",
name:name
}
}).success(function(response) {
$scope.personLDAP = response.person;
console.log(response);
});
};
这是Servlet的代码,该代码调用LDAP方法并将信息返回给JS部分,然后返回到最前面。
case "personName": {
log.info("primljen request za dohvacanje informacija o dezurnim osobama");
PersonADInfo info = new PersonADInfo();
try {
info = ldapAuthenticationServiceAccess.retrievePersonADInfo(session.getAttribute("ng-click").toString());
} catch (NullPointerException e) {
e.printStackTrace();
log.error(e);
}
jsonObject = new JSONObject();
tmpJSONObject = new JSONObject();
try {
tmpJSONObject = new JSONObject();
tmpJSONObject.put("name", info.getName());
tmpJSONObject.put("email", info.getEmail());
tmpJSONObject.put("department", info.getDepartment());
tmpJSONObject.put("workplace", info.getWorkplace());
tmpJSONObject.put("phone", info.getPhone());
tmpJSONObject.put("mobile", info.getMobile());
tmpJSONObject.put("vpn", info.getVPN());
tmpJSONObject.put("mobilevpn", info.getMobileVPN());
jsonObject.put("person", tmpJSONObject);
} catch (JSONException e) {
e.printStackTrace();
e.getMessage();
log.error(e.getStackTrace());
}
writer.println(jsonObject.toString());
}
break;
我需要帮助的部分是以下代码行:
info = ldapAuthenticationServiceAccess.retrievePersonADInfo(session.getAttribute("ng-click").toString());
确切地说,我不确定要在od getAttribute()中放入什么来获取要作为参数提供给该方法的人员的姓名。 感谢您的任何帮助,谢谢!