2

我正在尝试将Sugar CRM与我的一个项目集成。我使用Apache Axis作为我的 SOAP 客户端。

我从这个博客得到了初始设置。使用本教程,我可以登录、获取数据并将数据插入到我的 Sugar CRM 安装中。

我正在尝试使用以下代码获取潜在客户

Get_entry_list_result_version2 entryList = port.get_entry_list(
            sessionID, "Leads", "", "", 0, new String[] { "first_name",
                    "phone_work" }, null, 2, 0);

这部分工作正常,但是当我尝试添加查询条件作为第三个参数时,系统抛出错误

Exception in thread "main" AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode: 
faultString: org.xml.sax.SAXParseException: Content is not allowed in prolog.
faultActor: 
faultNode: 
faultDetail: 
    {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411)

谢谢

这是我使用查询的新获取

Get_entry_list_result_version2 entryList = port.get_entry_list(
            sessionID, "Leads", "first_name='arun'", "", 0, new String[] { "first_name",
                    "phone_work" }, null, 2, 0);

我究竟做错了什么?

我已经编译了我的axis-1.4 库来修复这个错误

4

2 回答 2

2

Arun P Johny 的回答是正确的并且非常有帮助。我正在使用带有 tSugarCRMInput 组件的 Talend Open Studio。即使有 Module 字段,查询也需要完全限定。

于 2013-01-03T20:30:41.597 回答
1

我想通了,需要有一个由模块名称限定的查询:

对不起我的无知。

我的进一步搜索把我带到了这里

修复我的代码后看起来像

Get_entry_list_result_version2 entryList = port.get_entry_list(
            sessionID, "Leads", " leads.last_name ='LastName' ", "", 0, new String[] { "first_name",
                    "phone_work", "sic_code" }, null, 10, 0);

谢谢

于 2010-03-10T07:18:17.127 回答