3

現在、C#内でJira SOAPインターフェイスを使用しています(ここで使用されている言語はそれほど重要ではないと思います)。

基本的に、私はAPIと、soapサービスの機能の一部をラップするWinformを作成しているので、アプリケーションで問題が発生したときに開発者がプロ​​グラムでバグを追加できます。

この一環として、Jiraで使用されているカスタムフィールドIDをハードコーディングするのではなく、知る必要があります(それらはまだ時々変更される傾向があるため)、jira-rpc apiでGetCustomFields()メソッドを使用してから、フィルター処理しました開発者が知る必要があるのはフィールドの名前だけなので、IDは自動的に入力されます。

これはすべて正常に機能しますが、非常に重要な条件が1つあります。それは、管理上の特権を持つユーザーとしてSOAP/RPCサービスにログインすることです。

Jiraのドキュメントには、soap / rpcサービスが通常のワークフローとセキュリティスキームに従っていることが示されていますが、カスタムフィールドの列挙に関するこの制限を取り除くように見えるものはどこにも見つかりません(そして、どのような場合でも誰かに持ってもらいたい理由は何もありません)特にカスタムフィールドIDはJiraのHTMLソースにある傾向があるため、このアクセス権を取得するための管理者になることは私を超えています)

私がどこかで設定を逃したかどうか誰かが知っていますか?または、これに何らかの回避策がある場合は、カスタムフィールドIDをハードコーディングする必要はありませんか?

それとも、必要な機能を提供するために、JiraのRPCプラグインを調べて、そのソースを変更する必要がある場合ですか?

乾杯

google/posterityのために編集する

うわー、これまでずっと、アトラシアンはまだこの振る舞いを変えていないようです。

4

2 に答える 2

1

これを回避するには、管理ユーザーとしてログインし、カスタムフィールドを取得して、ログアウトするカスタムディクショナリを作成します。理想的ではありませんが、アトラシアンが物事を変えるまでは機能するはずです

于 2009-10-23T11:01:24.497 に答える
1

何も見逃していません。標準のSOAPAPIを介してカスタムフィールドを取得する方法はありません。

JIRAクライアントでは、2つの方法でカスタムフィールドについて学習します。

  1. 問題ナビゲーターのRSSビュー、または特定の問題のXML表現を介して問題をダウンロードします。問題にカスタムフィールドが設定されている場合、XMLにはそのID、クラス、および値(値)が含まれます。

  2. 時々、IssueNavigator検索ページのコンテンツを調べて、カスタムフィールドの検索者を探します。HTMLをスクリーンスクレイピングすると、カスタムフィールドのIDだけでなく、列挙型フィールドの可能な値も得られます。

もちろん、これはハッカーであり、うまくいかない可能性があるため、優れたAPIの方がはるかに優れていたでしょう。

あなたの場合、私は2つの解決策を提案することができます:

  1. 独自のSOAP(またはREST)リモートAPIプラグインを作成して、標準APIから欠落している情報だけを提供します。JIRAを制御しているように見えるので、そこに何でもインストールできます。

  2. プロジェクトの[新しいバグ]ページと、送信する必要のある問題の種類をスクリーンスクレイピングします。フィールド、オプション、デフォルト値、必須フィールドなど、すべての情報が表示されます。

于 2009-11-01T01:41:56.473 に答える