Estructura de repositorio para la creación de paquetes de tiendas remotas (crs)

Para configurar las propiedades de compilación para un paquete de servidor de tienda, build-buildtype-crs.properties, tenga en cuenta las siguientes configuraciones relevantes que necesita completar. Los valores de los siguientes pares nombre-valor son las carpetas del espacio de trabajo.

  • web.module.list=crs-web
  • java.module.list=crs-extensions-logic Este proyecto se utiliza para personalizar el código Java para la tienda crs-web.
Basándose en estas propiedades, la tabla siguiente ilustra lo que se empaqueta en el archivo ZIP de salida cuando se crea para el servidor de tienda.

Empaquetar carpetas y contenido para un paquete de servidor de tienda.

El proceso de compilación toma estas carpetas del espacio de trabajo Paquetes a estas carpetas en el archivo ZIP de salida Descripción:
crs-web/ Code/crs-app/crs-web.war:/
  • El punto de extensión predeterminado para la tienda remota basándose en la imagen de Docker de tienda predeterminada.
  • Archivos de contenido web para el módulo web.
crs-extensions-logic Code/crs-app/lib/crs-extensions-logic.jar
  • El punto de extensión predeterminado para la tienda remota que se basa en la imagen de Docker de tienda predeterminada.
  • Cree un proyecto de programa de utilidad Java en el servidor de tienda para mantener el código de personalización de Java, como una biblioteca de etiquetas JSTL, ServletFilter, Listener o Spring MVC.
  • Este proyecto puede contener recursos personalizados de forma similar al servidor de transacciones y al servidor de búsqueda.
crs-alias-proxy-web.war Code/crs-app/crs-alias-proxy-web.war
  • (Opcional) no es necesario cambiar de forma predeterminada. Servlet y configuración del archivo proxy de alias de tienda para servir archivos estáticos como imágenes y archivo CSS, etc.
crs-preview-web.war Code/crs-app/crs-preview-web.war
  • (Opcional) Esta carpeta incluye archivos de configuración y servlet de vista previa de la tienda para servir la vista previa de la tienda Management Center. De forma predeterminada, no es necesario cambiar estos archivos.
