【发布时间】:2014-09-03 09:02:56
【问题描述】:
简而言之,我试图让我们的一个应用程序(在一个 Axis2 容器内)与我的机器上设置的 Quickbooks 进行通信。 到目前为止,我的设置如下:
1- 我在本地计算机上创建了一个公司文件 2- 使用提供的 wsdl 文件生成服务器端骨架(使用 Axis2 的 WSDL2JAVA) 3-在外国机器上部署我的新网络服务 4- 创建一个 .qwc 文件,其中包含 Web 连接器连接到我的 Web 服务所需的信息(确保使用拥有公司文件的同一用户)
现在按计划(在 .qwc 文件中配置每 1 分钟一次),Web 连接器成功调用我的 Web 服务,并且正如我所料,它无法解析响应,因为它包含不遵守的测试数据QbXML 标准。我在 Web 连接器中遇到的错误如下:
Version:
Not provided by service
Message:
Error encountered during version check.
Description:
QBWC1046: Application sent incorrect syntax return value for clientVersion(). See QWCLog for details. Error message: <Called clientVersion() but application returned following: (Client version response). This return value is not acceptable because it needs to start with E:, W: or O:>. Update cannot continue.
这几乎是意料之中的。至少我现在知道 QuickBooks 正在成功调用我的 Axis2 Web 服务。
所以我的下一步是构建 QuickBooks 可以理解的 QbXML 请求,然后解析 QbXML 响应。我现在的问题是 1- 我必须自己完成这项繁琐的工作(构建和解析 QbXml 请求/响应)吗? 2- QuickBooks 的 Java API 是否允许我以某种方式处理我可以轻松序列化为 QbXML 的对象?还是此 API 仅用于集成桌面应用程序?
非常感谢任何人的帮助。
【问题讨论】:
标签: java soap axis2 quickbooks