Проблема с поиском StripesResources.properties в classpath - PullRequest
1 голос
/ 08 марта 2011

Я пытаюсь работать с сообщениями в полосах, функцией, присутствующей в файле StripesReesources.properties, которая, согласно большинству учебников и моей книге, должна быть помещена в папку src, поэтому в главном пути к классам. Кроме того, поскольку он не работал, я поместил его также в папку, вызывающую "res", в качестве подпапки WEB-INF, ничего, Tomcat генерирует JasperException:

Не удалось найти пакет ресурсов с сообщениями об ошибках, необходимый для Stripes. Это почти наверняка означает, что файл свойств с именем StripesResources.properties не найден в classpath

Я использую Tomcat 6, JDK 6, хорошую IDE, я не думаю, что это проблема Ides, так как она не будет работать и с другой идеей. Где-то я прочитал «но я больше не могу найти эту веб-страницу», что эта функция также должна быть явно объявлена ​​в web.xml, но даже на официальном веб-сайте StripesFramework я ничего не вижу по этому поводу, поэтому не должно быть никакой конфигурации в web.xml для StripesResurces.properties Любой совет?

Спасибо

1 Ответ

3 голосов
/ 08 марта 2011

Он должен быть там в пакете по умолчанию прямо под src.и при сборке он должен перейти к WEB-INF/classes, так что непосредственно в пути к классам.

Обновление

Это была довольно интересная проблема.Я нашел решение из поста Фриди и вот вам

Вам нужно настроить web.xml, чтобы указать полосе, где искать ресурс

<filter>
  <filter-name>StripesFilter</filter-name>
  <filter-class>
    net.sourceforge.stripes.controller.StripesFilter
  </filter-class>
  <!-- other init params...-->
  <init-param>
    <param-name>
      LocalizationBundleFactory.FieldNameBundle
    </param-name>
    <param-value>com/stripesTest/properties/StripesResources</param-value>
  </init-param>
  <init-param>
    <param-name>
      LocalizationBundleFactory.ErrorMessageBundle
    </param-name>
    <param-value>com/stripesTest/properties/StripesResources</param-value>
  </init-param>
</filter>

Есливы также хотите использовать этот пакет ресурсов для тегов JSTL, вам также нужно добавить его вверху файла WEB-INF / web.xml:

<context-param>
  <param-name>
    javax.servlet.jsp.jstl.fmt.localizationContext
  </param-name>
  <param-value>com/stripesTest/properties/StripesResources</param-value>
</context-param>
...