Soap Webservice Jira给出:错误:没有这样的操作';从jqlsearch&x27获取问题;来自Jira 4.01

Soap Webservice Jira给出:错误:没有这样的操作';从jqlsearch&x27获取问题;来自Jira 4.01,soap,web-services,jira,jql,Soap,Web Services,Jira,Jql,当我使用Jira的Web服务时,我需要使用getIssuesFromJqlSearch方法来描述某个(JQL)查询。但它返回我“没有这样的操作‘getIssuesFromJqlSearch’”。Jira 4.01中的此方法是否尚未实现 顺便说一句:我需要一个方法来获取一个特定项目的所有问题,而不必首先创建过滤器。这是我第一次找到解决方法,因为没有函数getIssuesFromProject 如果无法用JQL方法解决问题,我将尝试使用URL JQL语句(如SearchRequest.XML?jql

当我使用Jira的Web服务时,我需要使用getIssuesFromJqlSearch方法来描述某个(JQL)查询。但它返回我“没有这样的操作‘getIssuesFromJqlSearch’”。Jira 4.01中的此方法是否尚未实现

顺便说一句:我需要一个方法来获取一个特定项目的所有问题,而不必首先创建过滤器。这是我第一次找到解决方法,因为没有函数getIssuesFromProject


如果无法用JQL方法解决问题,我将尝试使用URL JQL语句(如SearchRequest.XML?jqlQuery=project+%3D+Testproject&tempMax=1000)来获取RSS XML视图。但这不是我的最爱。

我只是在jira.atlassian.com上使用soapUI调用getIssuesFromJqlSearch,效果很好。您是否安装了相同的版本?无论如何,您可以使用soapUI来分析WSDL并测试所有方法:然后您将确定问题是出在JIRA上还是出在调用该方法的代码上


顺便说一句,在JIRA客户端中,我们确实使用RSS XML下载了大部分信息,而且还不错。如果您对这种方法有任何疑问,请告诉我。

您安装了哪个版本的Jira???。。。如果它是3.1x,那么它将无法工作。仅jira版本4.X支持getIssuesFromJqlSearch方法

关于

这对我使用soapUI是有效的,但不适用于运行4.01的jira4r。问题在于jira4r(我运行的是v0.3.0)。wsdl和相关驱动程序代码似乎是硬连接的,这不包括“getIssuesFromJqlSearch”调用。在
ruby/gems/1.8/gems/jira4r-0.3.0
中搜索我的意思。搜索“getVersions”会发现:

./lib/jira4r/v2/jira_soap_service_driver.rb
./wsdl/jirasoapservice-v2.wsdl
搜索“getIssuesFromJqlSearch”时,没有显示任何内容

我通过将
/wsdl/jirasoapservice-v2.wsdl
替换为来自Jira实例的版本(位于
http://your-jira-instance/rpc/soap/jirasoapservice-v2?wsdl
)然后通过修补
/lib/jira4r/v2/jira\u soap\u service\u driver.rb
(看起来它是从WSDL自动生成的)适当地,添加以下内容:

[ 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/"}} }
],

显然,如果jira4r从您的实例下载了正确的WSDL,这将是一件好事,以避免这些版本不兼容:)

jira4r的当前版本非常旧。已经更新了,但没有gem,所以我已经克隆了,并发布了我自己的,它与最新的jiraapi版本一起工作

我使用PHP SoapClient。但我仍然有一条消息“没有这样的操作getIssuesFromJqlSearch”。WSDL文件包含该操作。现在,我用RSS提要来尝试它,下载所有的,带有特定参数的内容。