2008-11-10 26 views
6

Tôi đang xây dựng một số công cụ tùy chỉnh để hoạt động chống lại cài đặt JIRA và API SOAP được tiếp xúc rất tuyệt, ngoại trừ không có đối số nào được đặt tên.Tài liệu API JAPA SOAP?

Ví dụ, nguyên mẫu cho getIssue là:

RemoteIssue getIssue (string in0, string in1); 

Tất cả các phương pháp SOAP RPC tuân theo quy ước này, vì vậy không có giấy tờ tôi khá hardpressed để tìm ra những gì để vượt qua trên một lô đất trong số này.

Có ai biết hướng dẫn tài liệu API chính xác không?

+0

tôi sử dụng API để tìm kiếm một tên phương thức có khả năng, sau đó đọc nguồn để xem những gì thực sự được mong đợi. – mdoar

Trả lời

15
+1

Tôi phải là một chút không có kỹ năng nhưng tôi không hoàn toàn hài lòng với tài liệu này. Tôi gần giống với cấu hình của bạn và tôi muốn sử dụng phương thức createIssue. Trong mục đích đó, tôi tạo một thể hiện của đối tượng RemoteIssue và tôi đặt các tham số sau: kiểu, tóm tắt, dự án, người được gán, mô tả và mức độ ưu tiên là tất cả chuỗi. nhưng tôi phải đặt giá trị nào cho loại? RemoteIssueType.name? RemoteIssueType.id? và tóm tắt, dự án, v.v. Tôi có thể tìm tài liệu chính xác về điều này ở đâu? Cảm ơn sự giúp đỡ của bạn – PierrOz

+8

Tôi làm rất nhiều công việc với API này - cá nhân tài liệu của nó là bên cạnh vô ích một khi bạn bắt đầu nhận được vào chi tiết về cách thức hoạt động, thay vì vậy những gì phương pháp được tiếp xúc. Cách tốt nhất là lấy nguồn cho Jira (nếu bạn không có quyền truy cập vào nguồn bởi vì bạn đang phát triển dựa trên phiên bản dùng thử thì tôi khuyên bạn nên mua phiên bản US $ 10, vì vậy bạn có thể truy cập vào tất cả nguồn). Với nguồn, nó khá dễ dàng để xem những gì từng đối số được sử dụng cho, và những gì mỗi cuộc gọi mong đợi. – Bittercoder

2

Liên kết javadoc bạn tìm thấy là điều đúng. Bạn cũng nên biết rằng không phải mọi thứ được hiển thị thông qua giao diện SOAP hoặc RPC, nhưng bạn có thể làm bất cứ thứ gì bằng cách sử dụng giao diện REST. Thật không may, giao diện REST không được ghi lại đầy đủ, nhưng bạn có thể sử dụng công cụ kiểm tra lưu lượng HTML (như Fiddler for IE) để lấy dữ liệu POST thực tế được gửi đến máy chủ từ giao diện web và ghép giao diện cho cuộc gọi cụ thể nhu cầu. Không phải luôn luôn là cách dễ nhất nhưng nó hoạt động.

3

Tôi nhận thấy rằng nó khá đơn giản để đưa ra những thông số cần thiết. Tùy thuộc vào mức độ phức tạp của bạn, bạn có thể đoán được điều bạn phải vượt qua.

Có một một siêu quan trọng mặc dù (đây là Python với SOAPpy):

self.proxy = WSDL.Proxy(jiraUrl) 
self.token = self.proxy.login(self.username, self.password) 
... 
issues = self.proxy.getIssuesFromFilter(self.token, args[0]) 

Sau khi nhận được token từ phương pháp đăng nhập(), bạn cần phải vượt qua nó như một tham số cho tất cả các khác Cuộc gọi SOAP. Sau khi tìm ra rằng, nó được khá dễ dàng để tìm ra những gì các thông số nên (ví dụ, getIssuesFromFilter nên lấy filterId như tham số khác của nó)