Integrando JSF1.2 Mais spring 2.5 mais hibernate e jpa no eclipse

4 respostas
elanod

Boa tarde.

Amigos estou desenvolvendo aplicacao com eclipce
a parte de persistencia esta no arquivo model3.jar
com jpa e spring e esta funcionando. inclusive testei com junit
salva e atualiza no mysql sem erros. Porem quando eu tento
subir qualquer xml no servidor “apache tomcat 6.0” da o error abaixo.

Favor se alguem que ja usa spring puder ver os arquivo faces-config.xml
applicationContext.xml. Parece que o problema e na configuração dos arquivos para integrar jsf 1.2 com
o spring.

C alguem puder me ajudar. Fico muito grato. Ja pesquisei a fio na net sobre esse
erro . Preciso muito dessa força
Grato,
Elano

Erro

20/01/2012 10:55:32 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
20/01/2012 10:55:32 org.apache.catalina.core.StandardContext start
SEVERE: Context [/cca] startup failed due to previous errors
20/01/2012 10:55:32 org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext

<h:panelGrid columns="3">
                                  <h:outputText value="Categoria"/>
                                  <h:outputText value="Categoria"/>              
                                  <!--                                                                                      
                                              <h:inputText id="categoria" value="#{categoriaControle.categoria.catNome}" required="true" requiredMessage="Campo obrigatorio"/>
                                               -->                                                                                        
                                              <h:message for="categoria"/>                                            
                  </h:panelGrid>
                 
                  <h:panelGrid columns="2">
                                           <!--  <h:commandButton value="Salvar" action="#{categoriaControle.salvar}" /> -->
                                                                                             
                            <h:commandButton  value="Cancelar" action="reset" immediate="true"/>                                                   
                  </h:panelGrid>
               
                </h:form>
              </f:view>
              </body>

WEB-INF/faces-config.xml

<?xml version="1.0" encoding="UTF-8"?>

org.apache.myfaces.trinidad.core

org.springframework.web.jsf.DelegatingVariableResolver

pt_br pt_br

br.com.cca.msg.Msg

WEB-INF/applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<!-- Classe responsável pela gestão das entidades  -->
            <bean id="entityManagerFactory"
                           class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
                           <property name="persistenceUnitName" value="model3" />
            </bean>
           
            <!-- Identifica os beans anotados com @Service, @Repository, @Controller --> 
            <context:component-scan base-package="br.com.cca.controle" />
           
            <!-- Habilita a configuração de beans via anotações
            sem a necessidade de usar PersistenceAnnotationBeanPostProcessor,
            AutowiredAnnotationBeanPostProcessor e etc  -->
            <context:annotation-config />                
           
            <!-- Classe responsável pela gestão das transações  -->              
            <bean id="transactionManager"
                             class="org.springframework.orm.jpa.JpaTransactionManager">
                             <property name="entityManagerFactory" ref="entityManagerFactory"/>                      
            </bean>                                                            
           
           
            <!-- Marcação de transações através de anotações. Com a anotacao @Transaction, o ele
            mento tx:annotation-driven e automaticamente advertido para o trabalho com transacao   -->             
            <tx:annotation-driven />

            <!-- Declaração de Beans no Spring -->
            <bean id="produtoDao"
                  class="br.com.integrator.dao.imp.ProdutoDaoImp" />
            <bean id="categoriaDao"
                           class="br.com.integrator.dao.imp.CategoriaDaoImp" />
            <bean id="pedidoDao" class="br.com.integrator.dao.imp.PedidoDaoImp" />
            <bean id="itensPedidoDao"
                           class="br.com.integrator.dao.imp.ItensPedidoDaoImp" />
            <bean id="usuarioDao"
                           class="br.com.integrator.dao.imp.UsuarioDaoImp" />

            <bean id="adminDao"
                           class="br.com.integrator.dao.imp.AdminDaoImp" />

segue o arquivo persistence.xml que esta dentro WEB-INF/lib/model3.jar

<?xml version="1.0" encoding="UTF-8"?>

