JBoss-7.1.1 + Spring-3.2 + hibernate-4

Olá pessoal.
Alguém aí conseguiu integrar JBoss-7 + Spring + Hibernate? Poderiam indicar (ou ensinar) o caminho das pedras? Estou há dias tentando isto sem sucesso. As coisas que faço íam bem no JBoss-4, mas mudando o projeto para servlet-3, usando Tomcat é moleza, mas com o JBoss-7 complicou demais…
Agradeceria se alguém pudesse me ajudar a:

  • Como configurar os módulos do JBoss-7?
  • Como configurar o arquivo de contexto do Spring, usando JNDI do JBoss?
  • Quais outros arquivos do JBoss devo configurar para rodar uma aplicação JSF usando SPRING + HIBERNATE?
    Entendo que é pedir demais, entretanto, esse post poderia ajudar vários colegas que estão enfrentando o mesmo problema, haja visto que não existe um tutorial completo sobre esse assunto.

Obrigado a todos.

1 curtida

Que módulos que configurar?
Quais dificuldades tem encontrado com o spring + jboss?
Só pedir para ajudar não deixa claro o que você realmente precisa.

Sim, claro:

Por exemplo:

  • O sistema já está funcionando em JBoss 7, mas ainda não integrei funcionalidades de banco de dados…

  • Então decido utilizar Spring + Hibernate para realizar a interação com BD - decido também que vou usar JNDI

  • Tudo isto eu sei como se faz, usando o Tomcat (e mais toda aquela camada de persistência do Hibernate - DAO, repositorios, facades, injeções com spring, anotações, etc… domino tudo isto, sem problemas).

  • Então eu não vou mais usar o Tomcat, vou configurar o JBoss para utilizar essas duas tecnologias.

  • E aí está o gargalo: por onde começo? quais arquivos do JBoss eu tenho de criar ou configurar para usar Spring+ Hibernate? Não existe uma receita de bolo?

  • Daí você poderia dizer: pôxa, mas aí eu vou te ensinar tudo! vá pesquisar no google-GUJ, etc.

  • Tudo bem: só que não existe um tutorial de verdade sobre isto -todos eles você tem de fazer adaptações e quem não conhece JBoss não vai conseguir assim tão fácil.

Então, concluindo “quais módulos quero configurar” somente o Spring, pois o resto acho que já vem pronto no JBoss - porém também já fiz isto seguindo vários tutoriais e nenhum deles obtive sucesso.

Na verdade eu só queria um passo-a-passo para realizar essa integração, sem muto trauma.

O passo-a-passo poderia demonstrar a utilização das seguintes tecnologias:

  • JBOSS-7.1
  • HIBERNATE-4
  • SPRING-3.2

…sei lá, começando pela configuração dos módulos e finalizando com o “print” do deploy (o sucesso da configuração).

Tenho certeza que tem muita gente boa ansiosa por algo assim aqui no guj - tem muita pesquisa-muita gente falando sobre isto - tentando mostrar um jeito de se fazer, mas nunca chegam a um resultado positivo. Ninguém consegue dar uma “receita de bolo” que funcione. Acho que o pessoal que sabe fazer está guardando para si…talvez… “quem quiser saber que vá fazer um curso”, algo assim…

Bom… é isso: TUTORIAL PASSO-A-PASSO é a boa pedida, a quem sabe fazer (dá trabalho fazer tutorial - mas aonde é que está o espírito de ajudar o próximo? … rsrs rsrs).

Abcs.

Há um detalhe nisso tudo, o JBoss AS 7.x implementa toda a especificação JEE 6. Isso significa que ele vai trabalhar com o padrão da linguagem.
Você quer DI e IoC? Ele já tem suporte nativo, com uma implementação de CDI.
Ele gerencia transações, conexões a bancos de dados, agendamentos, emails, etc, etc, etc, etc, etc e etc.
Logo, a inexistência de um tutorial Spring + Hibernate + JBoss se deve a isso, afinal, entre o padrão que é nativamente suportado e, teoricamente, mais simples de configurar e um framework de terceiro, eu prefiro o padrão.

Certo, é isso mesmo.

só que o de terceiro está bem maduro e já provou tudo - está consagrado - funciona…
o padrão tá começando agora…

é por isto que gostaria de ver um tutorial com essa trilogia - quem conseguiu isto está de parabéns - está utilizando a coisa que funciona e foi consagrada como eficiente.

abcs

