我继承了一个与桌面QB集成的java应用程序。整个设置的结构中有一些我不明白的地方。这是我作为开发人员第一次使用QB api。
QB Web Connector 2.2.0.71已安装并且运行正常。我看到了.qwc文件并理解了它,它被加载到web连接器中。有一个Application类,它将端点发布到与.qwc文件中相同的URL,然后启动一个名为QBWebService的类。这个web服务类实现了com.intuit.developer.TroubleshootWebServiceFSSoap,并具有authenticate、sendRequestXML等方法。方法sendRequestXML包含我正在测试和尝试修改的代码。但是,在执行此操作之前,我需要了解XML的来回转换。
既然我不知道我不知道什么,如果我问错了问题,请一定要说出来。
那么,web连接器(按计划)启动应用程序类并调用sendRequestXML方法是否正确?
我希望找到一个可以用SOAPui之类的东西发送XML的网址,以便测试XML并检查响应,但这似乎不是这个web服务的工作方式。可以这样设置吗?
也许我不明白QB web连接器应用程序在做什么。如果本地主机不能通过POST接受XML,那么在本地主机上打开URL的目的是什么?
提前感谢你的帮助
--哑光
发布于 2017-08-14 20:16:56
那么,web连接器(按计划)启动应用程序类并调用sendRequestXML方法是否正确?
是的,这是正确的。
我希望找到一个可以用SOAPui之类的东西发送
的网址,以便测试XML并检查响应
您可以向SOAP服务发送请求(例如,您可以调用sendRequestXML方法)。
您将得到一个XML响应(如果您是Web Connector的话),然后将其转发给QuickBooks。QuickBooks将处理响应,然后调用receiveResponseXML方法将响应发送回您的web服务。
也许我不明白QB web连接器应用程序在做什么。
听起来您希望QuickBooks提供一个SOAP端点,然后可以直接向该端点发送请求,以便直接从QuickBooks查询数据。
这并不是Web连接器的工作方式。Web Connector在某种程度上是“反向”工作的。
Web Connector不是直接连接到QuickBooks,而是连接到您( SOAP端点),并询问您“嘿,给我点事做!”(即send me the request XML you want to run against QuickBooks)。然后,您向它发出一个XML请求,它对QuickBooks运行该请求,获取响应,然后再次连接到您,并说“这是QuickBooks对您的请求的响应”(即here you go, receive this response XML from QuickBooks)。
因此,Web Connector实质上会轮询您提供的SOAP端点,要求您向它发出传递给QuickBooks的XML请求。
更长的解释在这里:
http://www.consolibyte.com/docs/index.php/QuickBooks_Web_Connector_Overview#About_the_QuickBooks_Web_Connector
https://stackoverflow.com/questions/45662460
复制相似问题