List of usage examples for org.springframework.dao EmptyResultDataAccessException getMessage
@Override
@Nullable
public String getMessage()
From source file:dao.DatasetsDAO.java
public static ObjectNode getPagedDatasets(String urn, Integer page, Integer size, String user) { ObjectNode result = Json.newObject(); Integer userId = UserDAO.getUserIDByUserName(user); javax.sql.DataSource ds = getJdbcTemplate().getDataSource(); DataSourceTransactionManager tm = new DataSourceTransactionManager(ds); TransactionTemplate txTemplate = new TransactionTemplate(tm); final Integer id = userId; result = txTemplate.execute(new TransactionCallback<ObjectNode>() { public ObjectNode doInTransaction(TransactionStatus status) { ObjectNode resultNode = Json.newObject(); List<Dataset> pagedDatasets = new ArrayList<Dataset>(); List<Map<String, Object>> rows = null; if (id != null && id > 0) { if (StringUtils.isBlank(urn)) { rows = getJdbcTemplate().queryForList(SELECT_PAGED_DATASET_BY_CURRENT_USER, (page - 1) * size, size, id, id); } else { rows = getJdbcTemplate().queryForList(SELECT_PAGED_DATASET_BY_URN_CURRENT_USER, urn + "%", (page - 1) * size, size, id, id); }/*from w w w.j a v a 2 s . c o m*/ } else { if (StringUtils.isBlank(urn)) { rows = getJdbcTemplate().queryForList(SELECT_PAGED_DATASET, (page - 1) * size, size); } else { rows = getJdbcTemplate().queryForList(SELECT_PAGED_DATASET_BY_URN, urn + "%", (page - 1) * size, size); } } long count = 0; try { if (StringUtils.isBlank(urn)) { count = getJdbcTemplate().queryForObject(GET_PAGED_DATASET_COUNT, Long.class); } else { count = getJdbcTemplate().queryForObject(GET_PAGED_DATASET_COUNT_BY_URN, Long.class, urn + "%"); } } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } for (Map row : rows) { Dataset ds = new Dataset(); Timestamp modified = (Timestamp) row.get(DatasetWithUserRowMapper.DATASET_MODIFIED_TIME_COLUMN); ds.id = (Long) row.get(DatasetWithUserRowMapper.DATASET_ID_COLUMN); ds.name = (String) row.get(DatasetWithUserRowMapper.DATASET_NAME_COLUMN); ds.source = (String) row.get(DatasetWithUserRowMapper.DATASET_SOURCE_COLUMN); ds.urn = (String) row.get(DatasetWithUserRowMapper.DATASET_URN_COLUMN); ds.schema = (String) row.get(DatasetWithUserRowMapper.DATASET_SCHEMA_COLUMN); String strOwner = (String) row.get(DatasetWithUserRowMapper.DATASET_OWNER_ID_COLUMN); String strOwnerName = (String) row.get(DatasetWithUserRowMapper.DATASET_OWNER_NAME_COLUMN); Long sourceModifiedTime = (Long) row .get(DatasetWithUserRowMapper.DATASET_SOURCE_MODIFIED_TIME_COLUMN); String properties = (String) row.get(DatasetWithUserRowMapper.DATASET_PROPERTIES_COLUMN); try { if (StringUtils.isNotBlank(properties)) { ds.properties = Json.parse(properties); } } catch (Exception e) { Logger.error(e.getMessage()); } if (modified != null && sourceModifiedTime != null && sourceModifiedTime > 0) { ds.modified = modified; ds.formatedModified = modified.toString(); } String[] owners = null; if (StringUtils.isNotBlank(strOwner)) { owners = strOwner.split(","); } String[] ownerNames = null; if (StringUtils.isNotBlank(strOwnerName)) { ownerNames = strOwnerName.split(","); } ds.owners = new ArrayList<User>(); if (owners != null && ownerNames != null) { if (owners.length == ownerNames.length) { for (int i = 0; i < owners.length; i++) { User datasetOwner = new User(); datasetOwner.userName = owners[i]; if (datasetOwner.userName.equalsIgnoreCase(user)) { ds.isOwned = true; } if (StringUtils.isBlank(ownerNames[i]) || ownerNames[i].equalsIgnoreCase("*")) { datasetOwner.name = owners[i]; } else { datasetOwner.name = ownerNames[i]; } ds.owners.add(datasetOwner); } } else { Logger.error("getPagedDatasets get wrong owner and names. Dataset ID: " + Long.toString(ds.id) + " Owner: " + owners + " Owner names: " + ownerNames); } } Integer favoriteId = (Integer) row.get(DatasetWithUserRowMapper.FAVORITE_DATASET_ID_COLUMN); Long watchId = (Long) row.get(DatasetWithUserRowMapper.DATASET_WATCH_ID_COLUMN); Long schemaHistoryRecordCount = 0L; try { schemaHistoryRecordCount = getJdbcTemplate().queryForObject(CHECK_SCHEMA_HISTORY, Long.class, ds.id); } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } if (StringUtils.isNotBlank(ds.urn)) { if (ds.urn.substring(0, 4).equalsIgnoreCase(DatasetRowMapper.HDFS_PREFIX)) { ds.hdfsBrowserLink = Play.application().configuration().getString(HDFS_BROWSER_URL_KEY) + ds.urn.substring(DatasetRowMapper.HDFS_URN_PREFIX_LEN); } } if (favoriteId != null && favoriteId > 0) { ds.isFavorite = true; } else { ds.isFavorite = false; } if (watchId != null && watchId > 0) { ds.watchId = watchId; ds.isWatched = true; } else { ds.isWatched = false; ds.watchId = 0L; } if (schemaHistoryRecordCount != null && schemaHistoryRecordCount > 0) { ds.hasSchemaHistory = true; } else { ds.hasSchemaHistory = false; } pagedDatasets.add(ds); } resultNode.put("count", count); resultNode.put("page", page); resultNode.put("itemsPerPage", size); resultNode.put("totalPages", (int) Math.ceil(count / ((double) size))); resultNode.set("datasets", Json.toJson(pagedDatasets)); return resultNode; } }); return result; }
From source file:dao.DatasetsDAO.java
public static ObjectNode ownDataset(int id, String user) { ObjectNode resultNode = Json.newObject(); boolean result = false; List<Map<String, Object>> rows = null; rows = getJdbcTemplate().queryForList(GET_DATASET_OWNERS, id); int sortId = 0; for (Map row : rows) { String ownerId = (String) row.get(DatasetWithUserRowMapper.DATASET_OWNER_ID_COLUMN); String namespace = (String) row.get("namespace"); int ret = getJdbcTemplate().update(UPDATE_DATASET_OWNER_SORT_ID, ++sortId, id, ownerId, namespace); if (ret <= 0) { Logger.warn("ownDataset update sort_id failed. Dataset id is : " + Long.toString(id) + " owner_id is : " + ownerId + " namespace is : " + namespace); }//from www .j a v a 2 s .com } String urn = null; try { urn = (String) getJdbcTemplate().queryForObject(GET_DATASET_URN_BY_ID, String.class, id); } catch (EmptyResultDataAccessException e) { Logger.error("Dataset ownDataset get urn failed, id = " + id); Logger.error("Exception = " + e.getMessage()); } int status = getJdbcTemplate().update(UPDATE_DATASET_OWNERS, id, user, 300, "urn:li:corpuser", "Producer", "N", 0, urn, "", "Producer", "N", 0, ""); if (status > 0) { result = true; } rows = getJdbcTemplate().queryForList(GET_DATASET_OWNERS, id); List<User> owners = new ArrayList<User>(); for (Map row : rows) { String ownerId = (String) row.get(DatasetWithUserRowMapper.DATASET_OWNER_ID_COLUMN); String dislayName = (String) row.get("display_name"); if (StringUtils.isBlank(dislayName)) { dislayName = ownerId; } User owner = new User(); owner.userName = ownerId; owner.name = dislayName; owners.add(owner); } if (result) { resultNode.put("status", "success"); } else { resultNode.put("status", "failed"); } resultNode.set("owners", Json.toJson(owners)); return resultNode; }
From source file:dao.DatasetsDAO.java
public static Dataset getDatasetByID(int id, String user) { Dataset dataset = null;/*from w ww . j a v a 2s .com*/ Integer userId = 0; if (StringUtils.isNotBlank(user)) { try { userId = (Integer) getJdbcTemplate().queryForObject(GET_USER_ID, Integer.class, user); } catch (EmptyResultDataAccessException e) { Logger.error("Dataset getDatasetByID get user id failed, username = " + user); Logger.error("Exception = " + e.getMessage()); } } try { if (userId != null && userId > 0) { dataset = (Dataset) getJdbcTemplate().queryForObject(GET_DATASET_BY_ID_CURRENT_USER, new DatasetWithUserRowMapper(), userId, userId, id); } else { dataset = (Dataset) getJdbcTemplate().queryForObject(GET_DATASET_BY_ID, new DatasetRowMapper(), id); } } catch (EmptyResultDataAccessException e) { Logger.error("Dataset getDatasetByID failed, id = " + id); Logger.error("Exception = " + e.getMessage()); } return dataset; }
From source file:dao.DatasetsDAO.java
public static List<ImpactDataset> getImpactAnalysisByID(int id) { String urn = null;//from www.j av a 2 s .co m try { urn = (String) getJdbcTemplate().queryForObject(GET_DATASET_URN_BY_ID, String.class, id); } catch (EmptyResultDataAccessException e) { Logger.error("Dataset getImpactAnalysisByID get urn failed, id = " + id); Logger.error("Exception = " + e.getMessage()); } return LineageDAO.getImpactDatasetsByUrn(urn); }
From source file:dao.DatasetsDAO.java
public static ObjectNode getPagedDatasetComments(String userName, int id, int page, int size) { ObjectNode result = Json.newObject(); javax.sql.DataSource ds = getJdbcTemplate().getDataSource(); DataSourceTransactionManager tm = new DataSourceTransactionManager(ds); TransactionTemplate txTemplate = new TransactionTemplate(tm); result = txTemplate.execute(new TransactionCallback<ObjectNode>() { public ObjectNode doInTransaction(TransactionStatus status) { List<DatasetComment> pagedComments = getJdbcTemplate().query(GET_COMMENTS_BY_DATASET_ID, new DatasetCommentRowMapper(), id, (page - 1) * size, size); long count = 0; try { count = getJdbcTemplate().queryForObject("SELECT FOUND_ROWS()", Long.class); } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); }/* ww w .j av a 2 s.c o m*/ if (pagedComments != null) { for (DatasetComment dc : pagedComments) { if (StringUtils.isNotBlank(userName) && userName.equalsIgnoreCase(dc.authorUserName)) { dc.isAuthor = true; } } } ObjectNode resultNode = Json.newObject(); resultNode.set("comments", Json.toJson(pagedComments)); resultNode.put("count", count); resultNode.put("page", page); resultNode.put("itemsPerPage", size); resultNode.put("totalPages", (int) Math.ceil(count / ((double) size))); return resultNode; } }); return result; }
From source file:dao.DatasetsDAO.java
public static ObjectNode getPagedDatasetColumnComments(String userName, int datasetId, int columnId, int page, int size) { ObjectNode result = Json.newObject(); javax.sql.DataSource ds = getJdbcTemplate().getDataSource(); DataSourceTransactionManager tm = new DataSourceTransactionManager(ds); TransactionTemplate txTemplate = new TransactionTemplate(tm); result = txTemplate.execute(new TransactionCallback<ObjectNode>() { public ObjectNode doInTransaction(TransactionStatus status) { ObjectNode resultNode = Json.newObject(); long count = 0; int start = (page - 1) * size; int end = start + size; List<DatasetColumnComment> pagedComments = new ArrayList<DatasetColumnComment>(); List<Map<String, Object>> rows = null; rows = getJdbcTemplate().queryForList(GET_COLUMN_COMMENTS_BY_DATASETID_AND_COLUMNID, datasetId, columnId, start, end); for (Map row : rows) { Long id = (Long) row.get("id"); String author = (String) row.get("author"); String authorEmail = (String) row.get("authorEmail"); String authorUsername = (String) row.get("authorUsername"); String text = (String) row.get("text"); String created = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss") .format((Timestamp) row.get("created")); String modified = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss") .format((Timestamp) row.get("modified")); Long columnId = (Long) row.get("field_id"); boolean isDefault = (Boolean) row.get("is_default"); DatasetColumnComment datasetColumnComment = new DatasetColumnComment(); datasetColumnComment.id = id; datasetColumnComment.author = author; datasetColumnComment.authorEmail = authorEmail; datasetColumnComment.authorUsername = authorUsername; datasetColumnComment.text = text; datasetColumnComment.created = created; datasetColumnComment.modified = modified; datasetColumnComment.columnId = columnId; datasetColumnComment.isDefault = isDefault; pagedComments.add(datasetColumnComment); }//from ww w .j a v a2 s. c om try { count = getJdbcTemplate().queryForObject("SELECT FOUND_ROWS()", Long.class); } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } if (pagedComments != null) { for (DatasetColumnComment dc : pagedComments) { if (StringUtils.isNotBlank(userName) && userName.equalsIgnoreCase(dc.authorUsername)) { dc.isAuthor = true; } } } resultNode.set("comments", Json.toJson(pagedComments)); resultNode.put("count", count); resultNode.put("page", page); resultNode.put("itemsPerPage", size); resultNode.put("totalPages", (int) Math.ceil(count / ((double) size))); return resultNode; } }); return result; }
From source file:dao.DatasetsDAO.java
public static boolean updateDatasetOwners(int datasetId, Map<String, String[]> ownersMap, String user) { boolean result = true; if ((ownersMap == null) || ownersMap.size() == 0) { return false; }// w w w . ja v a2 s. co m List<DatasetOwner> owners = new ArrayList<DatasetOwner>(); if (ownersMap.containsKey("owners")) { String[] textArray = ownersMap.get("owners"); if (textArray != null && textArray.length > 0) { JsonNode node = Json.parse(textArray[0]); for (int i = 0; i < node.size(); i++) { JsonNode ownerNode = node.get(i); if (ownerNode != null) { String userName = ""; if (ownerNode.has("userName")) { userName = ownerNode.get("userName").asText(); } if (StringUtils.isBlank(userName)) { continue; } Boolean isGroup = false; if (ownerNode.has("isGroup")) { isGroup = ownerNode.get("isGroup").asBoolean(); } String type = ""; if (ownerNode.has("type") && (!ownerNode.get("type").isNull())) { type = ownerNode.get("type").asText(); } String subType = ""; if (ownerNode.has("subType") && (!ownerNode.get("subType").isNull())) { subType = ownerNode.get("subType").asText(); } String confirmedBy = ""; if (ownerNode.has("confirmedBy") && (!ownerNode.get("confirmedBy").isNull())) { confirmedBy = ownerNode.get("confirmedBy").asText(); } DatasetOwner owner = new DatasetOwner(); owner.userName = userName; owner.isGroup = isGroup; if (isGroup) { owner.namespace = "urn:li:griduser"; } else { owner.namespace = "urn:li:corpuser"; } owner.type = type; owner.subType = subType; owner.confirmedBy = confirmedBy; owner.sortId = i; owners.add(owner); } } } } getJdbcTemplate().update(MARK_DATASET_OWNERS_AS_DELETED, datasetId); if (owners.size() > 0) { String urn = null; try { urn = (String) getJdbcTemplate().queryForObject(GET_DATASET_URN_BY_ID, String.class, datasetId); } catch (EmptyResultDataAccessException e) { Logger.error("Dataset updateDatasetOwners get urn failed, id = " + datasetId); Logger.error("Exception = " + e.getMessage()); } updateDatasetOwnerDatabase(datasetId, urn, owners); } return result; }
From source file:dao.FlowsDAO.java
public static Integer getApplicationIDByName(String applicationName) { Integer applicationId = 0;/*from ww w . j av a2s. c om*/ try { applicationId = getJdbcTemplate().queryForObject(GET_APP_ID, new Object[] { applicationName.replace(".", " ") }, Integer.class); } catch (EmptyResultDataAccessException e) { applicationId = 0; Logger.error("Get application id failed, application name = " + applicationName); Logger.error("Exception = " + e.getMessage()); } return applicationId; }
From source file:dao.FlowsDAO.java
public static ObjectNode getPagedProjects(int page, int size) { ObjectNode result;//from w ww . ja va 2 s .c o m javax.sql.DataSource ds = getJdbcTemplate().getDataSource(); DataSourceTransactionManager tm = new DataSourceTransactionManager(ds); TransactionTemplate txTemplate = new TransactionTemplate(tm); result = txTemplate.execute(new TransactionCallback<ObjectNode>() { public ObjectNode doInTransaction(TransactionStatus status) { ObjectNode resultNode = Json.newObject(); long count = 0; List<Flow> pagedFlows = new ArrayList<Flow>(); List<Map<String, Object>> rows = null; rows = getJdbcTemplate().queryForList(GET_PAGED_FLOWS, (page - 1) * size, size); try { count = getJdbcTemplate().queryForObject("SELECT FOUND_ROWS()", Long.class); } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } for (Map row : rows) { Flow flow = new Flow(); flow.id = (Long) row.get("flow_id"); flow.level = (Integer) row.get("flow_level"); flow.appId = (Integer) row.get("app_id"); flow.group = (String) row.get("flow_group"); flow.name = (String) row.get("flow_name"); flow.path = (String) row.get("flow_path"); flow.appCode = (String) row.get("app_code"); if (StringUtils.isNotBlank(flow.path)) { int index = flow.path.indexOf(":"); if (index != -1) { flow.path = flow.path.substring(0, index); } } Object created = row.get("created_time"); if (created != null) { flow.created = created.toString(); } Object modified = row.get("modified_time"); if (modified != null) { flow.modified = row.get("modified_time").toString(); } int jobCount = 0; if (flow.id != null && flow.id != 0) { try { jobCount = getJdbcTemplate().queryForObject(GET_JOB_COUNT_BY_APP_ID_AND_FLOW_ID, new Object[] { flow.appId, flow.id }, Integer.class); flow.jobCount = jobCount; } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } } pagedFlows.add(flow); } resultNode.set("flows", Json.toJson(pagedFlows)); resultNode.put("count", count); resultNode.put("page", page); resultNode.put("itemsPerPage", size); resultNode.put("totalPages", (int) Math.ceil(count / ((double) size))); return resultNode; } }); return result; }
From source file:dao.FlowsDAO.java
public static ObjectNode getPagedProjectsByApplication(String applicationName, int page, int size) { String application = applicationName.replace(".", " "); ObjectNode result = Json.newObject(); javax.sql.DataSource ds = getJdbcTemplate().getDataSource(); DataSourceTransactionManager tm = new DataSourceTransactionManager(ds); TransactionTemplate txTemplate = new TransactionTemplate(tm); Integer appID = getApplicationIDByName(applicationName); if (appID != 0) { final int applicationID = appID; result = txTemplate.execute(new TransactionCallback<ObjectNode>() { public ObjectNode doInTransaction(TransactionStatus status) { ObjectNode resultNode = Json.newObject(); long count = 0; List<Flow> pagedFlows = new ArrayList<Flow>(); List<Map<String, Object>> rows = null; rows = getJdbcTemplate().queryForList(GET_PAGED_FLOWS_BY_APP_ID, applicationID, (page - 1) * size, size); try { count = getJdbcTemplate().queryForObject("SELECT FOUND_ROWS()", Long.class); } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); }/*from w w w . jav a2s .c o m*/ for (Map row : rows) { Flow flow = new Flow(); flow.id = (Long) row.get("flow_id"); flow.level = (Integer) row.get("flow_level"); flow.appId = (Integer) row.get("app_id"); flow.group = (String) row.get("flow_group"); flow.name = (String) row.get("flow_name"); flow.path = (String) row.get("flow_path"); flow.appCode = (String) row.get("app_code"); if (StringUtils.isNotBlank(flow.path)) { int index = flow.path.indexOf(":"); if (index != -1) { flow.path = flow.path.substring(0, index); } } Object created = row.get("created_time"); if (created != null) { flow.created = DateFormat.format(created.toString()); } Object modified = row.get("modified_time"); if (modified != null) { flow.modified = DateFormat.format(row.get("modified_time").toString()); } int jobCount = 0; if (flow.id != null && flow.id != 0) { try { jobCount = getJdbcTemplate().queryForObject(GET_JOB_COUNT_BY_APP_ID_AND_FLOW_ID, new Object[] { flow.appId, flow.id }, Integer.class); flow.jobCount = jobCount; } catch (EmptyResultDataAccessException e) { Logger.error("Exception = " + e.getMessage()); } } pagedFlows.add(flow); } resultNode.set("flows", Json.toJson(pagedFlows)); resultNode.put("count", count); resultNode.put("page", page); resultNode.put("itemsPerPage", size); resultNode.put("totalPages", (int) Math.ceil(count / ((double) size))); return resultNode; } }); return result; } result = Json.newObject(); result.put("count", 0); result.put("page", page); result.put("itemsPerPage", size); result.put("totalPages", 0); result.set("flows", Json.toJson("")); return result; }