2016-02-03 10 views
6

मुझे वसंत बूट ऐप से index.html (मुख्य/संसाधन/स्थिर के अंतर्गत स्थित) की सेवा करने का प्रयास करते समय HTTP 404 त्रुटि मिल रही है। हालांकि अगर मैं परियोजना से जर्सी आधारित जेएक्स-आरएस कक्षा को हटा देता हूं, तो http://localhost:8080/index.html ठीक काम करता है।वसंत बूट स्थिर सामग्री की सेवा नहीं कर रहा है जब जर्सी आरईएसटी शामिल है

निम्नलिखित मुख्य वर्ग

@SpringBootApplication 
public class BootWebApplication { 

    public static void main(String[] args) { 
     SpringApplication.run(BootWebApplication.class, args); 
    } 
} 

मुझे यकीन है कि अगर मैं कुछ यहाँ याद आ रही है नहीं कर रहा हूँ है।

धन्यवाद

+0

@emoleumassi क्या आप कृपया संगतता समस्याओं पर विस्तृत जानकारी दे सकते हैं? हम (स्प्रिंग बूट टीम) किसी के बारे में अवगत नहीं हैं। –

+0

@ एंडी विल्किन्सन मुझे वसंत बूट और जर्सी के साथ पहले से ही बुरा अनुभव था। अधिक स्पष्टीकरण के लिए मेरी पोस्ट देखें: http://stackoverflow.com/questions/33026968/spring-boot-org-springframework-beans-factory-beancreationexception-could-not-a और http://stackoverflow.com/questions/33000931/वसंत-बूट-एक्सेस-एक्सेस-कुछ-नियंत्रक – emoleumassi

उत्तर

8

समस्या जर्सी सर्वलेट पथ, जो /* को चूक की डिफ़ॉल्ट सेटिंग है। यह स्थिर सामग्री के लिए डिफ़ॉल्ट सर्वलेट के अनुरोध सहित सभी अनुरोधों को हॉग करता है। तो अनुरोध जर्सी जा रहा है स्थैतिक सामग्री की तलाश में, और जब यह जर्सी आवेदन के भीतर संसाधन नहीं मिल रहा है, यह पता भेज देंगे एक 404.

आप इस के आसपास एक जोड़े विकल्प हैं:

  1. फ़िल्टर के रूप में जेर्स रनटाइम को कॉन्फ़िगर करें (डिफ़ॉल्ट रूप से सर्वलेट के रूप में)। this post देखें कि आप यह कैसे कर सकते हैं। इसके अलावा, इस विकल्प के साथ, आपको 404s को सर्वलेट कंटेनर में अग्रेषित करने के लिए ServletProperties में से एक को कॉन्फ़िगर करने की आवश्यकता है। आप उस संपत्ति का उपयोग कर सकते हैं जो जर्सी को सभी अनुरोध को आगे बढ़ाने के लिए कॉन्फ़िगर करता है जिसके परिणामस्वरूप जर्सी संसाधन नहीं मिल रहा है, या वह संपत्ति जो आपको अनुरोधों के लिए रेगेक्स पैटर्न को कॉन्फ़िगर करने की अनुमति देती है।

  2. आप जर्सी सर्वलेट पैटर्न को डिफ़ॉल्ट रूप से अन्य किसी अन्य चीज़ में बदल सकते हैं। ऐसा करने का सबसे आसान तरीका @ApplicationPath("/root-path") के साथ अपने ResourceConfig सबक्लास को एनोटेट करना है। या आप इसे अपने application.properties - spring.jersey.applicationPath में कॉन्फ़िगर कर सकते हैं।

+0

धन्यवाद। वह काम किया !! – Rocky

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