2010-03-10 10 views
2

J'essaie d'intégrer Sugar CRM avec un de mes projets. J'utilise Apache Axis comme client SOAP. J'ai reçu la configuration initiale de blog. Grâce à ce tutoriel, je peux me connecter, récupérer et insérer des données dans mon installation de Sugar CRM.Sugar CRM Integration utilisant Java et Apache Axis

Je suis en train de chercher leads en utilisant le code suivant

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

Cette partie fonctionne bien, mais lorsque je tente d'ajouter un critère de requête que le 3ème paramètre, le système est de lancer une erreur

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) 

Merci

voici ma nouvelle accèderont par la requête

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); 

Qu'est-ce que je fais mal?

Je l'ai déjà compilé mon axe 1.4 bibliothèque fix this bug

Répondre

1

j'ai tout compris, ont besoin d'avoir une requête qualifiée par le nom du module:

Désolé pour mon ignorance.

Mes autres recherches m'ont conduit à here.

Après avoir fixé mon code ressemble

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); 

Merci

2

réponse Arun P Johny était correcte et très utile. J'utilise Talend Open Studio avec le composant tSugarCRMInput. Même s'il existe un champ pour Module, la requête doit être entièrement qualifiée.