@Override public Object read(Type type, Class<?> contextClass, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { try { TumblrResponse tumblrResponse = objectMapper.readValue(inputMessage.getBody(), TumblrResponse.class); checkResponse(tumblrResponse); Object result; if (TumblrResponse.class.equals(type)) { // don't parse the response json, callee is going to process is manually result = tumblrResponse; } else { // parse the response json into an instance of the given class JavaType javaType = getJavaType(type, contextClass); String response = tumblrResponse.getResponseJson(); result = objectMapper.readValue(response, javaType); } return result; } catch (JsonParseException ex) { throw new HttpMessageNotReadableException("Could not read JSON: " + ex.getMessage(), ex); } catch (EOFException ex) { throw new HttpMessageNotReadableException("Could not read JSON: " + ex.getMessage(), ex); } catch (Exception e) { e.printStackTrace(); throw new IOException(e); } }
@Test public void testEndObject() throws Exception { JacksonParserWrapper parser = new JacksonParserWrapper(jsonFactory.createJsonParser("{}")); parser.startObject(); parser.endObject(); try { parser.endObject(); fail("Where is the Exception"); } catch (JsonParseException e) { assertThat(e.getMessage()).startsWith("Invalid token. Expected <END_OBJECT> but got <null>"); } }
public static Manifest readManifest(File file) throws IOException { String errorMessage = ""; try { return mMapper.readValue(file, Manifest.class); } catch (JsonParseException jpe) { errorMessage = jpe.getMessage(); } catch (JsonMappingException jme) { errorMessage = jme.getMessage(); } LoggerFactory.getLogger("Bootloader") .error("Error while parsing manifest " + file.getName() + ": " + errorMessage); return null; }
public JSONArray validateFields(MultivaluedMap<String, String> parameters) { JSONArray validationErrors = new JSONArray(); // Dataset Validation --------------------------------------------- String datasetMetadata = parameters.get("meta").get(0); if (datasetMetadata != null) { datasetMetadata = URLDecoder.decode(datasetMetadata); try { if ((!datasetMetadata.equals("")) && (!datasetMetadata.equals("[]"))) { JSONObject metadataObject = JSONUtils.toJSONObject(datasetMetadata); JSONArray columnsMetadataArray = metadataObject.getJSONArray("columns"); for (int j = 0; j < columnsMetadataArray.length(); j++) { JSONObject columnJsonObject = columnsMetadataArray.getJSONObject(j); String columnName = columnJsonObject.getString("column"); if (columnJsonObject.getString("pname").equalsIgnoreCase("type")) { if (columnName == null) { validationErrors.put( new JSONObject("{message: 'Validation error: Column name cannot be null'}")); } /* else if(Pattern.compile("\\s").matcher(columnName).find()){ validationErrors.put(new JSONObject("{message: 'Validation error: Space character not allowed for column name "+ columnName + "'}")); }else if(Pattern.compile("[ÀÈÌÒÙàèìòùÁÉÍÓÚÝáéíóúýÂÊÎÔÛâêîôûÃÑÕãñõÄËÏÖÜŸäëïöüŸ¡¿çÇŒœßØøÅåÆæÞþÐðÐð'.,&#@:?!()$\\/]").matcher(columnName).find()){ validationErrors.put(new JSONObject("{message: 'Validation error: Special characters not allowed for column name "+ columnName + "'}")); } */ } String propertyName = columnJsonObject.getString("pname"); if (propertyName == null) { validationErrors.put( new JSONObject("{message: 'Validation error: Property name cannot be null'}")); } /* else if( Pattern.compile("\\s").matcher(propertyName).find()){ validationErrors.put(new JSONObject("{message: 'Validation error: Space character not allowed for Property name "+ propertyName + "'}")); }else if( Pattern.compile("[ÀÈÌÒÙàèìòùÁÉÍÓÚÝáéíóúýÂÊÎÔÛâêîôûÃÑÕãñõÄËÏÖÜŸäëïöüŸ¡¿çÇŒœßØøÅåÆæÞþÐðÐð'.,&#@:?!()$\\/]").matcher(propertyName).find()){ validationErrors.put(new JSONObject("{message: 'Validation error: Special characters not allowed for Property name "+ propertyName + "'}")); } */ String propertyValue = columnJsonObject.getString("pvalue"); } } } catch (JsonMappingException e1) { logger.error(e1.getMessage()); } catch (JsonParseException e1) { logger.error(e1.getMessage()); } catch (JSONException e1) { logger.error(e1.getMessage()); } catch (IOException e1) { logger.error(e1.getMessage()); } } return validationErrors; }
@Override public List<JiveActivity> getActivites() { String jsonString = jiveRestClient.getActivities(); ObjectMapper mapper = new ObjectMapper(); List<JiveActivity> activities = null; try { activities = mapper.readValue(jsonString, new TypeReference<List<JiveActivity>>() {}); } catch (JsonParseException e) { log.error(e.getMessage()); } catch (JsonMappingException e) { log.error(e.getMessage()); } catch (IOException e) { log.error(e.getMessage()); } return activities; }
private KafkaConfig deserializeKafkaSchemalDesc(StreamingRequest streamingRequest) { KafkaConfig desc = null; try { logger.debug("Saving KafkaConfig " + streamingRequest.getKafkaConfig()); desc = JsonUtil.readValue(streamingRequest.getKafkaConfig(), KafkaConfig.class); } catch (JsonParseException e) { logger.error("The KafkaConfig definition is invalid.", e); updateRequest(streamingRequest, false, e.getMessage()); } catch (JsonMappingException e) { logger.error("The data KafkaConfig definition is invalid.", e); updateRequest(streamingRequest, false, e.getMessage()); } catch (IOException e) { logger.error("Failed to deal with the request.", e); throw new InternalErrorException("Failed to deal with the request:" + e.getMessage(), e); } return desc; }
public Urllib login() throws LoginException, BankException { urlopen = new Urllib(CertificateReader.getCertificates(context, R.raw.cert_avanza)); urlopen.addHeader("ctag", "1122334455"); urlopen.setUserAgent("Avanza Bank 131 (iPhone; iPhone OS 6.1.4; sv_SE)"); urlopen.addHeader( "Authorization", "Basic " + Base64.encodeToString( new String(username + ":" + password).getBytes(), Base64.NO_WRAP)); try { HttpResponse httpResponse = urlopen.openAsHttpResponse(API_URL + "account/overview/all", null, false); if (httpResponse.getStatusLine().getStatusCode() == 401) { throw new LoginException(context.getText(R.string.invalid_username_password).toString()); } ObjectMapper vObjectMapper = new ObjectMapper(); AccountOverview r = vObjectMapper.readValue(httpResponse.getEntity().getContent(), AccountOverview.class); for (com.liato.bankdroid.banking.banks.avanza.model.Account account : r.getAccounts()) { Account a = new Account( account.getAccountName(), new BigDecimal(account.getBalance()), account.getAccountId()); if (!account.getCurrencyAccounts().isEmpty()) { a.setCurrency(account.getCurrencyAccounts().get(0).getCurrency()); } accounts.add(a); } } catch (JsonParseException e) { e.printStackTrace(); throw new BankException(e.getMessage()); } catch (ClientProtocolException e) { e.printStackTrace(); throw new BankException(e.getMessage()); } catch (IOException e) { e.printStackTrace(); throw new BankException(e.getMessage()); } return urlopen; }
private TableDesc deserializeTableDesc(StreamingRequest streamingRequest) { TableDesc desc = null; try { logger.debug("Saving TableDesc " + streamingRequest.getTableData()); desc = JsonUtil.readValue(streamingRequest.getTableData(), TableDesc.class); } catch (JsonParseException e) { logger.error("The TableDesc definition is invalid.", e); updateRequest(streamingRequest, false, e.getMessage()); } catch (JsonMappingException e) { logger.error("The data TableDesc definition is invalid.", e); updateRequest(streamingRequest, false, e.getMessage()); } catch (IOException e) { logger.error("Failed to deal with the request.", e); throw new InternalErrorException("Failed to deal with the request:" + e.getMessage(), e); } String[] dbTable = HadoopUtil.parseHiveTableName(desc.getName()); desc.setName(dbTable[1]); desc.setDatabase(dbTable[0]); desc.getIdentity(); return desc; }
@Override public Response toResponse(final JsonParseException ex) { return status(BAD_REQUEST).entity(ex.getMessage()).build(); }