पर विफल रहा है मैंने वसंत के साथ बहुत लंबे संबंध के बाद ड्रॉपविज़ार्ड पर लौटने का फैसला किया। मुझे तुरंत पूर्ण बेरबोन रीस्ट सेवा मिल गई, और यह बिना किसी समस्या के चलाता है।सरल ड्रॉपविज़ार्ड 0.7.1 ऐप वैकल्पिक क्वेरीपैम डब्ल्यू/जावा 8
Dropwizard 0.7.1 और जावा 1.8 का उपयोग करना, केवल पोम प्रविष्टियों dropwizard कोर निर्भरता और Maven संकलक प्लगइन जावा 1.8, लागू करने के लिए के रूप में Dropwizard उपयोगकर्ता पुस्तिका द्वारा सिफारिश की
लेकिन, जैसा कि कर रहे हैं
INFO [2015-01-03 17:44:58,059] io.dropwizard.jersey.DropwizardResourceConfig: The following paths were found for the configured resources:
GET /(edge.dw.sample.controllers.IndexController)
ERROR [2015-01-03 17:44:58,158] com.sun.jersey.spi.inject.Errors: The following errors and warnings have been detected with resource and/or provider classes:
SEVERE: Missing dependency for method public java.lang.String edge.dw.sample.controllers.IndexController.index(java.util.Optional) at parameter at index 0
Exception in thread "main" javax.servlet.ServletException: [email protected]30103b7==com.sun.jersey.spi.container.servlet.ServletContainer,1,false
इस प्रकार नियंत्रक के लिए कोड के रूप में:
012,351 ही मैंने बुनियादी नियंत्रक करने के लिए वैकल्पिक QueryParam जोड़ने का प्रयास करते हैं, तो अनुप्रयोग निम्न त्रुटि (संक्षिप्तता के लिए कटौती) के साथ शुरू करने के लिए विफल रहता है@Path("/")
public class IndexController {
@GET
@Timed
public String index(@QueryParam("name") Optional<String> name) {
String saying = "Hi";
if(name != null && name.isPresent()) {
saying += " " + name.get();
}
return saying;
}
}
यदि मैं मिश्रण से वैकल्पिक हटा देता हूं, तो एप्लिकेशन ठीक ठीक चलता है। मैं वैकल्पिक-विशिष्ट कोड को शून्य जांच के साथ प्रतिस्थापित करता हूं और यह पूरी तरह से काम करता है।
क्या मुझे यहां कुछ मौलिक याद आ रही है? Google Guava वैकल्पिक और java.util.Optional दोनों एक ही त्रुटि के साथ विफल हो जाते हैं। (और हाँ, मैं संकीर्ण नीचे वैकल्पिक वस्तु के लिए क्या किया यह)
एक त्वरित गूगल/एसओ उपयोगी कुछ भी नहीं झुकेंगे खोज करते हैं, लेकिन एक संसाधन मैं
पहले सेधन्यवाद चूक गए हों करने के लिए मुझसे बात करने के लिए स्वतंत्र लग रहा है!
अमरूद वैकल्पिक डिफ़ॉल्ट रूप से ड्रॉपवार्ड द्वारा प्रबंधित किया जाता है, केवल FYI। जवाब चिह्नित करने के लिए मत भूलना। – Natan
धन्यवाद, यह भ्रमित डीबगिंग का 45 मिनट का साहसिक था। – Joe