2015-10-01 12 views
11

जब pathParameters का उपयोग कर की तरह नीचेpathParameters प्रलेखन अपवाद (urlTemplate नहीं मिला)

@Test 
public void documentGetRouteById() throws Exception { 
    this.mockMvc.perform(get("/route/{id}", "FooBar")).andExpect(status().isOk()) 
      .andDo(document("api-getRouteById", 
        pathParameters(parameterWithName("id").description("die Routen ID")))); 
} 

मैं निम्नलिखित excpetion मिल यूआरआई पथ मानकों दस्तावेज़ के लिए

java.lang.IllegalArgumentException: urlTemplate not found. Did you use RestDocumentationRequestBuilders to build the request? 
    at org.springframework.util.Assert.notNull(Assert.java:112) 
    at org.springframework.restdocs.request.PathParametersSnippet.extractUrlTemplate(PathParametersSnippet.java:95) 
    at org.springframework.restdocs.request.PathParametersSnippet.extractActualParameters(PathParametersSnippet.java:82) 
    at org.springframework.restdocs.request.AbstractParametersSnippet.verifyParameterDescriptors(AbstractParametersSnippet.java:77) 
    at org.springframework.restdocs.request.AbstractParametersSnippet.createModel(AbstractParametersSnippet.java:65) 
    at org.springframework.restdocs.request.PathParametersSnippet.createModel(PathParametersSnippet.java:67) 
    at org.springframework.restdocs.snippet.TemplatedSnippet.document(TemplatedSnippet.java:64) 
    at org.springframework.restdocs.mockmvc.RestDocumentationResultHandler.handle(RestDocumentationResultHandler.java:101) 
    at org.springframework.test.web.servlet.MockMvc$1.andDo(MockMvc.java:158) 

मैं बहुत यकीन है कि मैं परीक्षण सेटअप किया हूँ जैसे here समझाया गया।

मैं शायद गलत क्या कर सकता था?

उत्तर

27

अपवाद संदेश सही दिशा में बात करने के लिए कोशिश कर रहा है (वसंत बाकी डॉक्स संस्करण 1.0.0.BUILD-स्नैपशॉट है):

urlTemplate नहीं मिला। क्या आपने अनुरोध बनाने के लिए RestDocumentationRequestbuilders का उपयोग किया था?

आपको का उपयोग करने की आवश्यकता है ताकि वसंत आरईएसटी डॉक्स यूआरएल को कैप्चर कर सके और इसके पैरामीटर निकाले। यह mentioned in the documentation है जहां यह कहते हैं:

पथ मापदंडों उपलब्ध प्रलेखन के लिए, अनुरोध MockMvcRequestBuilders बजाय RestDocumentationRequestBuilders पर तरीकों में से एक का उपयोग करके बनाया जाना चाहिए बनाने के लिए।

के अपने स्थिर आयात को RestDocumentationRequestBuilders.get के लिए एक के साथ समस्या को हल करना चाहिए।

+0

तो आप कहते हैं कि यह सब नीचे लिखा गया है? आप सही हे! अच्छी तरह से प्रलेखित मॉड्यूल। समस्या एक बार फिर मॉनीटर के सामने थी। – FrVaBe

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