Jar files Code/crs-app/lib/*.jar
  • (Opcional) Esta carpeta incluye todos los archivos JAR dependientes. De forma predeterminada, no es necesario cambiar estos archivos.
META-INF Code/crs-app/META-INF
  • (Opcional) Application.xml. Esta carpeta contiene todos los módulos web y la raíz de contexto.
  • Problemas conocidos: El archivo no está empaquetado por la herramienta de compilación de HCL Commerce. Debe colocar los archivos dentro de esta carpeta manualmente si necesita cambiar los archivos dentro de la carpeta.
properties Code/crs-app/properties
  • Los mensajes de error de la aplicación y los mensajes de error del servidor de tienda se almacenan en estos archivos.
xml Code/crs-app/xml
  • Los archivos de configuración de política de enmascaramiento de atributos y configuración de tienda remota se almacenan aquí.
crs-web/src/ Code/crs-app/crs-web.war:/WEB-INF/classes/
  • Clases Java personalizadas para el módulo web.
crs-web/WebContent/META-INF/ Code/crs-app/crs-web.war:/META-INF/
  • Archivos metainfo.
crs-web/WebContent/WEB-INF/ Code/crs-app/crs-web.war:/WEB-INF/
  • Archivos info web.
Certs/crs-app
  • Esta carpeta no existe en el paquete predeterminado de la tienda de compilación de HCL Commerce. El proceso de compilación y despliegue está diseñado para dar soporte al uso de la carpeta como una interfaz para sus extensiones.
  • Si desea importar sus propios certificados, debe implementar la lógica de compilación de HCL Commerce para crear esta carpeta e incluir el archivo JSON de certificado en esta carpeta dentro de un paquete de tienda de WebSphere Commerce Build. Para obtener más información, consulte Gestionar certificados.
DeployScripts/crs-app
  • Al igual que la carpeta Certs, la carpeta DeployScripts no existe en el paquete predeterminado de la tienda de compilación de HCl Commerce. El proceso de compilación y despliegue está diseñado para dar soporte al uso de la carpeta como un punto de extensión potencial para personalizar el proceso de despliegue.
  • Si desea ampliar el proceso de despliegue predeterrminado con su propia lógica personalizada, necesita implementar la lógica de compilación de HCL Commerce para crear la carpeta y colocar los scripts de shell personalizados dentro de la misma. Los scripts de Shell personalizados dentro de la carpeta deben tener el nombre de applyDeployScripts.sh
  • La lógica predeterminada para aplicar cambios detecta si hay algún script applyDeployScripts.sh dentro de la carpeta. Si se encuentran, los scripts se ejecutan para procesar cualquier lógica de despliegue personalizado. La lógica predeterminada para aplicar cambios se define dentro del archivo /SETUP/bin/applyCustomization.sh como referencia.

Estructura de paquete de despliegue de servidor de tienda

La estructura de archivos siguiente muestra la estructura de paquete generada para un paquete de tienda remota (crs) después de que la herramienta de compilación de HCl Commerce complete la creación del paquete.

¦
+---Code
¦   +---crs-app The default deployment process handles the following three types of WAR files within the crs-app folder.)
¦       ¦   crs-alias-proxy-web.war
¦       ¦   crs-preview-web.war
¦       ¦   crs-web.war  
¦       ¦
¦       +---lib (The default deployment process copies all files under the lib folder to the crs.ear/lib directory.) 
¦       ¦   ¦   aopalliance-1.0.jar
¦       ¦   ¦   cf-wcf.jar
¦       ¦   ¦   commons-codec-1.6.jar
¦       ¦   ¦   commons-configuration-1.8.jar
¦       ¦   ¦   commons-io-2.1.jar
¦       ¦   ¦   commons-lang-2.6.jar
¦       ¦   ¦   commons-lang3-3.3.2.jar
¦       ¦   ¦   commons-logging-1.2.jar
¦       ¦   ¦   crs-extensions-logic.jar
¦       ¦   ¦   crs-store-publish-jianing.jar
¦       ¦   ¦   crs-store-publish.jar
¦       ¦   ¦   crs-web-taglibs.jar
¦       ¦   ¦   .....
¦       ¦   ¦   zookeeper-3.4.12.jar
¦       ¦
¦       +---META-INF (The default deployment process copies all files under the META-INF folder to the crs.ear/META-INF directory.)  
¦       ¦       MANIFEST.MF
¦       ¦       application.xml
¦       ¦
¦       +---properties (The default deployment process copies all files under the properties folder to the crs.ear/properties directory.) 
¦       ¦   ¦   GenericApplicationError.properties
¦       ¦   ¦   GenericApplicationError_ar_EG.properties
¦       ¦   ¦   GenericApplicationError_de_DE.properties
¦       ¦   ¦   ......properties
¦       ¦   ¦   GenericApplicationError_ru_RU.properties
¦       ¦   ¦   GenericApplicationError_tr_TR.properties
¦       ¦   ¦   GenericApplicationError_zh_CN.properties
¦       ¦   ¦   GenericApplicationError_zh_TW.properties
¦       ¦   ¦   GenericSystemError.properties
¦       ¦   ¦   GenericSystemError_ar_EG.properties
¦       ¦   ¦   ......properties
¦       ¦   ¦   GenericSystemError_zh_CN.properties
¦       ¦   ¦   GenericSystemError_zh_TW.properties
¦       ¦   ¦   log4j.properties
¦       ¦   ¦
¦       ¦   +---com
¦       ¦       +---ibm
¦       ¦           +---commerce
¦       ¦               +---ras
¦       ¦                   +---properties
¦       ¦                           ecServerMessages.properties
¦       ¦                           ecServerMessages_ar_EG.properties
¦       ¦                           ......properties
¦       ¦                           ecServerMessages_zh_TW.properties
¦       ¦
¦       +---xml (The default deployment process copies all files under the xml folder to the crs.ear/xml directory.)
¦           +---config
¦           ¦   ¦   denyList.xml
¦           ¦   ¦   wc-attribute-masking.xml
¦           ¦   ¦   wc-store.xml
¦           ¦   ¦
¦           ¦   +---com.ibm.commerce.store
¦           ¦   ¦       store-rest-group.xml
¦           ¦   ¦
¦           ¦   +---xsd
¦           ¦           wc-alias-config.xsd
¦           ¦           wc-seo-url-pattern.xsd
¦           ¦
¦           +---mapper
¦                   SEOUrlMapper.xml
¦
+---Certs (You can add this folder on demand.)
¦   +---crs-app

+---DeployScripts (You can add this folder on demand.)
    +---crs-app
            applyDeployScripts.sh

HCL Commerce ahora da soporte a la gestión de archivos personalizados dentro de todas las carpetas predeterminadas de un paquete de tienda (crs) remoto, como indica en la estructura de depósito anterior. Este soporte le proporciona más posibilidades para aplicar lógica personalizada al servidor de tienda.

Para las carpetas Certs y DeployScripts, ambas carpetas están reservadas en el código predeterminado para aplicar la lógica de personalización que se utilizará para las extensiones. El código predeterminado para aplicar la lógica se incluye en el archivo /SETUP/bin/applyCustomization.sh. Los scripts de la herramienta de compilación de HCL Commerce no generan estas carpetas de forma predeterminada. Necesita personalizar los scripts para configurar la herramienta para generar y empaquetar estas dos carpetas.

Si los entornos no se actualizan al nivel de paquete de actualización 9.0.1.3 o 9.0.0.12, la lógica proporcionada de forma predeterminada maneja un punto de extensión, el archivador crs-web.war. Si necesita aplicar archivos de personalización, debe personalizar la carpeta DeployScripts para añadir la lógica personalizada para aplicar los archivos.