HCL Commerce Spring Framework

Spring Framework es un modelo ligero de configuración y programación de código abierto para desarrollar aplicaciones empresariales basadas en Java. Esta infraestructura se utiliza en HCL Commerce para crear y configurar el Management Center, incluida la gestión de peticiones de URL del Management Center para recuperar y procesar datos de objeto.Con el Management Center creado con Spring Framework, que incluye métodos recomendados y patrones de diseño incorporados, los desarrolladores de sitio pueden personalizar el Management Center más fácilmente. Los desarrolladores pueden centrarse más en la programación a nivel de aplicación para satisfacer las necesidades empresariales al personalizar el Management Center y menos en la infraestructura subyacente del Management Center.
Spring Framework es una infraestructura modular para crear aplicaciones empresariales e incluye muchos módulos diferentes. En HCL Commerce, se utilizan los siguientes módulos y capas de Spring Framework para crear el Management Center:
  • La capa de contenedor principal, específicamente los módulos spring-core, spring-beans, spring-context y spring-expression. Los módulos spring-core y spring-beans son las partes fundamentales de Spring Framework. Todos los demás módulos de Spring Framework se construyen sobre estos módulos básicos. Estos módulos proporcionan las características de Inversión de control (IoC), inyección de dependencias y bean Spring de la infraestructura, que se utilizan en HCL Commerce. Spring Framework utiliza el módulo spring-context para acceder a los objetos y añade soporte para la internalización. Este módulo también soporta el uso de características de Java EE, como EJB, dentro de la infraestructura. El módulo spring-expression proporciona el lenguaje de expresión que la infraestructura utiliza para consultar y procesar un objeto bean.
  • La capa web de Spring, específicamente los módulos spring-web y spring-webmvc. El módulo spring-web proporciona las características de integración básicas específicas de web que son necesarias para el Management Center. La infraestructura utiliza este módulo para inicializar el contenedor IoC de Spring. El módulo spring-webmvc, que también se conoce como módulo Spring WebWeb-Servlet, proporciona la infraestructura de Modelo Vista Controlador (MVC) de Spring que HCL Commerce utiliza con el Management Center. El MVC de Spring Framework se puede utilizar con un entorno de servlet o portlet. La infraestructura MVC que se utiliza en HCL Commerce no es para portlet. La infraestructura MVC que se utiliza en HCL Commerce utiliza el servlet asignador de Spring
Un bean Spring es un elemento que se define en un archivo de configuración de Spring Framework. Estas definiciones de bean definen los objetos del Management Center gestionados por el contenedor IoC de Spring Framework. La infraestructura puede crear una instancia de estos objetos bean o destruirlos según sea necesario y utiliza los beans para crear instancias de clase. Las definiciones de bean, que también se denominan configuraciones de controlador en HCL Commerce, incluyen las propiedades y dependencias que Spring Framework utiliza para crear, actualizar y eliminar los objetos bean. Los atributos, las propiedades y las dependencias de cada configuración deben definir la siguiente información para el objeto bean Spring:
  • La clase (aplicación) de controlador asociado a utilizar para recuperar o procesar el objeto bean o una solicitud de URL de servicio del Management Center. Cada bean debe correlacionarse con una clase con el nombre de clase calificado por paquete.
  • El identificador exclusivo para el elemento de bean de configuración de controlador. La infraestructura utiliza este identificador para identificar la configuración. El identificador también correlaciona el objeto bean con una definición de objeto o definición de búsqueda para el objeto o servicio del Management Center.
  • Las propiedades que se deben utilizar para definir cómo la clase de controlador asociada debe procesar la petición de URL y utilizar el objeto bean.
  • Las dependencias que hacen referencia a otros beans o paquetes de recursos que son necesarios para que la clase maneje el objeto bean y la petición de URL.
  • Cualquier otro valor o parámetro de configuración a incluir en el objeto bean.

HCL Commerce utiliza actualmente el release 4.1.7 de Spring Framework. Para obtener más información sobre esta versión de Spring Framework, incluidos los módulos y las capas de infraestructura que se utilizan en HCL Commerce, y los beans Spring, consulte Spring framework 4.1.7 release.

Para obtener más información sobre Spring Framework en general, consulte Spring framework.

Infraestructura de MVC de Spring

La infraestructura de MVC de Spring es una infraestructura controlada por petición que utiliza un servlet de asignador central para manejar las solicitudes de URL del Management Center. Este Spring DispatcherServlet asigna peticiones a las clases de controlador que se identifican en las configuraciones de controlador de definición de bean para recuperar y procesar datos.

La infraestructura MVC de Spring se compone de las partes siguientes:
  • Modelo, que representa el código de negocio o de base de datos; los datos de objeto reales del Management Center. El objeto de modelo es una interfaz de correlación, que la infraestructura transforma en la vista formateada XML esperada por el Management Center. La infraestructura utiliza los fragmentos JSP de serialización adecuados identificados por el controlador para transformar el modelo para crear la vista.
  • Vista, que representa código para diseñar la respuesta formateada por XML del Modelo que se visualiza a los usuarios del Management Center.
  • Controlador, que representa la clase de controlador que recupera o procesa los datos para generar el modelo. El controlador recibe una petición de URL del Management Center y utiliza la configuración de controlador correspondiente para generar el modelo y seleccionar el archivo JSP a utilizar para transformar el modelo en la vista.

Para obtener más información sobre la infraestructura de MVC, consulte Spring MVC framework.

Para obtener más información sobre el servlet de asignador de Spring, consulte Spring class DispatchServlet.

Personalización de las definiciones de Spring Framework del Management Center

Todos los aspectos principales de la aplicación web del Management Center se configuran en los archivos de configuración de Spring Framework. HCL Commerce utiliza varios archivos de definición Spring para configurar Management Center. Se utiliza un archivo de configuración diferente para correlacionar las configuraciones para cada componente del Management Center. Existe también un archivo de configuración de extensión que puede utilizar para definir sus propias correlaciones personalizadas para los objetos personalizados o para alterar las correlaciones existentes en los archivos de configuración proporcionados por HCL Commerce.
  • Se proporciona un archivo spring-ibm-component.xml para cada componente Management Center para definir las correlaparaciones de URL que son necesarias para recuperar y procesar datos para los objetos de componente. Por ejemplo, el archivo spring-ibm-catalog.xml define las correlaciones para el componente de catálogo.
  • Se proporciona un archivo spring-extension.xml para que lo utilice para alterar las correlaciones existentes o para definir correlaciones para objetos y vistas personalizados. No modifique ningún archivo spring-ibm-component.xml. Utilice solo el archivo spring-extension.xml para cambiar o definir correlaciones.
Todos los archivos de configuración de Spring están incluidos en el proyecto LOBTools en entornos de HCL Commerce Developer y en el módulo web LOBTools y otros entornos de HCL Commerce. Cuando está trabajando en la vista de Explorador de empresa en HCL Commerce Developer, puede encontrar estos archivos de configuración en el directorio siguiente:
  • LOBTools > WebContent > WEB-INF

Para obtener más información sobre cómo definir sus propias configuraciones de controlador personalizadas en el archivo de extensión, consulte Personalización de configuraciones de controlador.