Добавление томагавка MyFaces в проект JSF 2.0 в NetBeans - PullRequest
1 голос
/ 09 декабря 2011

Я пытаюсь добавить MyFaces Tomahawk в мой проект JSF 2.0 в NetBeans. Я прочитал много комментариев, где говорится, как это сделать, но это не работает, есть шаги, которые я сделал:

1º Скопируйте все библиотеки jar, загруженные с сайта Tomahawk, в /% ProjectFolder% / web / WEB-INF / lib (у меня нет папки lib, поэтому я ее создал)

2º Добавить библиотеку в проект, используя Свойства / Библиотеки / Добавить папку в NetBeans

3º Добавьте следующий код в web.xml:

 <filter>
  <filter-name>extensionsFilter</filter-name>
  <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
 </filter>

 <filter-mapping>
  <filter-name>extensionsFilter</filter-name>
  <servlet-name>Faces Servlet</servlet-name>
 </filter-mapping>

 <filter-mapping>
  <filter-name>extensionsFilter</filter-name>
  <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
 </filter-mapping>

 <servlet>
  <servlet-name>Faces Servlet</servlet-name>
  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>

4º Добавьте в index.xhtml следующую строку в теге html:

xmlns:t="http://myfaces.apache.org/tomahawk"

Что ж, я думаю, что мне не нужно делать больше, но когда я делаю последний шаг, NetBeans говорит мне: «Не найдена библиотека для этого пространства имен».

Я уверен, что я делаю это плохо, но я не знаю, что мне нужно делать ..... некоторые идеи?

Я надеюсь, что этот пост будет учебным пособием, потому что я считаю его необходимым.

Спасибо ^^

EDIT:

Я обнаружил ошибку: нам нужен еще один шаг:

5º Вы должны загрузить Этот файл примера. Это коллекция примеров в файле войны. Откройте его с помощью winrar или аналогичного файла и откройте папку unrar myfaces-example-simple20-1.1.11 . После этого перейдите в myfaces-example-simple20-1.1.11 \ WEB-INF \ src \ META-INF \ directory и скопируйте все файлы в свой web / META-INF /. Затем NetBeans покажет вам помощь и опции автозаполнения.

Ответы [ 2 ]

0 голосов
/ 27 апреля 2015

У меня была та же проблема, и я решил ее, выполнив следующие действия:

  1. Поместите томагавк в мою войну. Я добился этого правой кнопкой мыши на войне -> Свойства. Затем Libraries -> Add Jar и выбрал только что скачанный tomahawk.jar
  2. Настроил фильтр расширений следующим образом:

     <filter>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
        <init-param>
            <param-name>uploadMaxFileSize</param-name>
            <param-value>20m</param-value>
        </init-param>
    </filter>
    
    <filter-mapping>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>
    
    <filter-mapping>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    

    убедившись, что значение имени сервлета фильтра расширений совпадает с именем сервлета Faces.

  3. Добавлен этот импорт xmlns:t="http://myfaces.apache.org/tomahawk"

Возможно, проблема в том, как вы импортировали библиотеки.

0 голосов
/ 03 августа 2012

У вас есть это в конце web.xml?

    <load-on-startup>1</load-on-startup>
</servlet>

Кажется, отсутствует в вашем коде (шаг 3)

Также вы должны убедиться, что секция сервлета не повторяется.

У меня отлично работает.

...