2013-02-26 3 views
1

Добрый вечер,Добавление RichFaces на основе проекта Maven

В настоящее время я пытаюсь добавить RichFaces на основе проекта Maven в Eclipse. Однако, когда я развертываю свое приложение (Glassfish), я получаю следующие предупреждения в своем браузере:

Внимание: Эта страница требует пространства имен XML h ++ p: //richfaces.org/rich с префиксом rich, но без taglibrary существует для этого пространства имен.

Кроме того, у меня нет сообщений об ошибках в консоли.

В Netbeans у меня была такая же проблема при попытке Richfaces в первый раз. Тем не менее, я смог решить это, выполнив щелчок правой кнопкой мыши по папке «Зависимости» в своем веб-проекте, а затем выбрав «Загрузить декларируемые зависимости». Однако у меня нет этой опции в Eclipse.

Проект в Eclipse использует JSF 2.1 (Apache MyFaces 2.1.5). Зависимости были добавлены следующие:

<dependency> 
     <groupId>org.richfaces.ui</groupId> 
     <artifactId>richfaces-components-api</artifactId> 
     <version>4.2.2.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>org.richfaces.ui</groupId> 
     <artifactId>richfaces-components-ui</artifactId> 
     <version>4.2.2.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>org.richfaces.core</groupId> 
     <artifactId>richfaces-core-api</artifactId> 
     <version>4.2.2.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>org.richfaces.core</groupId> 
     <artifactId>richfaces-core-impl</artifactId> 
     <version>4.2.2.Final</version> 
    </dependency> 

Хотя этот код работал отлично в Netbeans Я также попытался следующие рекомендации по:

https://community.jboss.org/wiki/HowToAddRichFaces4xToMavenBasedProject https://community.jboss.org/wiki/MavenGettingStarted-Users

Однако проблема сохраняется. Есть идеи, почему это происходит?

ответ

0

Это выглядит так, как будто Maven не загружает зависимости в локальное репо. Самый простой способ сделать это в eclipse - использовать плагин m2e. После установки щелкните правой кнопкой мыши на своем проекте и выберите;

Run As> Maven Clean

, который пытается очистить рабочий каталог проекта, по файлам, которые мы сгенерированных при построении времени. Вы можете прочитать об этом здесь: http://maven.apache.org/plugins/maven-clean-plugin/

снова сделать правую кнопку мыши на проект и выберите:

Run As> Maven Установить

, который используется для добавления артефакта (ей) ваш местный репозиторий. Вы можете прочитать об этом здесь: http://maven.apache.org/plugins/maven-install-plugin/

Попробуйте развернуть это на свой сервер, и он не должен стонать о отсутствующих зависимостях. Также я предлагаю, как только вы довольны концепциями maven, чтобы ознакомиться с его использованием из командной строки. Удачи!

+0

Спасибо за ваш ответ. Я уже это сделал, но это не устраняет проблему. Баннеры richfaces уже были загружены в папку C: /Users/MyUser/.m2/repository/org/richfaces/... Кроме того, при проверке свойств веб-проекта я могу увидеть уже добавленные в путь сборки интерфейсы. Он отображается с символом синей точки, а затем он говорит: «M2_Repo/org/richfaces /...- C: /Users/MyUser/.m2/repository/org/richfaces/...» – user2100776

+0

