2016-07-27 146 views
0

我目前正在開發一個Java後端和JHipster 3,並遇到了一個我似乎無法很容易解決的問題。從項目之外的文件夾提供靜態內容

我想從JHipster生成的默認前端以外的項目之外的文件夾中提供靜態資源 - 在本例中爲圖像 - 。默認情況下,JHipster似乎根據環境從兩個目錄中的一個目錄提供靜態資產,詳見main/java/config/WebConfigurer.java中的配置。我想將/public/**指向我家目錄中的文件夾,但保留Angular前端的/**映射。

在一般的Spring項目中,您似乎可以通過擴展WebMvcConfigurerAdapter並重寫addResourceHandlers方法來爲靜態資源添加其他源,但對我而言似乎沒有效果。添加@EnableWebMvc註釋將打破其前端的默認JHipster映射。如果我沒有添加註釋,我似乎不會在DefaultServletHttpRequestHandler中達到handleRequest(),它處理到正確的servlet的映射。

目前我無法提供有關此主題的任何其他信息,但我希望有關JHipster的知識的人會看到此信息並指向正確的方向。

在此先感謝,最大。

回答

0

所有的應用程序服務器都有一個選項來爲類路徑提供額外的位置。
例如,Tomcat的屬性是conf/catalina.properties中的'common.loader'。

然後,您可以使用例如Spring的ClassPathResource手動加載資源,或者只是使用類似於'@Value(「classpath:abc.txt」)Resource r'的構造來注入事先已知的東西。

+0

感謝您的回答,但我想從文件系統中提供資源,而不是從類路徑提供資源。我想爲JHipster提供的默認源旁邊的靜態內容添加額外的源。 –

+0

我相信班級之路就是要走的路。我對JHipster不熟悉,但是您的默認源代碼很可能只是相對於類路徑的一些位置。 – Alexander