2013-10-03 9 views
7

दस्तावेज करना मैं जर्सी ढांचे का उपयोग करके बनाए गए मेरे बाकी एपीआई के लिए दस्तावेज उत्पन्न करने का एक तरीका ढूंढ रहा हूं।जर्सी आराम एपीआई

क्या ऐसे दस्तावेज उत्पन्न करने के लिए कोई उपकरण हैं? इसके अलावा, बाकी API के दस्तावेज़ों के लिए सर्वोत्तम प्रथाएं क्या हैं।

उत्तर

6

मैंने कुछ महीने पहले इस पर कुछ शोध किया था और मेरा निष्कर्ष यह था कि जर्सी (और कई अन्य!) आरईएसटी एपीआई दस्तावेज करने के लिए सबसे अच्छा ढांचा "स्वैगर" - http://swagger.io/ है। यह एक ओपन सोर्स प्रोजेक्ट है (https://github.com/swagger-api/swagger-core) और उपयोग/एकीकृत करने के लिए एक बहुत ही सरल है। आप बस अपने आरईएसटी एपीआई में कुछ एनोटेशन जोड़ते हैं और यह सभी एपीआई संसाधनों, अनुरोध/प्रतिक्रिया संदेशों के साथ "वेबसाइट" उत्पन्न करता है और यहां तक ​​कि सीधे वहां से परीक्षण करने की अनुमति देता है।

@POST 
@Produces("application/json") 
@Consumes({ "application/xml", "application/json"}) 
@ApiOperation(
    value = "Short description of resources", 
    notes = "Detailed textual description of the resource...", 
    responseClass = "com.example.data.resps.PostExampleResp") 
@ApiErrors(value = { @ApiError(code = 404, reason = "Resources Not Found"), 
    @ApiError(code = 400, reason = "Bad Request"), 
    @ApiError(code = 500, reason = "Internal Error")}) 
public PostExampleResp postExample(
    @ApiParam(value = "Description of request message", 
     required = true) PostExampleReq request) 
    throws WebApplicationException{ 
    ... 

@Api... एनोटेशन स्वैगर एनोटेशन हैं: यहाँ एक API संसाधन के प्रलेखन का एक उदाहरण है। http://swagger.io/swagger-ui/

कुछ अन्य परियोजनाओं रहे हैं कि, अर्थात्:

  • http://enunciate.codehaus.org: यह भी एक दिलचस्प परियोजना की तरह दिखता है, यह अधिक क्लासिक javadocs पालन करने के लिए लगता है आप API दस्तावेज़ यहां की एक लाइव डेमो देख सकते हैं दस्तावेज का प्रकार।
+0

मुझे यकीन नहीं है कि मुझे अपने आवेदन के साथ स्वैगर को एकीकृत कैसे करना चाहिए। मैं जर्सी आराम एपीआई के साथ एक टोमकैट सर्वर का उपयोग कर रहा हूं - मुझे दस्तावेज़ फ़ाइलों को बनाने के लिए क्या करना चाहिए? –

+0

जावा/जेएक्स-आरएस (जर्सी) के लिए आधिकारिक ट्यूटोरियल का पालन करने का सबसे अच्छा तरीका है: https://github.com/wordnik/swagger-core/wiki/Java-JAXRS- क्विकस्टार्ट, यह बहुत अच्छा है। इसे लाइन पर फ़ॉलो करें और आपको इसे काम करना चाहिए। याद रखें, यह दस्तावेज (जेवाडॉक्स की तरह) उत्पन्न नहीं करेगा "यह आपके कोड (तैनाती वेब सेवाओं) में एनोटेशन के आधार पर" फ्लाई पर "दस्तावेज बनाता है। परियोजना में गिथब में बहुत सारे विवरण/दस्तावेज/मुद्दे-रिपॉन्स भी हैं जो मदद कर सकते हैं। इसके अलावा डेवलपर्स किसी भी विशिष्ट मुद्दों को हल करने में मदद पर बेहद उत्तरदायी हैं। – emgsilva

+3

स्वैगर एक बहुत ही घुसपैठ के आधार पर काम करता है: यह आपकी वेब-सेवा में टैप करता है और इसे उसी कंटेनर में चलाने की आवश्यकता होती है। मैंने जेएसओएन एपीआई-स्पेक उत्पन्न करके इसे एक अलग करने की कोशिश की है और इसे एक स्वैगर-यूआई पर अलग से चला रहा है, लेकिन यह मामूली और बहुत खराब दस्तावेज से बहुत दूर है। – Pepster

3

हम miredot पर काम कर रहे हैं। इसे बिना किसी अतिरिक्त एनोटेशन (एम) जोड़ने के बिना बॉक्स के बाहर काम करना चाहिए। कोई प्रतिक्रिया स्वागत है।

+0

इसका भुगतान किया गया .. मुझे नहीं लगता कि यह उस व्यक्ति के लिए काम करेगा जो ओपन सोर्स की तलाश में है – CandleCoder

संबंधित मुद्दे