@ user2100776, сначала проверьте свои пространства имен правильны: xmlns: rich = "http://richfaces.org/rich" xmlns: a4j = "http://richfaces.org/a4j" Если это так и не работает, то если вы можете предоставить [SSCCE] (http://sscce.org/) вашего проекта, я могу очень быстро взглянуть на вас. – Ally

+0

На данный момент я буду работать только с Netbeans, так как в моем опыте было намного проще, и, по крайней мере, проект работает с Richfaces. В любом случае, спасибо за помощь. – user2100776

0

Вот короткий подход к поваренной книге, который я нашел работающим после примерно дюжины пообещал простой JSF Начните. У меня есть цель, продиктованная другими областями проекта. Netbeans и без большого сервера (например) Glassfish, JBOSS. Я хочу начать с Tomcat и перейти на встроенный сервер. Я ожидал проблем с миграцией. Это заняло около 4-х дней, чтобы найти пример, который работает.Начало здесь:

Это действительно разочаровывает, потому что точно такой же демо потребовалось 30 мин AngularJS. Первая проблема заключается в том, что нет готовых примеров, которые запускаются. Люди, пишущие эти проекты, просто хотят использовать flash-примеры, которые не объясняют основы. Во-вторых, не так много (практически) ничего, что работает, когда вы делаете это с Netbeans 8. Поэтому будьте готовы сначала взломать, пока не найдете то, что работает для вас.

До сих пор я получил Netbeans 8 и Tomcat 8 для запуска этого примера. Я достаточно доволен, но при запуске все еще есть ошибка. Index.xhtml работает нормально, поэтому я рассчитываю на выигрыш '. Если вы находитесь в Windows, вы можете изменить это в одной строке.

mvn archetype:generate \ 
     -DarchetypeGroupId=org.richfaces.archetypes \ 
     -DarchetypeArtifactId=richfaces-archetype-simpleapp \ 
     -DarchetypeVersion=4.0.0.Final \ 
     -DgroupId=com.jasmineconseil.samples.richfaces4 \ 
     -DartifactId=richfaces4-start 

Это генерирование не полностью работает. Он разбивается на недостающие ресурсы/папку. Нечетный, поскольку он отвечал за создание папки ресурсов imho. Я создал папку resouces и повторно создал файл. Это по крайней мере дало мне POM-файл. О, да, я использую maven 3, если это помогает людям.

я переехал в каталог проекта, и следующий этап установки POM:

mvn install 

Это также сделал некоторые вещи так и не удалось. Что-то делать с компиляцией. В этот момент я перешел на Netbeans. Файл POM не загружается как проект, мне нужно было щелкнуть по меню «Разрешенные проблемы».

Когда я нажал на проблему, большинство проблем исчезло.

Далее, Свойства проекта. Главное - установить версию Java (1.8 в этом проекте). Задайте сервер Tomcat. Проверьте библиотеки компонентов и убедитесь, что RichFaces отмечен галочкой.

Нажмите, чтобы построить - он строит. Нажмите Run/Debug ... Если ваша установка Tomcat настроена, она работает! С ошибкой времени выполнения от Catalina. Тем не менее веб-страницы появляется и ошибка не отображается после этого (до сих пор, так хорошо ....)

13-Aug-2014 00:04:11.058 SEVERE [localhost-startStop-1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start: 
    org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/hellojsf]] 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:697) 
     .... 

я не смотрел на это пока. Есть примечания на JavaHotChocolate о различных видах поблемов с банками и ошибками. Я надеюсь, что мне что-то натолкнутся, или я вернусь с вопросом об ошибке.

Вы также можете найти их полезными для развязывания шарика шерсти.

Гоча ...

Некоторые вещи, которые я нашел с Netbeans (?), Особенно после очистки или закрытия Netbeans и повторного открытия проекта.

  • хочет изменить свой сервер/Tomcat установки
  • хочет изменить RichFaces (снимите флажок)
  • Стандартные плагины Maven не хватает их номер версии (это предупреждение сейчас, в ближайшее время об ошибке)
  • Рекомендуем также посмотрите файл Maven setup.xml (см. руководство JBOSS).
  • Изменения URL для Java-сети хранилище, как показано ниже: Netbeans warns blacklisted repository declarations for "http://download.java.net/maven/2" in pom.xml. How to deal? [Update]
  • Обеспечения папки развертывания Tomcat Каталина 'чистого': $ мартовского кота \ конф \ Catalina \ локальный [Update]

Надеюсь, некоторые из людей, смотрящих на эту тему, могут сделать один шаг вперед с этими примерами. Bon шанс!

+0

У меня может быть ответ на Исключение: «LifecycleException: Не удалось запустить компонент ...»; когда я посмотрел папку Catalina/localhost, был старый файл. Вероятно, полезно очистить эту папку. – will

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