(Resolvido)JNDI + JBOSS + SESSIONFACTORY

Pessoal, ola.

Sou novato em java e estou com o seguinte problema:

Tenho uma aplicação Flex + Blazeds + Hiberbate + MSSQL, que roda no Tomcat sem problemas, agora preciso migrar para Jboss.

Quando coloco a aplicação para rodar no jboss ele me retorna o seguinte erro:

HTTP Status 500 -

type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Filter execution threw an exception
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

java.lang.NoClassDefFoundError: com/mchange/v2/c3p0/DataSources
org.hibernate.connection.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:154)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:414)
org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
util.HibernateUtil.(HibernateUtil.java:23)
util.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:20)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
java.lang.ClassNotFoundException: No ClassLoaders found for: com.mchange.v2.c3p0.DataSources
org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:212)
org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:521)
org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
java.lang.ClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
org.hibernate.connection.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:154)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:414)
org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
util.HibernateUtil.(HibernateUtil.java:23)
util.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:20)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

note The full stack trace of the root cause is available in the JBossWeb/2.0.1.GA logs.

JBossWeb/2.0.1.GA

Após pesquisa na net e após varias “googladas” surgiu a opção de utilizar o JNDI porem não estou tendo sucesso na aplicação.

alguem poderia me ajudar, com uma explicação objetiva de como devo proceder para utilizar esta forma de conexão.

aguardando ansionamente.

WlSilva

To com um problema um pouco parecido. Sou um pouco novo nessa parte web, mas vamos que vamos :).
Me diz uma coisa (uma não, duas): como está seu persistence.xml? Se você for usar o JBoss, acho que você vai precisar usar JTA. Se você vai precisar usar JTA, você precisa especificar o seu DataSource no persistence.xml. Você criou o DataSource?

Abraço.

Aliás, a versão do JBoss que uso é a jboss-5.1.0.GA.

meu persistence.xml esta ok.

criei, porem como especifico no meu persistence.xml?

Hibernate
Blazeds
Jboss 4.2.2

O Hibernate que você está usando é aquele que vem com o JBoss?

Pra usar JTA, especifique o datasource embaixo do provider:

<provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>NomeDeMeuDataSource</jta-data-source>
Se você colocar as tags de jta-data-source, o tipo de transação ‘padrão’ é JTA. Acho, ACHO, que precisa de mais alguma coisa (quem sabe especificar a property hibernate.connection.datasource, que deve ser o mesmo nome que foi colocado entre a tag jta-data-source). Além disso, o datasource deve estar no classpath da aplicação (e acho que dentro da pasta WEB-INF).

Valeu pela ajuda.

Sua pergunta referente a versão do hibernate fez com que eu encontrasse o problema.

A versão do hibernate no Jboss era diferente da versão utilizada no desenvolvimento o que causou o erro, alem de faltarem algumas bibliotécas no Jboss.

WLSilva

Bom dia colega, eu estou tendo que realizar este mesmo processo de migração e o ambiente da minha aplicação é praticamente igual ao seu no entanto desejo algumas orientações do pessoal de como está fazendo isso, pois o tomcat que utilizo não consegue gerenciar eficazmente a memória quando muito requisitado. desde já sou grato.