【问题标题】:BlueMix service error with Android app - 'Unknown pattern character 'X''Android 应用程序的 BlueMix 服务错误 - '未知模式字符'X''
【发布时间】:2015-10-18 16:28:51
【问题描述】:

我正在开发一个 android 应用程序并尝试集成 Bluemix 服务 - Personality Insights。但是,由于日期冲突(Bluemix 服务假定 Java SimpleDateFormat 包含符号“X”,而 Android 的 SimpleDateFormat 不包含此符号)导致错误(下面的日志)。我的问题是,有没有办法强制应用程序使用 Java SimpleDateFormat 版本而不是 Android 版本?除此之外,我看不出如何在不切换 Bluemix 以适应日期中的“X”字符的情况下使用该服务。对此主题的任何启发将不胜感激!

日志:

Caused by: java.lang.IllegalArgumentException: Unknown pattern character 'X'
            at java.text.SimpleDateFormat.validatePatternCharacter(SimpleDateFormat.java:314)
            at java.text.SimpleDateFormat.validatePattern(SimpleDateFormat.java:303)
            at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:356)
            at com.google.gson.DefaultDateTypeAdapter.<init>(DefaultDateTypeAdapter.java:49)
            at com.google.gson.GsonBuilder.addTypeAdaptersForDate(GsonBuilder.java:555)
            at com.google.gson.GsonBuilder.create(GsonBuilder.java:543)
            at com.ibm.watson.developer_cloud.util.GsonSingleton.createGson(GsonSingleton.java:53)
            at com.ibm.watson.developer_cloud.util.GsonSingleton.getGson(GsonSingleton.java:38)
            at com.ibm.watson.developer_cloud.concept_expansion.v1.ConceptExpansion.createJob(ConceptExpansion.java:147)
            at intercept.notification.notify.MainActivity$PlaceholderFragment$Persona.doInBackground(MainActivity.java:106)
            at intercept.notification.notify.MainActivity$PlaceholderFragment$Persona.doInBackground(MainActivity.java:84)

我已经对此进行了很多调试,但不知道如何强制使用 Java 版本的 SimpleDataFormat 而不是 Android 版本。两者之间的差异可以在这里看到: Java(包括 Bluemix 服务所需的符号“X”-http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

Android(不包括它)-http://developer.android.com/reference/java/text/SimpleDateFormat.html

【问题讨论】:

标签: java android simpledateformat ibm-watson personality-insights


【解决方案1】:

问题

我们使用的是 Android 中 jdk 1.6 不支持的“X”。
该问题已在 v1.1.1 中得到修复。

更新依赖

  1. 马文:

    <dependency> <groupId>com.ibm.watson.developer_cloud</groupId> <artifactId>java-wrapper</artifactId> <version>1.1.1</version> </dependency>

  2. Gradle:

'com.ibm.watson.developer_cloud:java-wrapper:1.1.1'

  1. 从 github 下载jar-with-dependencies

【讨论】:

  • 啊,完美,成功了。我使用的是 v1.1.0!工作中!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-26
  • 2017-11-19
  • 2015-04-07
  • 1970-01-01
  • 2016-09-16
  • 1970-01-01
相关资源
最近更新 更多