HCL Commerce código useBean

La etiqueta useBean crea una instancia de bean de datos de HCL Commerce y la llena de forma automática. En las tiendas de inicial actuales ya se utiliza la nueva directriz de programación con la biblioteca JSTL (JavaServer Pages Standard Tag Library) que permite ejecutar lógica de vista en lugar de código Java. Al mismo tiempo, la lógica de negocio se ha trasladado a los beans de datos. La combinación de estos pasos le permite utilizar menos código Java en una página JSP.

El código useBean toma los atributos siguientes:

id
Se necesita: El ID que tendrá el nuevo bean. Este ID debe ser un identificador Java válido y debe ser exclusivo ya que se utilizará para crear una nueva variable de script para la página JSP. El ID también debe ser exclusivo de una página.
classname
Se necesita: La clase del bean de datos del que se creará una instancia.
scope
El ámbito en el que debe almacenarse el bean, por ejemplo, como página, petición, sesión y aplicación. El ámbito predeterminado es la página.

Para poder utilizar la nueva biblioteca de códigos de useBean, es necesario indicar a la página JSP cómo debe localizar el código. Para poder localizar y utilizar el código nuevo, se debe colocar la línea siguiente en la parte superior del archivo JSP:


<%@ taglib uri="http://commerce.ibm.com/base" prefix="wcbase"
%>

Esta línea hará que la etiqueta useBean esté disponible para la página JSP cuyo prefijo sea wcbase.

Los siguientes son ejemplos de cómo utilizar el código useBean:

  • Se crea un OrderDataBean nuevo al que se puede acceder desde la página JSP como orderBean.

    <wcbase:useBean
id="orderBean"classname="com.ibm.commerce.order.beans.OrderDataBean"scope="page"/>
  • Se crea un OrderDataBean nuevo al que se puede acceder desde la página JSP como orderBean. En este caso, el código useBean tiene un texto. Dentro de la etiqueta de texto del bean, se utiliza c:set para establecer las propiedades de OrderDataBean.
    
    <wcbase:useBean id="orderBean" 
      classname="com.ibm.commerce.order.beans.OrderDataBean"
    scope="page">    
      <c:set value="${orderId[0]}" target="${orderBean}"
    property="orderId"/>
    </wcbase:useBean>