2013-11-26 3 views
0

У меня есть проблема с mvc:resourcesServlet отображение Issue трейлеров ресурсов MVC весной

Мои main-servlet.xml

** 
    <bean id="viewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/jsp/" /> 
     <property name="suffix" value=".jsp" /> 
    </bean> 

    <bean id="multipartResolver" 
     class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
     <property name="maxUploadSize" value="50000000" /> 
    </bean> 

    <mvc:resources mapping="/images/**" location="/images/" /> 
    <mvc:resources mapping="/css/**" location="/css/" /> 
    ** 

Когда я прокомментирую mvc:resources линий все (еще) начинает работать магически. Но когда я раскомментирую строки, ТОЛЬКО ресурсы работают. Во время компиляции журнал сообщает, что были отображены ТОЛЬКО css/** и images/** и что другого сопоставления нет.

web.xml файл:

<servlet-mapping> 
    <servlet-name>main</servlet-name> 
    <url-pattern>/css/**</url-pattern> 
</servlet-mapping> 

<servlet-mapping> 
    <servlet-name>main</servlet-name> 
    <url-pattern>/images/**</url-pattern> 
</servlet-mapping> 
    <servlet-mapping> 
    <servlet-name>main</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

Я попытался положить 2 диспетчерские сервлетов, но это не работает, либо. Другой сервлет читается и не отображается, но по умолчанию используется основной сервлет.

журнала компиляции ПОСЛЕ комментирования/CSS/** и/изображений/** из web.xml:

** 
    org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler 
    INFO: Mapped URL path [/images/**] onto handler 'org.springframework.web.servlet.resource.ResourceHttpRequestHandler#0' 
    Nov 26, 2013 11:40:40 AM org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler 
    INFO: Mapped URL path [/css/**] onto handler 'org.springframework.web.servlet.resource.ResourceHttpRequestHandler#1' 
    Nov 26, 2013 11:40:40 AM org.springframework.web.servlet.FrameworkServlet initServletBean 
    INFO: FrameworkServlet 'resources': initialization completed in 220 ms 
    Nov 26, 2013 11:40:40 AM org.apache.catalina.core.ApplicationContext log 
    INFO: Initializing Spring FrameworkServlet 'main' 
    Nov 26, 2013 11:40:40 AM org.springframework.web.servlet.FrameworkServlet initServletBean 
    ** 
    INFO: FrameworkServlet 'main': initialization completed in 234 ms 
    Nov 26, 2013 11:40:40 AM org.apache.coyote.http11.Http11Protocol init 
    INFO: Initializing Coyote HTTP/1.1 on http-8080 
    Nov 26, 2013 11:40:40 AM org.apache.coyote.http11.Http11Protocol start 
    INFO: Starting Coyote HTTP/1.1 on http-8080 
    Nov 26, 2013 11:40:53 AM org.springframework.web.servlet.DispatcherServlet noHandlerFound 
    WARNING: No mapping found for HTTP request with URI [/KT/] in DispatcherServlet with name 'main' 
+0

Просто попробовал. Не работает :(. Ввод журнала компиляции теперь –

+0

Обратите внимание, что вы не должны называть его _compilation_. Это не компиляция. Это журналы запуска/загрузки. –

+0

Что начинает работать _everything (else) _? –

ответ

3

Обратите внимание, что ни один из контроллеров не будут регистрироваться с вашей текущей настройки. Вам нужно добавить

<mvc:annotation-driven /> 

в контекст так, что Spring регистрирует их в DispatcherServlet.

Ваш mainDispatcherServlet также должны просто быть сопоставлен

<servlet-mapping> 
    <servlet-name>main</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

Остальные являются избыточными.

+0

Я считаю, что вы правы.Я добавил эту строку и попытался скомпилировать ее. Я получаю эту ошибку в журналах запуска. «Строка 19 в документе XML из ресурса ServletContext [/WEB-INF/main-servlet.xml] недопустима, вложенное исключение - org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: обнаружен недопустимый контент, начиная с с элементом «context: component-scan». Один из «{» http://www.springframework.org/schema/mvc":message-converters, «http://www.springframework.org/schema/mvc»: аргументы-резольверы ... ». Я новичок в Spring, поэтому спасибо за опору со мной –

+0

Я переместил mvc: однонаправленная однонаправленная (ниже контекста: проверка компонента). Теперь я получаю ту же ошибку, что и «bean» (следующая строка после mvc-аннотации) имеет проблему –

+0

@ The Можете ли вы опубликовать журнал в редактировании на свой вопрос? –

0

вопрос уже был дан ответ, но я столкнулся с кучей проблем, решая его, так что я хочу оставить несколько шагов разрешения только в случае, если кто-то приходит, глядя с подобными проблемами:

первый и первоначальный вопрос: MVC: ресурсы, что плохое поведение (детали, о которых идет речь) Решение: Решено точно так же, как и принятый ответ. (

второй выпуск (см 1-й трассировки стека): Имеет место, когда вы не имеете закрывающий тег для) Решение: добавить «/» в конце или добавить сразу после (также принятый ответ должен это правильно)

третий выпуск (второй (последний) трассировки стека): Occurrs, когда вы не имеют следующую зависимость:

 <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-validator</artifactId> 
      <version>4.3.1.Final</version> 
     </dependency> 

Также. Если вы используете Tika & Solrj togather, выберите sl4j-api с более высокой версией. Выбор нижней версии вызывает целую кучу других проблем (извините трассировку стека).

Мои версии: Solr 3.6.2, Solrj 4.4.0, Tika 1.4.

Смежные вопросы