Pergunta

Foi o meu entendimento de que JBossAS 5.x suportado injeção de feijão EJB3 em servlets com a anotação @ EJB3. Eu estou usando a configuração padrão para JBossAS 5.0.1.GA e ele não está funcionando. Eu adicionei o argumento mappedName para a anotação @ EJB com o nome JNDI beans de sessão, e ele simplesmente não fazer nada. Sem erros aparentes, o feijão é apenas nunca injetado.

Os beans de sessão estão no ejb-jar, os servlets em uma guerra, tudo é embalado em uma orelha. consultas JNDI manuais funcionar muito bem. Alguma idéia?

Foi útil?

Solução

Isso pode acontecer se os seus pontos web.xml para uma versão mais antiga do spec. Idealmente, deve ser algo como

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
         xmlns="http://java.sun.com/xml/ns/j2ee" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd">

Este ligar pode ajudar um pouco também.

Outras dicas

Você também deve verificar o arquivo jar necessários para a implantação EJB3 no arquivo classpath.JAr é jboss-ejb3-ext-api.jar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top