从 http 调用过程时出错
Posted
技术标签:
【中文标题】从 http 调用过程时出错【英文标题】:Error when invoking procedure from http 【发布时间】:2013-10-02 14:19:42 【问题描述】:我正在尝试从本地 Worklight Studio(带有修订包 1 的版本 6)的示例项目 Module_07_04_nativeAPIForiosPush 调用适配器“PushAdapter”,并在浏览器中收到以下错误:
/*-secure-
"errors":["I O: Unexpected character 'd' on line 1,
column 27"],"isSuccessful":false,"warnings":[],"info":[]*/
我使用的网址是:
http://192.168.1.106:10080/Module_07_04_nativeAPIForiOSPush/invoke?adapter=PushAdapter&procedure=submitNotification¶meters=['worklight,'doesitwork']
我查看了本地 Worklight 服务器的 messages.log,它抛出了这个错误:
[10/2/13 9:34:11:179 EDT] 0000078f
om.worklight.integration.services.impl.DataAccessServiceImpl E FWLSE0013E: Cannot invoke
procedure PushAdapter/submitNotification [project Module_07_04_nativeAPIForiOSPush]
java.io.IOException: Unexpected character 'd' on line 1, column 27
at com.ibm.json.java.internal.Tokenizer.next(Tokenizer.java:129)
at com.ibm.json.java.internal.Parser.parseValue(Parser.java:208)
at com.ibm.json.java.internal.Parser.parseArray(Parser.java:162)
at com.ibm.json.java.internal.Parser.parseValue(Parser.java:230)
...
还有一些其他帖子表明解析 Json 对象/数组时存在类似问题。所以,我将返回值改为只返回一个空对象:
return ;
但是,还是同样的错误。通过 Worklight Studio 运行它(运行方式...|调用 Worklight 过程)显示:
"isSuccessful": true
我打算使用这种方法(从外部应用程序到 Worklight 服务器的 GET 请求)来运行通知推送,但是,如果基本的 GET 请求不起作用,我将不得不寻找另一种方法。
问题 1:这是正确的 Http GET 格式吗? 问题2:对于通知推送调度,这是一种典型的做法吗?
【问题讨论】:
这是一个错字,还是 ['worklight,'doesitwork'] 在 worklight 之后缺少引号? 哇,你是对的!另一双眼睛可以解决问题,谢谢!它正在工作。 @DavidDhuyveter,你应该把它写成答案,这样 DavidW 会标记它,我们可以“关闭”这个。 【参考方案1】:看起来像 URL 中的拼写错误。工作灯后缺少报价。
【讨论】:
以上是关于从 http 调用过程时出错的主要内容,如果未能解决你的问题,请参考以下文章
从spring boot simpleJDBCcall调用PL SQL过程时出错
IBM Worklight 6.0 - 调用适配器过程时出错