A method and object-oriented computing system in which a Java.TM.
implementation of a service is provided dynamically at runtime via a
Java.TM. interface for the service in accordance with the needs of a
client computer in one of two varieties: an Enterprise Java Beans.TM.
(EJB) implementation or, alternatively, a non-EJB implementation. Thus,
the same service is accessible, without requiring any programming code
changes, to both clients operating in an EJB environment and clients
operating in a non-EJB environment. The client accesses the service
through two non-EJB interfaces, one for the service (object or bean)
itself, and the other for an abstract factory class. Both of these client
interfaces are non-EJB to avoid dependence upon client access to EJB
packages, which may exist for some clients and not for others. These
interfaces operate at runtime to provide a non-EJB implementation for the
service in the event the client accessing the service is not operating in
an EJB environment and, alternatively, to provide an EJB implementation
for the service in the event that the client accessing the service is
operating in an EJB environment.
Un método y un sistema de cálculo orientado al objeto en los cuales un Java.TM. la puesta en práctica de un servicio se proporciona dinámicamente en el tiempo de pasada vía un interfaz de Java.TM. para el servicio de acuerdo con las necesidades de una computadora del cliente en una de dos variedades: una empresa Java Beans.TM. puesta en práctica (EJB) o, alternativomente, una puesta en práctica del non-EJB. Así, el mismo servicio es accesible, sin requerir ningunos cambios de programación del código, a los clientes que funcionan en un ambiente de EJB y a los clientes que funcionan en un ambiente del non-EJB. El cliente tiene acceso al servicio a través de dos interfaces del non-EJB, uno para el servicio (objeto o haba) sí mismo, y el otro para una clase abstracta de la fábrica. Both.of.these interfaces del cliente son non-EJB para evitar dependencia sobre el acceso del cliente a los paquetes de EJB, que pueden existir para algunos clientes y no para otros. Estos interfaces funcionan en el tiempo de pasada para proporcionar una puesta en práctica del non-EJB para el servicio en el acontecimiento que el cliente que tiene acceso al servicio no está funcionando en un ambiente de EJB y, alternativomente, para proporcionar una puesta en práctica de EJB para el servicio en caso que el cliente que tiene acceso al servicio esté funcionando en un ambiente de EJB.