<persistence-unit name="model3">                                                                                                  
           
                           <provider>org.hibernate.ejb.HibernatePersistence</provider>
                           <class>br.com.integrator.entities.Admin</class>
                           <class>br.com.integrator.entities.Categorias</class>
                           <class>br.com.integrator.entities.ItensPedido</class>
                           <class>br.com.integrator.entities.IPedidoPK</class>
                           <class>br.com.integrator.entities.Pedidos</class>
                           <class>br.com.integrator.entities.Produtos</class>
                           <class>br.com.integrator.entities.Usuarios</class>                     

                           <properties>
                                           <property name="hibernate.archive.autodetection" value="class, hbm"/>

                                           <!--Configuracoes de dialeto e conexao-->
                                           <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect"/>
                                           <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
                                           <!--       
                                           <property name="hibernate.connection.url"
                                                           value="jdbc:mysql://localhost/ecommerce" />
                                                           -->
                                          
                                           <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/ecommerce"/>
                                                                         
                                           <property name="hibernate.connection.username" value="root"/>
                                           <property name="hibernate.connection.password" value="senha"/>

                                           <!--Configuracoes de Debug-->
                                           <property name="hibernate.show_sql" value="true"/>
                                           <property name="hibernate.format_sql" value="true"/>
                                           <property name="use_sql_comments" value="true"/>
                                          
                                           <!--Configuração do segundo nível de cache-->
        <property name="hibernate.cache.provider_class"
                  value="net.sf.ehcache.hibernate.EhCacheProvider" />
       
        <property name="hibernate.cache.provider_configuration"
                  value="/ehcache.xml" />
       
        <property name="hibernate.cache.use_minimal_puts"
                  value="false" />
        <property name="hibernate.cache.use_query_cache"
                  value="true" />
        <property name="hibernate.cache.use_second_level_cache"
                  value="true" />
        <property name="hibernate.cache.use_structured_entries"
                  value="true" />
       
        <property name="hibernate.ejb.classcache.br.com.integrator.entities.Produtos"
                  value="read-write"/>
       
        <property name="hibernate.ejb.classcache.br.com.integrator.entities.Categorias"
                  value="read-write" /> 
        

        <!--Configuração do pool de c3p0-->          
        <property name="hibernate.c3p0.min_size" value="5" />
        <property name="hibernate.c3p0.max_size" value="20" />
        <property name="hibernate.c3p0.timeout" value="300" />
        <property name="hibernate.c3p0.max_statements" value="50" />
        <property name="hibernate.c3p0.idle_test_period" value="3000"/>                                                                                                                  
                                          
                           </properties>

            </persistence-unit>

4 Respostas

calel

Dica: Use as tags code pra facilitar a leitura de códigos e arquivos xml.

SEVERE: Error listenerStart
Esse erro me faz pensar que faltou alguma configuração no web.xml No meu web.xml tenho as seguintes configurações para que o spring seja inicializado.
<!-- Define os arquivos de configuracoes XML para o contexto Spring -->  
  <context-param>  
   	<param-name>contextConfigLocation</param-name>  
   	<param-value>/WEB-INF/beans.xml</param-value>  
  </context-param>
<!-- Inicializa o Spring Web Application Context -->  
  	<listener> 
        <listener-class> 
            org.springframework.web.context.ContextLoaderListener 
        </listener-class> 
    </listener>  
	
	<!-- Ativa os escopos web para os beans no Spring -->  
  <listener>  
   	<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>  
  </listener>
elanod

Boa tarde caleu.
Obrigado pela dica.
Teria como vc ou alguem do fórum me enviar aos jar
Do spring 2.5.6 é q li na net q o problema
Pode ser nesses jar tipo com bug. Preciso desses jar d alguem
Onde ele já funciona!

Tenho uma duvida tenho o model funcionando ok
Mas no lado view controle jsf.
Oque eu preciso reconfigurar exemplo no novo projeto. eu importo o
Model onde coloco esses arquivos

Tenho Src/applicationContext.XML
Src/meta-inf/persistence.XML.

Qq ajuda e bem vinda
Grato
Elano. [email removido]
[email removido].l

calel

Quanto aos jars do spring, uso a versão 3 e baixei do site do spring, nenhum segredo, só jogar na sua aplicação os que você precisar.

Você colocou as classes model em um projeto e a parte da view em outro?
Geralmente esses arquivos xml ficam na pasta WEB-INF/classes, ao compilar os arquivos java, esses arquivos xml também são movidos para lá.

Caso você esteja usando essa aplicação para estudar, dou a sugestão de colocar model e view no mesmo projeto pra não complicar a cabeça com possíveis configurações, salvo se estiver seguindo algum texto que explica esse tipo de design.

elanod

Bom dia a todos.
caleu, Sabe c a versão 3 do spring é compativel com jsf 1.2?

Você colocou as classes model em um projeto e a parte da view em outro?
Fiz exatamente isso.

Meu primeiro contato com spring foi pelo livro
Dominando Java Server Faces e Facelets Utilizando Spring 2.5, Hibernate e Jpa - Edson Gonçalves

To estudando a um bom tempo pra criar uma estrutura de programação para trabalho profissional mesmo.
Pretendo procurar emprego na area lá em rj.
E pelo que sei usam muito spring por lá.
Por isso tenho que fazer com model separado do view
Seguindo padrão mvc.

To tendo dificuldade só na parte de subir uma aplicação integrando spring com jsf.
Separado funciona legal. Procurei conteúdo na net.
Mais Só tem conteúdo com informações isoladas.

Obrigado pelas informações vo baixar o spring 3.0 pra Testar.
Vai q o problema e no jar

Grato,
Elano

Caso você esteja usando essa aplicação para estudar, dou a sugestão de colocar model e view no mesmo projeto pra não complicar a cabeça com possíveis configurações, salvo se estiver seguindo algum texto que explica esse tipo de design.

Criado 20 de janeiro de 2012
Ultima resposta 28 de jan. de 2012
Respostas 4
Participantes 2