2015-07-20 3 views
0

В моем приложении у меня есть как DispatcherServlet-servlet.xml, так и root-context.xml. Я настроил все компоненты в root-context.xml, и я хочу прочитать этот xml. Я использовал ApplicationContext, чтобы прочитать этот файл, но я получил ClassNotFoundException. мои оба xml находятся внутри папки WEB-INF. если я создаю папку xml вне i.e. src, она работает нормально, но в соответствии с моим проектом я не могу изменить расположение файлов, поэтому, пожалуйста, скажите мне, как читать xml, который находится внутри WEB-INF.как читать файл root-context.xml

Ниже приведен мой код для чтения XML-файла.

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("/WEB-INF/spring/root-context.xml"); 

и

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("/WEB-INF/spring/DispatcherServlet-servlet.xml"); 
+1

Почему вы даже загружаете его вручную? Вы не должны делать это в первую очередь ... –

+0

Какая ошибка вы получаете во время чтения этих файлов с использованием вашего кода? –

+0

Можете ли вы сделать такой путь? // WEB-INF // spring // DispatcherServlet-servlet.xml' –

ответ

0

Я думаю, вы должны определить ваше приложение или контекст сервлета в WEB-INF/web.xml и не нуждаются в ней инициализации вручную. Как это:

<context-param> 
    <param-name>ctxLocation</param-name> 
    <param-value>/WEB-INF/classes/app-ctx.xml</param-value> 
</context-param> 
<servlet> 
    <servlet-name>MyServlet</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>ctxLocation</param-name> 
     <param-value>/WEB-INF/classes/servlet-ctx.xml</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

А также вам нужно использовать ContextLoaderListener класс

+0

yes Я настроил свой файл web.xml this но все же он не работает – Sthogari

0

ClassPathXmlApplicationContext, вы должны поместить эти файлы в пути к классам, т.е. в вашем Src каталоге IDE, так что, копируется в каталог классов по умолчанию.