Como manipular un EJB
    
		    Hola que tal me gustaria sabe como manipular un EJB CMP, que tengo en lo que es la creacion y la recuperacion.
	    
    
		    Hola!!!!!!!
Q sea CMP o BMP no hace mucha diferencia en el tratamiento... La idea es q a uno lo maneja el contenedor (o application server tipo WAS, JBOSS, BEA, Sun .. ) .
Bueno, yendo al caso, lo ideal seria q lo levantes de un Session Bean (Stateless session bean es mas performante!!) via JNDI. Te recomiendo q te hagas un Factory para esto. Ahi te va un ejemplo:
Este metodo deberia ir en un Factory llamado ServiceLocator.java
/**
* will get the ejb Local home factory.
* clients need to cast to the type of EJBHome they desire
*
* @return the Local EJB Home corresponding to the homeName
*/
public EJBLocalHome getLocalHome(String jndiHomeName) throws ServiceLocatorException {
EJBLocalHome home = null;
try {
home = (EJBLocalHome) ic.lookup(jndiHomeName);
} catch (NamingException ne) {
throw new ServiceLocatorException("nombre jndi: "+jndiHomeName+ " aca:"+ne);
} catch (Exception e) {
throw new ServiceLocatorException("o aca:"+e);
}
return home;
}
Luego, desde un Session Bean:
Dyt_acq_cem_ftamLocalHome poLocalHome = null;
try {
ServiceLocator serviceLocator = new ServiceLocator();
poLocalHome = (Dyt_acq_cem_ftamLocalHome) serviceLocator.getLocalHome("Dyt_acq_cem_ftamLocal");
} catch(ServiceLocatorException se) {
try {
TecoLogger log=null;
log=TecoLogger.getLogger(this.getClass());
log.error("ejbCreate()-> ", se.toString());
} catch (TecoLoggerException e2) {
e2.printStackTrace();
}
}
Luego, lo manejas normalmente...
Salu2!!!!!!!!!!!!!1
    Q sea CMP o BMP no hace mucha diferencia en el tratamiento... La idea es q a uno lo maneja el contenedor (o application server tipo WAS, JBOSS, BEA, Sun .. ) .
Bueno, yendo al caso, lo ideal seria q lo levantes de un Session Bean (Stateless session bean es mas performante!!) via JNDI. Te recomiendo q te hagas un Factory para esto. Ahi te va un ejemplo:
Este metodo deberia ir en un Factory llamado ServiceLocator.java
/**
* will get the ejb Local home factory.
* clients need to cast to the type of EJBHome they desire
*
* @return the Local EJB Home corresponding to the homeName
*/
public EJBLocalHome getLocalHome(String jndiHomeName) throws ServiceLocatorException {
EJBLocalHome home = null;
try {
home = (EJBLocalHome) ic.lookup(jndiHomeName);
} catch (NamingException ne) {
throw new ServiceLocatorException("nombre jndi: "+jndiHomeName+ " aca:"+ne);
} catch (Exception e) {
throw new ServiceLocatorException("o aca:"+e);
}
return home;
}
Luego, desde un Session Bean:
Dyt_acq_cem_ftamLocalHome poLocalHome = null;
try {
ServiceLocator serviceLocator = new ServiceLocator();
poLocalHome = (Dyt_acq_cem_ftamLocalHome) serviceLocator.getLocalHome("Dyt_acq_cem_ftamLocal");
} catch(ServiceLocatorException se) {
try {
TecoLogger log=null;
log=TecoLogger.getLogger(this.getClass());
log.error("ejbCreate()-> ", se.toString());
} catch (TecoLoggerException e2) {
e2.printStackTrace();
}
}
Luego, lo manejas normalmente...
Salu2!!!!!!!!!!!!!1
