Best Cerberus-source code snippet using org.cerberus.servlet.crud.countryenvironment.ReadAppService.processRequest
Source:ReadAppService.java
...68 * @param response servlet response69 * @throws ServletException if a servlet-specific error occurs70 * @throws IOException if an I/O error occurs71 */72 protected void processRequest(HttpServletRequest request, HttpServletResponse response)73 throws ServletException, IOException {74 //Get AppServices75 String echo = request.getParameter("sEcho");76 String columnName = ParameterParserUtil.parseStringParam(request.getParameter("columnName"), "");77 ApplicationContext appContext = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());78 String charset = request.getCharacterEncoding() == null ? "UTF-8" : request.getCharacterEncoding();79 response.setContentType("application/json");80 response.setCharacterEncoding("utf8");81 // Calling Servlet Transversal Util.82 ServletUtil.servletStart(request);83 // Default message to unexpected error.84 MessageEvent msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_UNEXPECTED);85 msg.setDescription(msg.getDescription().replace("%DESCRIPTION%", ""));86 PolicyFactory policy = Sanitizers.FORMATTING.and(Sanitizers.LINKS);87 /**88 * Parsing and securing all required soapLibrarys.89 */90 // Nothing to do here as no soapLibrary to check.91 //92 // Global boolean on the servlet that define if the user has permition to edit and delete object.93 boolean userHasPermissions = request.isUserInRole("TestAdmin");94 // Init Answer with potencial error from Parsing soapLibrary.95 AnswerItem<JSONObject> answer = new AnswerItem<>(new MessageEvent(MessageEventEnum.DATA_OPERATION_OK));96 boolean testcase = ParameterParserUtil.parseBooleanParam(request.getParameter("testcase"), false);97 String service = ParameterParserUtil.parseStringParamAndDecode(request.getParameter("service"), null, charset);98 try {99 String system;100 JSONObject jsonResponse = new JSONObject();101 if (service == null && Strings.isNullOrEmpty(columnName)) {102 answer = findAppServiceList(appContext, userHasPermissions, request);103 jsonResponse = answer.getItem();104 } else if (!Strings.isNullOrEmpty(columnName)) {105 answer = findDistinctValuesOfColumn(appContext, request, columnName);106 jsonResponse = answer.getItem();107 } else if (service != null && request.getParameter("limit") != null) {108 answer = findAppServiceByLikeName(service, appContext, Integer.parseInt(request.getParameter("limit")));109 jsonResponse = answer.getItem();110 } else if (service != null && testcase) {111 answer = getTestCasesUsingService(service, appContext);112 jsonResponse = answer.getItem();113 } else {114 answer = findAppServiceBySystemByKey(service, appContext, userHasPermissions);115 jsonResponse = answer.getItem();116 }117 jsonResponse.put("messageType", answer.getResultMessage().getMessage().getCodeString());118 jsonResponse.put("message", answer.getResultMessage().getDescription());119 jsonResponse.put("sEcho", echo);120 response.getWriter().print(jsonResponse.toString());121 } catch (JSONException e) {122 LOG.warn(e, e);123 //returns a default error message with the json format that is able to be parsed by the client-side124 response.getWriter().print(AnswerUtil.createGenericErrorAnswer());125 }126 }127 private AnswerItem<JSONObject> findAppServiceList(ApplicationContext appContext, boolean userHasPermissions, HttpServletRequest request) throws JSONException {128 AnswerItem<JSONObject> item = new AnswerItem<>();129 JSONObject object = new JSONObject();130 appServiceService = appContext.getBean(AppServiceService.class);131 int startPosition = Integer.valueOf(ParameterParserUtil.parseStringParam(request.getParameter("iDisplayStart"), "0"));132 int length = Integer.valueOf(ParameterParserUtil.parseStringParam(request.getParameter("iDisplayLength"), "0"));133 /*int sEcho = Integer.valueOf(request.getParameter("sEcho"));*/134 String searchParameter = ParameterParserUtil.parseStringParam(request.getParameter("sSearch"), "");135 int columnToSortParameter = Integer.parseInt(ParameterParserUtil.parseStringParam(request.getParameter("iSortCol_0"), "0"));136 String sColumns = ParameterParserUtil.parseStringParam(request.getParameter("sColumns"), "service,type,method,description");137 String columnToSort[] = sColumns.split(",");138 String columnName = columnToSort[columnToSortParameter];139 String sort = ParameterParserUtil.parseStringParam(request.getParameter("sSortDir_0"), "asc");140 List<String> individualLike = new ArrayList<>(Arrays.asList(ParameterParserUtil.parseStringParam(request.getParameter("sLike"), "").split(",")));141 List<String> systems = ParameterParserUtil.parseListParamAndDecodeAndDeleteEmptyValue(request.getParameterValues("system"), Arrays.asList("DEFAULT"), "UTF-8");142 Map<String, List<String>> individualSearch = new HashMap<>();143 for (int a = 0; a < columnToSort.length; a++) {144 if (null != request.getParameter("sSearch_" + a) && !request.getParameter("sSearch_" + a).isEmpty()) {145 List<String> search = new ArrayList<>(Arrays.asList(request.getParameter("sSearch_" + a).split(",")));146 if (individualLike.contains(columnToSort[a])) {147 individualSearch.put(columnToSort[a] + ":like", search);148 } else {149 individualSearch.put(columnToSort[a], search);150 }151 }152 }153 AnswerList<AppService> resp = appServiceService.readByCriteria(startPosition, length, columnName, sort, searchParameter, individualSearch, systems);154 JSONArray jsonArray = new JSONArray();155 if (resp.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {//the service was able to perform the query, then we should get all values156 for (AppService param : resp.getDataList()) {157 jsonArray.put(convertAppServiceToJSONObject(param));158 }159 }160 object.put("hasPermissions", userHasPermissions);161 object.put("contentTable", jsonArray);162 object.put("iTotalRecords", resp.getTotalRows());163 object.put("iTotalDisplayRecords", resp.getTotalRows());164 item.setItem(object);165 item.setResultMessage(resp.getResultMessage());166 return item;167 }168 private AnswerItem<JSONObject> findAppServiceBySystemByKey(String key, ApplicationContext appContext, boolean userHasPermissions) throws JSONException {169 AnswerItem<JSONObject> answerItem = new AnswerItem<>();170 JSONObject response = new JSONObject();171 appServiceService = appContext.getBean(AppServiceService.class);172 AnswerItem<AppService> resp = appServiceService.readByKeyWithDependency(key);173 AppService p = null;174 if (resp.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {//the service was able to perform the query, then we should get all values175 p = resp.getItem();176 }177 JSONObject item = convertAppServiceToJSONObject(p);178 response.put("contentTable", item);179 if (p != null) {180 item.put("hasPermissions", userHasPermissions);181 }182 answerItem.setItem(response);183 answerItem.setResultMessage(resp.getResultMessage());184 return answerItem;185 }186 private AnswerItem<JSONObject> findAppServiceByLikeName(String key, ApplicationContext appContext, int limit) throws JSONException {187 AnswerItem<JSONObject> answerItem = new AnswerItem<>();188 JSONObject response = new JSONObject();189 appServiceService = appContext.getBean(AppServiceService.class);190 AnswerList<AppService> resp = appServiceService.readByLikeName(key, limit);191 AppService p = null;192 JSONArray jsonArray = new JSONArray();193 if (resp.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {//the service was able to perform the query, then we should get all values194 for (AppService appService : resp.getDataList()) {195 jsonArray.put(convertAppServiceToJSONObject(appService));196 }197 }198 response.put("contentTable", jsonArray);199 response.put("iTotalRecords", resp.getTotalRows());200 response.put("iTotalDisplayRecords", resp.getTotalRows());201 answerItem.setItem(response);202 answerItem.setResultMessage(resp.getResultMessage());203 return answerItem;204 }205 /**206 * Auxiliary method that extracts the list of test cases that are currently207 * using one service.208 *209 * @param appContext - context object used to get the required beans210 * @param service - identifier of the service211 * @return an answer item containing the information about the test cases212 * that use the entry213 * @throws JSONException214 */215 private AnswerItem<JSONObject> getTestCasesUsingService(String service, ApplicationContext appContext) throws JSONException {216 JSONObject object = new JSONObject();217 JSONArray objectArray = new JSONArray();218 AnswerItem<JSONObject> ansItem = new AnswerItem<>();219 ITestCaseService tcService = appContext.getBean(ITestCaseService.class);220 AnswerList<TestListDTO> ansList = tcService.findTestCasesThatUseService(service);221 //if the response is success then we can iterate and search for the data222 if (ansList.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {223 List<TestListDTO> listDTO = ansList.getDataList();224 for (TestListDTO l : listDTO) {225 JSONArray jsonArray = new JSONArray();226 JSONArray arrTestCase = new JSONArray();227 for (TestCaseListDTO testCase : l.getTestCaseList()) {228 JSONObject jsonTestCase = new JSONObject();229 jsonTestCase.put("TestCaseNumber", testCase.getTestCaseNumber());230 jsonTestCase.put("TestCaseDescription", testCase.getTestCaseDescription());231 jsonTestCase.put("Creator", testCase.getCreator());232 jsonTestCase.put("Active", testCase.isIsActive());233 jsonTestCase.put("Status", testCase.getStatus());234 jsonTestCase.put("Group", testCase.getGroup());235 jsonTestCase.put("Application", testCase.getApplication());236 arrTestCase.put(jsonTestCase);237 }238 //test details239 jsonArray.put(l.getTest());240 jsonArray.put(l.getDescription());241 jsonArray.put(l.getTestCaseList().size());242 jsonArray.put(arrTestCase);243 //test case details244 objectArray.put(jsonArray);245 }246 }247 object.put("TestCasesList", objectArray);248 ansItem.setItem(object);249 ansItem.setResultMessage(ansList.getResultMessage());250 return ansItem;251 }252 private AnswerItem<JSONObject> findDistinctValuesOfColumn(ApplicationContext appContext, HttpServletRequest request, String columnName) throws JSONException {253 AnswerItem<JSONObject> answer = new AnswerItem<>();254 JSONObject object = new JSONObject();255 appServiceService = appContext.getBean(IAppServiceService.class);256 String searchParameter = ParameterParserUtil.parseStringParam(request.getParameter("sSearch"), "");257 String sColumns = ParameterParserUtil.parseStringParam(request.getParameter("sColumns"), "para,valC,valS,descr");258 String columnToSort[] = sColumns.split(",");259 List<String> individualLike = new ArrayList<>(Arrays.asList(ParameterParserUtil.parseStringParam(request.getParameter("sLike"), "").split(",")));260 Map<String, List<String>> individualSearch = new HashMap<>();261 for (int a = 0; a < columnToSort.length; a++) {262 if (null != request.getParameter("sSearch_" + a) && !request.getParameter("sSearch_" + a).isEmpty()) {263 List<String> search = new ArrayList<>(Arrays.asList(request.getParameter("sSearch_" + a).split(",")));264 if (individualLike.contains(columnToSort[a])) {265 individualSearch.put(columnToSort[a] + ":like", search);266 } else {267 individualSearch.put(columnToSort[a], search);268 }269 }270 }271 AnswerList applicationList = appServiceService.readDistinctValuesByCriteria(searchParameter, individualSearch, columnName);272 object.put("distinctValues", applicationList.getDataList());273 answer.setItem(object);274 answer.setResultMessage(applicationList.getResultMessage());275 return answer;276 }277 private JSONObject convertAppServiceToJSONObject(AppService appservice) throws JSONException {278 Gson gson = new Gson();279 JSONObject result = new JSONObject();280 if (appservice != null) {281 result = new JSONObject(gson.toJson(appservice));282 }283 return result;284 }285 // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">286 /**287 * Handles the HTTP <code>GET</code> method.288 *289 * @param request servlet request290 * @param response servlet response291 * @throws ServletException if a servlet-specific error occurs292 * @throws IOException if an I/O error occurs293 */294 @Override295 protected void doGet(HttpServletRequest request, HttpServletResponse response)296 throws ServletException, IOException {297 processRequest(request, response);298 }299 /**300 * Handles the HTTP <code>POST</code> method.301 *302 * @param request servlet request303 * @param response servlet response304 * @throws ServletException if a servlet-specific error occurs305 * @throws IOException if an I/O error occurs306 */307 @Override308 protected void doPost(HttpServletRequest request, HttpServletResponse response)309 throws ServletException, IOException {310 processRequest(request, response);311 }312 /**313 * Returns a short description of the servlet.314 *315 * @return a String containing servlet description316 */317 @Override318 public String getServletInfo() {319 return "Short description";320 }// </editor-fold>321}...
processRequest
Using AI Code Generation
1$(document).ready(function() {2 $.ajax({3 success: function(data) {4 var select = document.getElementById("application");5 for (var i = 0; i < data.length; i++) {6 var opt = document.createElement('option');7 opt.value = data[i];8 opt.innerHTML = data[i];9 select.appendChild(opt);10 }11 },12 });13});14$(document).ready(function() {15 $.ajax({16 success: function(data) {17 var select = document.getElementById("country");18 for (var i = 0; i < data.length; i++) {19 var opt = document.createElement('option');20 opt.value = data[i];21 opt.innerHTML = data[i];22 select.appendChild(opt);23 }24 },25 });26});27$(document).ready(function() {28 $.ajax({29 success: function(data) {30 var select = document.getElementById("environment");31 for (var i = 0; i < data.length; i++) {32 var opt = document.createElement('option');33 opt.value = data[i];
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!