[quote=knik]Certo, é isso mesmo.

só que o de terceiro está bem maduro e já provou tudo - está consagrado - funciona…
o padrão tá começando agora…

é por isto que gostaria de ver um tutorial com essa trilogia - quem conseguiu isto está de parabéns - está utilizando a coisa que funciona e foi consagrada como eficiente.

abcs
[/quote]
Sim, maduro, complexo e complicado de configurar, não é mesmo?

sim… e que funciona!
Não podemos nos esquecer que o CDI surgiu de uma tentativa desesperada de competir com o Spring - até que ponto conseguiram?

[quote=knik]sim… e que funciona!
Não podemos nos esquecer que o CDI surgiu de uma tentativa desesperada de competir com o Spring - até que ponto conseguiram?[/quote]
A questão é que o CDI é infinitamente mais fácil de utilizar.
Assim como o Hibernate foi o pioneiro, não tinha nada mais a provar e, quando o JPA surgiu e foi reformulado (JPA 2), uma grande parte do mercado voltou-se ao padrão, espero que em breve o Spring seja aperfeiçoado para ficar bem melhor.

Enquanto isso não acontece, o desafio foi aceito.
Segue um projeto contendo a configuração funcional do Spring 3.2 + JPA 2 (Hibernate 4 como provider) + JSF 2 + Primefaces + JBoss 7.1.1 (Brontes).
Ele ainda está como resource local e sem gerenciamento automático de transação, mas está funcionando.
Espero, em breve, atualizar isso e colocar com transação auto gerenciada (sem ter que fazer commit ou rollback manual).


Valeu cara - sensacional.
O spring é mesmo difícil e possui uma curva de aprendizado muito alta.

Vou testar aqui a sua ideia e vou tentar aperfeiçoar o gerenciamento das transações. Ficando pronto, posto um tutorial completo aqui.

obrigado pela força.

Olá pessoal,

Há algum tempo não acesso o forum, resolvi dar uma futucada hoje e encontrei este tópico que trata praticamente
com o que estou trabalhando.

Quando comecei a conhecer o Java, não sabia qual direção tomar, em relação ao EJB3 e Spring, olhei muito os dois
e me senti mais a vontade com o EJB (3) e não só isso, achei “melhor” o EclipseLink, no final das contas eu estava trabalhando
com tudo que era da especificação e até este ano estava assim (GlassFish, EJB 3.1, CDI, JSF, JPA, NetBeans), mas já usava
uma pontinha do Spring, no caso o Spring Security (muuuuuuito bom!!! recomendo - são só eu rs)

E nunca deixei de ter aquele peso de não ter aprendido o Spring. Há pouco tempo, resolvi migrar algumas coisas usando Spring,
para ver até onde daria pra ir, então fui com JPA, testei o Spring-Data (é uma mãozinha na roda), Hibernate e EclipseLink, JSF,
testei a integração com CDI, e hoje eu penso o seguinte: APRENDA OS DOIS, pois os dois são muito bons, a configuração do
Spring que já foi um parto, o que me fez ter receio de tentar, este já não existe mais com tanta “violência”, é tranquilo de se fazer,
e uma das vantagens que encontrei no Spring, foi poder rodar no Tomcat (bobeira isso eu sei), mas podendo fazer testes unitários
dos seus serviços de forma transparente e rápida, inclusive sua execução, algo que com o EJB (que gosto!) não é tão simples de se
fazer, tem o Arquillian e tals, mas mesmo assim…

Outro detalhe que demorei a mexer foi o Maven, é realmente ótimo! Vale à pena gastar um pouco de tempo para dar uma atenção
maior.

Acabei de reinstalar o JBoss, vou testar o q tenho pronto migrando para ele e postarei aqui a experiência.

Mas em resumo é isto: Seguir com o padrão é bom (é o que fiz até pouco tempo por muito tempo), tem coisa que sai na frente.
Conhecer o Spring é ótimo, pois tem coisas que após algum tempo vira padrão do outro lado rs, então, se for por gosto, escolha um,
se for por “mercado”, aprenda os dois, pois muitos pedem justamente isso.

Só um ponto de vista! :slight_smile:

Falews!

Fala pessoal,

Acabei de baixar o projeto, espero que vocês não tenham esquecido das promessas!
Gostaria muito de saber se existe algum lugar mágico na internet onde se pode estudar Spring com JBoss da melhor forma possível. Estou utilizando os dois e gostando cada vez mais.

Abraços