/** * @return true if the EJB reference is a 30 client view */ public boolean isEJB30ClientView() { return (getHomeClassName() == null); }
/** * @return true if the EJB reference is a 30 client view */ @Override public boolean isEJB30ClientView() { return (getHomeClassName() == null); }
/** * Gets the home classname of the referee EJB. * @return the class name of the EJB home. */ public String getEjbHomeInterface() { return getHomeClassName(); }
/** * Gets the home classname of the referee EJB. * @return the class name of the EJB home. */ @Override public String getEjbHomeInterface() { return getHomeClassName(); }
Class beanInterface) { if (ejbRef.getHomeClassName() != null) return;
Class beanInterface) { if (ejbRef.getHomeClassName() != null) return;
private String getRemoteEjbJndiName(EjbReferenceDescriptor refDesc) { String intf = refDesc.isEJB30ClientView() ? refDesc.getEjbInterface() : refDesc.getHomeClassName(); return getRemoteEjbJndiName(refDesc.isEJB30ClientView(), intf, refDesc.getJndiName()); }
/** * Actual jndi-name under which Remote ejb factory lives depends on * whether it's a Remote Home view or Remote Business view. This is * necessary since a single session bean can expose both views and * the resulting factory objects are different. These semantics are * not exposed to the developer-view to keep things simpler. The * developer can simply deal with a single physical jndi-name. If the * target bean exposes both a Remote Home view and a Remote Business * view, the developer can still use the single physical jndi-name * to resolve remote ejb-refs, and we will handle the distinction * internally. Of course, this is based on the assumption that the * internal name is generated in a way that will not clash with a * separate top-level physical jndi-name chosen by the developer. * * Note that it's better to delay this final jndi name translation as * much as possible and do it right before the NamingManager lookup, * as opposed to changing the jndi-name within the descriptor objects * themselves. This way, the extra indirection will not be exposed * if the descriptors are written out and they won't complicate any * jndi-name equality logic. * */ public static String getRemoteEjbJndiName(EjbReferenceDescriptor refDesc) { String intf = refDesc.isEJB30ClientView() ? refDesc.getEjbInterface() : refDesc.getHomeClassName(); return getRemoteEjbJndiName(refDesc.isEJB30ClientView(), intf, refDesc.getJndiName()); }
/** * Actual jndi-name under which Remote ejb factory lives depends on * whether it's a Remote Home view or Remote Business view. This is * necessary since a single session bean can expose both views and * the resulting factory objects are different. These semantics are * not exposed to the developer-view to keep things simpler. The * developer can simply deal with a single physical jndi-name. If the * target bean exposes both a Remote Home view and a Remote Business * view, the developer can still use the single physical jndi-name * to resolve remote ejb-refs, and we will handle the distinction * internally. Of course, this is based on the assumption that the * internal name is generated in a way that will not clash with a * separate top-level physical jndi-name chosen by the developer. * * Note that it's better to delay this final jndi name translation as * much as possible and do it right before the NamingManager lookup, * as opposed to changing the jndi-name within the descriptor objects * themselves. This way, the extra indirection will not be exposed * if the descriptors are written out and they won't complicate any * jndi-name equality logic. * */ public static String getRemoteEjbJndiName(EjbReferenceDescriptor refDesc) { String intf = refDesc.isEJB30ClientView() ? refDesc.getEjbInterface() : refDesc.getHomeClassName(); return getRemoteEjbJndiName(refDesc.isEJB30ClientView(), intf, refDesc.getJndiName()); }
ejbRefDesc.getEjbInterface() : ejbRefDesc.getHomeClassName(); origClassLoader.loadClass(refInterface);
ejbRefDesc.getEjbInterface() : ejbRefDesc.getHomeClassName(); origClassLoader.loadClass(refInterface);