Acceso a los ejemplos
El producto ofrece ejemplos que muestran las tareas más habituales de las aplicaciones empresariales. Muchos ejemplos también proporcionan instrucciones para el despliegue y ejemplos de codificación.
Despliegue de los ejemplos utilizando la línea de mandatos
- Inicie sesión en el host utilizando credenciales válidas.
- Vaya al directorio app_server_root/bin.
Vaya al directorio /opt/IBM/WebSphere/AppServer/bin/.
- Ejecute wsadmin para instalar la aplicación; por ejemplo:
./wsadmin.sh -profileName AppSrv01 -lang jython -c "AdminApp.install('/opt/sample.javaee7.websocket.war', '[ -MapWebModToVH [[ .* .* default_host ]] -appname sample.javaee7.websocket]')"
Despliegue de los ejemplos utilizando Integrated Solutions Console
- En el navegador preferido, vaya a Integrated Solutions Console; por ejemplo:
http://hostname:9060/ibm/console/ - Inicie sesión con su nombre de usuario y contraseña.
- Seleccione .
- Seleccione el enlace Nueva solicitud de empresa.
- Utilizando la opción Sistema de archivos local, pulse Examinar y seleccione el archivo que ha descargado de GitHub.
- Pulse Siguiente para seguir el asistente utilizando las opciones predeterminadas hasta que se muestre el botón Finalizar.
- Cuando se muestre la sección Confirmar cambios, pulse Guardar.
- Haga clic en .
- Marque el recuadro de selección situado junto a la aplicación de ejemplo y pulse Iniciar.
- Utilice el navegador para acceder a la página de inicio, por ejemplo:
http://hostname:9080/sample_name/
Ejemplos disponibles
Acceda a las siguientes muestras seleccionadas en GitHub.
- sample.javaee7.websocket
- Estas muestras de web socket en GitHub muestran cómo configurar puntos finales de WebSocket mediante anotaciones o mediante programación. Estos ejemplos muestran cómo abrir, leer, escribir y cerrar una conexión WebSocket. También se muestra el uso de codificadores, decodificadores, la anotación PathParam y el proceso de mensajes Pong.
- sample.javaee7.el30
- Esta aplicación en GitHub muestra cómo utilizar algunas de las nuevas funciones de EL ( 3.0, Lenguaje de expresión). Se proporcionan ejemplos para utilizar expresiones lambda, la concatenación y los nuevos operadores. Además, proporciona un ejemplo simple de un servlet autónomo que muestra EL en uso sin JavaServer Pages (JSP).
- sample.javaee7.servlet.nonblocking
Esta aplicación en GitHub demuestra cómo utilizar E/S sin bloqueo mediante el uso de nuevas API añadidas a ServletInputStream y ServletOutputStream. El ejemplo incluye la utilización de las API de las interfaces ReadListener y WriteListener.
- sample.javaee7.sleepybatchlet
- La muestra de lotes sleepy en GitHub utiliza la implementación de referencia de lotes JSR 352 en el producto. La aplicación consta de un batchlet y un trabajo por lotes que está inactivo durante un número de segundos definido por el usuario. Cada segundo, el batchlet imprime en la consola
para mostrar que está activo. Envuelta en la aplicación por lotes hay una página web que proporciona un mecanismo más fácil e intuitivo para gestionar las ejecuciones por lotes.Este ejemplo requiere que cree recursos antes de desplegar la aplicación. Siga estos pasos para crear los recursos necesarios:
- Verifique que existe una instancia de Proveedor JDBC de Derby. En la consola administrativa, haga clic en .
- Si dicho proveedor no existe, cree uno con un tipo de implementación de Origen de datos de agrupación de conexiones y apunte al archivo .jar de Derby; por ejemplo: ${WAS_INSTALL_ROOT}/derby/lib
- Compruebe que la instancia de Origen de datos predeterminado esté configurada. Haga clic en .
- (Consola administrativa) Si no existe este origen de datos, cree uno con el nombre del Origen de datos predeterminado y el nombre JNDI DefaultDatasource que apunte al Proveedor JDBC de Derby y a la base de datos "${WAS_INSTALL_ROOT}/derby/DefaultDB".
- (Línea de mandatos) Conecte de forma remota la máquina virtual con el entorno de WebSphere mediante SSH. Vaya a ${WAS_INSTALL_ROOT}/derby/bin/embedded/.Ejecute
./ij.sh. Cuando vea el indicadorij>, especifique el mandato siguiente:
La base de datos Derby predeterminada se crea en el siguiente directorio: ${WAS_INSTALL_ROOT}/derby/DefaultDBconnect 'jdbc:derby:DefaultDB;create=true';
- Añada argumentos de JVM al servidor ejecutando el ejemplo por lotes. Haga clic en . Añada las propiedades personalizadas siguientes:
- com.ibm.ws.batch.DB_SCHEMA
- Valor: BATCH
- com.ibm.ws.batch.JNDI_NAME
- Valor: DefaultDatasource
- Después de configurar el entorno, instale la aplicación utilizando los valores predeterminados proporcionados.
- Cuando se inicie la aplicación, abra el archivo SystemOut.log en /.../IBM/WebSphere/Profiles/DefaultAppSrv01/logs/server1 y busque el URL siguiente:
http://hostname:9080/sample.javaee7.sleepybatchlet/.
- Verifique que existe una instancia de Proveedor JDBC de Derby. En la consola administrativa, haga clic en .
- sample.javaee7.concurrency
- Esta aplicación GitHub demuestra cómo utilizar ejecutores gestionados, ejecutores programados gestionados y el servicio de contexto para realizar tareas en paralelo en una aplicación sencilla.
- sample.javaee7.jta
- Esta aplicación GitHub demuestra el uso de anotaciones @Transactional para controlar declarativamente los límites de las transacciones, junto con el uso de la anotación @TransactionScoped para limitar el ciclo de vida de un bean a una transacción.
- sample.javaee7.jsonp
- JSONP sigue la especificación JSR 353. La aplicación en GitHub se compone de cinco servlets que analizan y muestran datos JSON basados en diferentes implementaciones para obtener el código JSON. Una página de interfaz de usuario web proporciona un modo más fácil e intuitivo de probar las funciones JSON-P. Las distintas pruebas en el ejemplo JSONP se basan en objetos JSON especiales que facilitan las prestaciones basadas en JSON, incluida la construcción de estructuras complejas de datos que convierten fácilmente al formato JSON.
- sample.javaee7.jms
- Esta muestra de JMS en GitHub utiliza la API simplificada de JMS 2.0. El ejemplo contiene dos servlets para ejecutar la mensajería de punto a punto y de publicación/suscripción. El servlet JMS proporciona un ejemplo de implementación para enviar o recibir mensajes en una cola y también para publicar y suscribir mensajes de un tema.Antes de desplegar la aplicación debe crear algunos recursos. Puede crear los recursos utilizando los scripts de configuración que se publican con el ejemplo.
- Ejecute el script createSIBusResources.py desde el directorio app_server_root/bin para crear los recursos necesarios. Proporcione los valores de nombre_célula, nombre_nodo y nombre_servidor y la vía de acceso al archivo sample.javaee7.jms.war en el mandato:
./wsadmin.sh -f createSIBusResources.py cell_name node_name server_name path_to_file/sample.javaee7.jms.war - Si la seguridad está habilitada en el servidor, ejecute el script addAuthAlias.py desde el directorio app_server_root/bin. Proporcione su nombre de usuario y contraseña en el mandato:
./wsadmin.sh -f addAuthAlias.py user_name password
- Ejecute el script createSIBusResources.py desde el directorio app_server_root/bin para crear los recursos necesarios. Proporcione los valores de nombre_célula, nombre_nodo y nombre_servidor y la vía de acceso al archivo sample.javaee7.jms.war en el mandato:
Descarga de código de ejemplos
Puede descargar el código fuente de las muestras desde el repositorio GitHub.
También puede descargar muestras desde el servidor de descarga de muestras 8.5 y el servidor de descarga de muestras 8.0. Las descargas contienen código fuente, instrucciones de compilación y archivos compilados implementables, como archivos .ear o .war en los directorios /installableApps.
Limitaciones de los ejemplos
Los ejemplos se proporcionan sólo a efectos ilustrativos.
El código que se proporciona no está diseñado para ejecutarse en un entorno de producción seguro. Los ejemplos dan soporte a Java 2 Security, por lo que implementan el control de acceso basado en políticas que comprueba los permisos en los recursos del sistema protegidos como, por ejemplo, la E/S de los archivos.
Los ejemplos también dan soporte a la seguridad administrativa.
- Muchos de los ejemplos se conectan con una base de datos Apache Derby utilizando la infraestructura incorporada de Apache Derby. La infraestructura incorporada de Apache Derby tiene la limitación de que solo puede acceder una máquina virtual Java (JVM) a una instancia de base de datos. Por tanto, en un entorno de servidor de aplicaciones en clúster, el segundo servidor del nodo da un error al intentar iniciar las aplicaciones de ejemplo, porque el primer servidor
(JVM) ya tiene una conexión con esa instancia de base de datos.
En aquellas aplicaciones que requieran varias JVM para acceder a la misma instancia de Apache Derby, utilice la infraestructura Network Server de Apache Derby.
Más ejemplos
- Ejemplos en las guías de aprendizaje
- Muchas guías de aprendizaje del producto se basan en código de ejemplo. Para encontrar tutoriales que muestren tecnologías específicas, navegue por los enlaces en Tutoriales.
- Ejemplos en la documentación del producto
- La documentación del producto contiene muchos fragmentos de código y ejemplos. Para localizar fácilmente estos ejemplos, consulte los ejemplos para desarrolladores en la sección Referencia de la navegación de la documentación de IBM correspondiente a la edición del producto que esté utilizando.
IBM Telephone Directory
La aplicación empresarial IBM Telephone Directory no se proporciona junto con el producto. Para obtener información sobre cómo obtener y utilizar la aplicación de directorio telefónico de IBM, consulte IBM Telephone Directory V5.2 en el tema sobre comercio electrónico y servicios web en la documentación del producto IBM i.