Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Tomcat 7, JSF 2.0 & CDI beans, Как задеплоить? 
V
    Опции темы
emmanuil
  Дата 19.1.2011, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 9.1.2007

Репутация: нет
Всего: 3



Доброго времени суток!
Есть приложение на JSF 2.0, используются cdi бины написанные на groovy 1.7.6. На glassfish все деплоится и работает нормально. Нужно задеплоить на tomcat 7. Искал в сети, нашел как, но либо не деплоится совсем, либо деплоится но не работаю cdi бины, т.е. равны null - не инициализируются.
Деплою из IDEA, ubuntu.
Вот, что тащу:
Код

<dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.0.4-b07</version>
        </dependency>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.0.4-b07</version>
        </dependency>
        <dependency>
            <groupId>javax.el</groupId>
            <artifactId>el-api</artifactId>
            <version>2.2.1-b04</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>[2.5,3.0.0-alpha-1)</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>1.0.0.GA</version>
        </dependency>
        <!-- CDI -->
        <dependency>
            <groupId>org.jboss.weld.servlet</groupId>
            <artifactId>weld-servlet</artifactId>
            <version>1.1.0.Final</version>
        </dependency>
        <!--<dependency>-->
            <!--<groupId>org.jboss.weld</groupId>-->
            <!--<artifactId>weld-api</artifactId>-->
            <!--<version>1.1.0-01-glassfish</version>-->
        <!--</dependency>-->
        <!--<dependency>-->
            <!--<groupId>org.jboss.weld</groupId>-->
            <!--<artifactId>weld-core</artifactId>-->
            <!--<version>1.1.0-01-glassfish</version>-->
        <!--</dependency>-->

Из web.xml:
Код

    <listener>
        <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
    </listener>

Если тащу weld-servlet, то при деплое выдает
Код

20.01.2011 1:09:57 org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
20.01.2011 1:09:57 org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [] startup failed due to previous errors

и не деплоится.
Если отрубить сервлет, то деплоится, но не работают cdi бины.
Я что-то делаю не так и чего-то незнаю. Скажите куда копать или как решить проблему?

Это сообщение отредактировал(а) emmanuil - 19.1.2011, 22:14
PM MAIL   Вверх
emmanuil
Дата 20.1.2011, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 9.1.2007

Репутация: нет
Всего: 3



Частично решено. Все банально. Нужно еще weld-servlet-core.jar добавить.
Теперь деплоится. Но при попытке загрузить страницу выдает:
Код

java.lang.IllegalStateException: Context is already active
    org.jboss.weld.context.AbstractConversationContext.activate(AbstractConversationContext.java:301)
    org.jboss.weld.jsf.WeldPhaseListener.activateConversations(WeldPhaseListener.java:110)
    org.jboss.weld.jsf.WeldPhaseListener.beforePhase(WeldPhaseListener.java:84)
    com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:224)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:95)
    com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:107)
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:308)

Причин незнаю и в нете пока не нашел такого упоминания.
PM MAIL   Вверх
emmanuil
Дата 28.1.2011, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 9.1.2007

Репутация: нет
Всего: 3



Цитата(emmanuil @  20.1.2011,  18:39 Найти цитируемый пост)
Частично решено. Все банально. Нужно еще weld-servlet-core.jar добавить.

weld-servlet-core.jar не надо. И почему она без него не работала... Что-то не так делал. Все решено и все банально. Нужен только weld-servlet.jar и в веб.хмл прописать слушателя.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0438 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.