2010-02-11 4 views
0

Lorsque j'utilise le Webservice de Jira, j'ai besoin d'utiliser la méthode getIssuesFromJqlSearch pour décrire une certaine requête (JQL). Mais il me renvoie "Aucune opération 'getIssuesFromJqlSearch'". Cette méthode de Jira 4.01 n'est-elle pas encore implémentée? BTW: J'ai besoin d'une méthode pour obtenir tous les problèmes d'un projet spécifique, sans créer de filtres en premier. C'était ma première façon de trouver une solution de contournement, car il n'y a pas de fonction getIssuesFromProject.Webservice Jira donne: Erreur: Aucune opération 'getIssuesFromJqlSearch' de Jira 4.01

S'il n'y a aucun moyen de résoudre le problème avec la méthode JQL, j'essaie de prendre RSS XML View avec l'instruction URL jql comme SearchRequest.xml? JqlQuery = project +% 3D + Testproject & tempMax = 1000. Mais ce n'est pas mon préféré.

Répondre

1

Je viens d'utiliser soapUI pour appeler getIssuesFromJqlSearch sur jira.atlassian.com, et cela a bien fonctionné. Avez-vous la même version installée? Quoi qu'il en soit, vous pouvez utiliser soapUI pour analyser WSDL et tester toutes les méthodes: vous isolerez alors si le problème est avec votre JIRA ou avec le code qui appelle la méthode. À propos, dans JIRA Client, nous utilisons RSS XML pour télécharger la plupart des informations, et ce n'est pas si grave. Faites-moi savoir si vous avez des questions avec cette méthode.

+0

J'utilise PHP SoapClient. Mais j'ai toujours le message "No operation getIssuesFromJqlSearch". Le fichier WSDL contient l'opération. Maintenant, je l'essaie avec le flux RSS, pour tout télécharger, avec les paramètres spécifiques. – Robert

0

Quelle version de Jira vous avez installée ??? ... si son 3.1x, alors il ne fonctionnera pas. La méthode getIssuesFromJqlSearch n'est prise en charge que pour jira version 4.X.

Cordialement

+0

Le titre dit clairement que c'est Jira 4.01 – JoshDM

0

Cela fonctionne pour moi en utilisant soapUI, mais pas de jira4r, en cours d'exécution 4.01. Le problème est avec jira4r (je cours v0.3.0). Il semble que le wsdl et le code du pilote associé soient câblés, ce qui n'inclut pas l'appel 'getIssuesFromJqlSearch'. Faites une recherche dans ruby/gems/1.8/gems/jira4r-0.3.0 pour voir ce que je veux dire. Recherche de '' getVersions révèle ceci:

./lib/jira4r/v2/jira_soap_service_driver.rb 
./wsdl/jirasoapservice-v2.wsdl 

Alors que la recherche de 'getIssuesFromJqlSearch' ne montre rien.

je résolu le problème en remplaçant ./wsdl/jirasoapservice-v2.wsdl avec la version de mon Jira instance (il est à http://your-jira-instance/rpc/soap/jirasoapservice-v2?wsdl), puis par rapiéçage ./lib/jira4r/v2/jira_soap_service_driver.rb (qui ressemble il a été généré automatiquement à partir du WSDL) de façon appropriée, en ajoutant ceci:

[ XSD::QName.new(NsSoapRpcJiraAtlassianCom, "getIssuesFromJqlSearch"), 
    "", 
    "getIssuesFromJqlSearch", 
    [ ["in", "in0", ["::SOAP::SOAPString"]], 
    ["in", "in1", ["::SOAP::SOAPString"]], 
    ["in", "in2", ["::SOAP::SOAPInt"]], 
    ["retval", "getIssuesFromJqlSearchReturn", ["Jira4R::V2::ArrayOf_tns1_RemoteIssue", "http://jira.atlassian.com/rpc/soap/jirasoapservice-v2", "ArrayOf_tns1_RemoteIssue"]] ], 
    { :request_style => :rpc, :request_use => :encoded, 
    :response_style => :rpc, :response_use => :encoded, 
    :faults => {"Jira4R::V2::RemoteException_"=>{:use=>"encoded", :name=>"RemoteException", :ns=>"http://jira.atlassian.com/rpc/soap/jirasoapservice-v2", :namespace=>"http://jira.atlassian.com/rpc/soap/jirasoapservice-v2", :encodingstyle=>"http://schemas.xmlsoap.org/soap/encoding/"}} } 
], 

de toute évidence, ce serait bien si jira4r téléchargé le WSDL correct de votre instance, afin d'éviter ce genre d'incompatibilités version :)