Hello,

My EJB is like:
@Local
@Stateless(mappedName = "CodeDao")
public class I18nCodeDao extends Dao<I18nCodeDto> {
  static  Logger  logger  = LoggerFactory.getLogger(I18nCodeDao.class);

@PersistenceContext(unitName="doos", type=PersistenceContextType.TRANSACTION)
  private EntityManager em;

  public I18nCodeDao() {
    super(I18nCodeDto.class);
  }

  @Override
  public String getApplicationName() {
    return DoosBase.APPLICATION_NAME;
  }

  @Override
  protected EntityManager getEntityManager() {
    return em;
  }

  @Override
  public Logger getLogger() {
    return logger;
  }
}

The Dao class is an abstract class defined as public abstract class Dao<T extends Dto>

The I18nCodeDao is used as:

@Local
@Stateless(name="I18nCodeManager")
public class I18nCodeManager {
  @EJB
  private I18nCodeDao       i18nCodeDao;

So for me this all looks quite simple and straight forward. I use no XML for this part. Only for JSF (faces-config.xml) and sun-web.xml with (unused) security role mapping.

Regards,

Marco

Op 03-06-12 17:58, Romain Manni-Bucau schreef:
Hi,

Can you share some code?

Tomee supports ejb 3.1

Romain
Le 3 juin 2012 16:16, "Marco de Booij"<mdeb...@scarlet.be>  a écrit :

Hello,

Nearly 2 years ago I tried OpenEJB. I wanted to use it with Tomcat. It was
not such a big success for me :-( Lack of knowledge from my side. I went to
Glassfish and there I managed to get an application running. I used EJB3.1
so I could pack the whole application in a single WAR and did not need to
create any interface for my beans. The application works.

Glassfish is nice (Beautiful console) but it is not really free. Oracle is
visible everywhere and openJDK is not supported.

To free myself from Oracle I decided to replace MySQL by Postgres and
Glassfish by Geronimo. But then Tomee Plus came to my attention and I
decided to use this. I installed it and created a Tomee Plus server in
Eclipse. When I deploy my application I get the following error message for
each EJB:
    Ambiguous @Local() usage on bean class.  Must list interfaces
explicitly in annotation.

Also my beans cannot be found (WARNING: Unresolved ejb reference
"java:comp/env/...). To me it looks like Tomee does not expect EJB 3.1. Do
I need to configure somewhere that I want to use EJB 3.1 or doesn't Tomee
accept EJB 3.1 yet.

I searched for a few days on how to fix it but I am a bad searcher or my
limited knowledge is the problem. Can somebody help me out? It works on
Glassfish so it must be a configuration problem.

Regards,

Marco



Reply via email to