Beruflich Dokumente
Kultur Dokumente
Construir una aplicación Web con JDeveloper 11 g Uso de EJB, JPA y Java
Server Faces
Propósito
En este tutorial, se utiliza Oracle JDeveloper 11g Versión 11.1.1.2.0 para construir una aplicación web. Para construir el modelo de
datos, se utiliza el diagramador EJB, utilizando EJB 3.0 y Java Persistence API (JPA). Para el cliente Web, Java Server Faces (JSF)
se utiliza. Una página maestro-detalle, una consulta o editar página y una página de búsqueda se incluyen en la interfaz de usuario.
Temas
Información general
Escenario
Requisitos previos
Creación de una conexión de base de datos
Creando el modelo de datos usando EJB 3.0
Crear un nuevo proyecto para la interfaz de usuario
Crear el flujo de la página
Creación de una página JSF Detalle-Master
Creación de una consulta de la página
Creación de una página de búsqueda
Ejecución de las páginas JSF
Resumen
Visualización de Imágenes
Coloque el cursor sobre este icono para cargar y ver todas las capturas de pantalla de este tutorial. (Advertencia:
Esta acción cargas de todas las capturas al mismo tiempo, por lo que el tiempo de respuesta puede ser lento
dependiendo de su conexión a Internet.)
Nota: Como alternativa, puede colocar el cursor sobre un icono individual en los siguientes pasos para cargar y ver sólo la captura
de pantalla asociados a ese paso. Puede ocultar una pantalla individual haciendo clic en él.
Información general
La aplicación refleja la arquitectura Model-View-Controller. El modelo es proporcionada por los componentes EJB, mientras que la
vista y el controlador son proporcionados por JavaServer Faces.You utilizar el ADF Faces conjunto de componentes JSF compatible
con la construcción de una interfaz web más ricos.
En primer lugar, construir la parte del modelo de datos de la aplicación. El Java Persistence API (JPA) proporciona un modelo de
persistencia POJO de mapeo objeto-relacional. El Java Persistence API fue desarrollado por el grupo de expertos de EJB 3.0 de
software como parte de JSR 220, pero su uso no se limita a EJB componentes de software. También puede ser utilizado
directamente por las aplicaciones web y clientes de aplicaciones, e incluso fuera de la plataforma Java EE, por ejemplo, en
aplicaciones Java SE.
Enterprise JavaBeans (EJB) es el lado de los componentes de la arquitectura de servidor para Java Platform, Enterprise Edition
(Java EE), que encapsula la lógica empresarial. EJB permite y simplifica el desarrollo rápido de, transaccionales, seguros y
portátiles aplicaciones distribuidas basadas en tecnología Java.
El Java Persistence API es el API estándar para la gestión de persistencia y mapeo objeto / relacional. Proporciona un objeto o
instalación de mapeo relacional para los desarrolladores de aplicaciones con un modelo de dominio de Java para manejar una base
de datos relacional. El Java Persistence API es parte de la plataforma Java EE. También se puede utilizar en entornos Java SE.
En el tutorial, se implementa un modelo de persistencia de sesión en desarrollo y los beans de entidad. Estos granos de utilizar el
anotaciones EJB 3.0 y JPA para la persistencia del modelo.
EJB 3.0 entidades representan datos persistentes a partir de la base de datos, como una fila de una tabla de clientes o de
un registro de empleado en una tabla de empleados. Las entidades también se puede compartir entre varios clientes. Se
utiliza la API del administrador de la entidad para crear, actualizar, eliminar y consultar el modelo de persistencia.
Los beans de sesión realizar una tarea distinta, disociada como la verificación de historial de crédito para un cliente.
A continuación, crear un formulario principal-detalle para ver la información Departamentos y Empleados. A raíz de esta creación de
base principal-detalle la página, se crea una página de consulta para buscar un empleado en particular, y luego editar el expediente
del empleado. También se crea una página de búsqueda para buscar un departamento en particular.
Si bien el desarrollo y prueba la aplicación, el uso encajado JDeveloper de servidor de aplicaciones Java EE.
Escenario
Puede crear objetos de persistencia para los departamentos y las tablas de EMPLEADOS. La persistencia de los objetos se
implementan como beans de entidad. comprador por defecto y los métodos setter son creados para los empleados y los datos del
departamento. Estos métodos se implementan como parte de un bean de sesión. Entonces se crea un Maestro-Detalle página JSF
basada en departamentos y empleados relacionados, una consulta o editar la página JSF permitiendo una búsqueda y actualización
de los datos de un empleado y una página de búsqueda que permite la entrada de los criterios de búsqueda para encontrar un
departamento en particular.
Requisitos previos
1. Tener acceso a, o ha instalado Oracle JDeveloper 11 g versión 11.1.1.2.0. Puede descargarlo gratuitamente desde
Oracle Technology Network .
2. Tienen acceso o tienen instalado el Oracle muestra esquemas, incluido con el Oracle 10g u Oracle 11 g de base de
datos.
El tutorial utiliza el esquema de recursos humanos. En concreto, las páginas de trabajo con los departamentos y las
tablas de EMPLEADOS.
Las instrucciones para instalar el esquema de recursos humanos y la creación de una conexión a ella en JDeveloper
están disponibles en línea en:
http://www.oracle.com/technology/obe/obe11jdev/11/common/connection11g.htm
3. Inicio JDeveloper, seleccione Inicio> Programas> Oracle Fusion Middleware> Estudio JDeveloper 11.1.1.2.0
Java Database Connectivity (JDBC) es una API estándar que se utiliza para la conexión de una aplicación Java a bases de datos
relacionales. JDeveloper utiliza un navegador con mantener la información de conexión para su aplicación. El navegador de
conexión hace que sea fácil de crear, administrar y tomas de base de datos.
Si aún no lo ha establecido una conexión con la base de datos, a continuación, hacerlo mediante la realización de los siguientes
pasos:
1. Haga clic en la pestaña Navigator base de datos en el Navegador de aplicaciones. Si la ficha Explorador de base
de datos no está visible, elija Ver> Base de datos> Base de datos Navigator en el menú principal JDeveloper.
2. Haga clic en el nodo de conexiones IDE y seleccione Nueva conexión en el menú contextual.
3. En el cuadro de diálogo Crear conexión de base de datos, en la primera sección ingrese los siguientes valores:
Conductor delgado
Nombre de host localhost
JDBC Puerto 1521
Elija la solución que se aplica mejor a su entorno, completando una de las dos líneas siguientes:
SID ORCL
Nombre del servicio XE
Si la base de datos está disponible y los detalles de la conexión es correcta, verá la palabra éxito! Que aparecen
en la ventana de estado.
Si se produce un error, compruebe los ajustes de conexión, realice los cambios necesarios, y vuelva a probar la
conexión.
Usted acaba de crear una conexión a la base de datos que proporcionará datos para la aplicación a construir en
este tutorial.
El modelo de datos proporciona acceso a los datos y la validación de una aplicación. Los datos siempre es validado por el modelo,
independientemente de la aplicación cliente. Esto separa limpiamente las reglas de validación y de negocios de la interfaz de
usuario.
En los próximos pasos, se crea una aplicación en JDeveloper y crear un modelo de datos para su aplicación.
En JDeveloper, siempre trabajar con proyectos que figuran en la solicitud. La aplicación es el punto más alto de la estructura de
control.
Un proyecto JDeveloper es una estructura de organización para agrupar lógicamente los archivos relacionados Usted puede
agregar varios proyectos a la aplicación para organizar, acceder, modificar y reutilizar el código fuente. En el Navegador de
aplicaciones, los proyectos se muestran como el segundo nivel en la jerarquía, en virtud de la aplicación.
Se considera las mejores prácticas para utilizar los proyectos para separar el código del modelo del código escrito para la vista. En
este tutorial, se crea un proyecto para el modelo de componentes EJB, y posteriormente una segunda para los puntos de vista JSF.
Antes de crear los componentes, primero debe crear una aplicación y proyecto. Para ello, siga estos pasos:
2. En el cuadro de diálogo Crear aplicación, escriba el nombre de la aplicación HR_EJB_JPA_App. Tenga en cuenta
que al entrar en el nombre de la aplicación, los cambios de nombre de la guía de forma automática.
Seleccione las aplicaciones genéricas de la plantilla de la lista de aplicaciones. Esto crea una aplicación y un
único proyecto no configurado.
3. En el cuadro de diálogo Crear proyecto, nombre del proyecto conjunto de EJBModel continuación, haga clic en
Finalizar.
5. Seleccione la conexión HRConn en la lista de las conexiones IDE y arrastrarlo y soltarlo en el interior del nodo
HR_EJB_JPA_App para que la conexión esté disponible para su aplicación.
6. Haga clic en la ficha Navegador de Aplicaciones. Usted ve la aplicación y el proyecto que acaba de crear.
Volver al tema
En esta sección del tutorial, se crea el modelo de persistencia para los departamentos y empleados con EJB 3.0 beans de entidad.
Para crear EJB 3.0 beans de entidad, realice los pasos siguientes:
1. En el Navegador de aplicaciones, haga clic en el nodo EJBModel y seleccione Nuevo en el menú contextual.
2. En la galería de Nueva seleccione la ficha Todas las tecnologías, a continuación, seleccione la capa de negocio |
EJB como la categoría y haga doble clic en las Entidades de las Tablas elemento.
3. En Seleccione la versión de EJB, seleccione EJB 3.0 - Entidades APP que la versión de EJB, a continuación, en
Siguiente.
5. En la página Tipo de conexión de elegir la opción de base de datos de conexión en línea. A continuación, haga clic
en Siguiente.
6. En la conexión de base de datos de información de página, seleccione HRConn como la conexión con su uso.
7. Haga clic en Query para recuperar los objetos disponibles para el esquema de recursos humanos. A continuación,
seleccione los departamentos y empleados de transporte y la selección en el panel seleccionado usando el botón
flecha hacia la derecha .
9. En el Navegador de una aplicación java se crea para los departamentos y uno de los empleados.
10.
Haga clic en el Guardar todo icono para guardar su trabajo.
12. En la galería de Nueva seleccione la capa de negocio | EJB como la categoría y haga doble clic en Diagrama de
EJB (APP / EJB 3.0).
13. En el EJB Diagrama de diálogo Crear, cambiar el nombre predeterminado para el diagrama (EJB Diagram1) para
EJB3 y verificar oráculo es el nombre del paquete.
En el diagrama asociado con la persistencia de diálogo Unidad, haga clic en Aceptar para aceptar la propuesta de
persistencia Unidad EJBModel (EJBModel.jpr).
15. Seleccione los Departamentos y Empleados entidades del Navegador de Aplicaciones a continuación, arrastre y
deje caer sobre el diagrama.
16. El diagrama muestra los componentes EJB que usted acaba de crear en las tablas Departamentos y Empleados.
Reorganizar la disposición del diagrama que ambas entidades alineados horizontalmente. Usted puede ordenar el
diagrama mediante la selección de las relaciones y el uso de la opción de enderezar las líneas en el menú contextual.
17.
Haga clic en el Guardar todo icono para guardar su trabajo.
Volver al tema
Una fachada sesión presenta objetos de cliente con una interfaz unificada para los EJB subyacente (Enterprise JavaBeans). El
cliente interactúa sólo con la fachada, que reside en el servidor y llama a los métodos apropiados para el EJB. Como resultado, las
dependencias y la comunicación entre los clientes y los EJB se reducen.
Si va a realizar el acceso remoto sin una fachada período de sesiones, numerosas llamadas remotas son necesarios para los
clientes para acceder a EJB 3.0 entidades directamente sobre la red. Esto da lugar a una gran cantidad de tráfico de red que afecta
negativamente el rendimiento. Además, sin una fachada del cliente depende directamente de la aplicación de los objetos de
negocio, de modo que si la interfaz de un cambio de EJB, objetos de cliente tiene que ser cambiado.
En esta sección, se crea un bean de sesión que implementa un método para encontrar los registros de empleados y el
departamento.
1. En la paleta de componentes, seleccione los componentes de la colección de EJB y abra los nodos EJB.
2.
Seleccione el bean de sesión componente de arrastre y suéltelo en el diagrama.
La Creación de bean de sesión se abre el Asistente. Si es necesario, haga clic en Siguiente en el paso de
bienvenida.
3. En el nombre EJB y Opciones de paso, establecer el nombre EJB HRFacade y asegúrese de que los siguientes
valores están ajustados correctamente:
4. En la fachada paso reunión, las entidades en este proyecto aparece como un nodo en el control de árbol. Usted
puede seleccionar la casilla de verificación para incluir todos los métodos de la entidad esta entidad expone, o
expandir los nodos y seleccionar un subconjunto de los métodos.
Ampliar y Departamentos nodos empleados y seleccione la combinación, quite y los métodos getFindAll para
cada entidad, a continuación, haga clic en Siguiente.
6. En el siguiente paso, asegúrese de que tanto remoto y la interfaz de implementaciones locales son seleccionados.
La interfaz de control remoto se utiliza para las aplicaciones cliente que se ejecutan en una máquina virtual
independiente, como los clientes de Java, mientras que la interfaz local se utiliza para las aplicaciones cliente que se
ejecutan en la misma virtuales máquina, tales como los clientes Web.
Haga clic en Siguiente para revisar el resumen de las clases creadas y luego en Finalizar.
El bean de sesión se compone de tres archivos: HRFacadeBean - contiene el código de bean de sesión de cliente.
HRFacade - describe las capacidades del frijol a distancia para los clientes y HRFacadeLocal describe las
capacidades de lo local.
8. Haga doble clic en el bean de entidad empleados en el diagrama para abrir el código fuente de la clase.
9. consultas con nombre permiten definir las consultas en tiempo de diseño y luego utilizarlos en tiempo de ejecución.
El asistente crea un comunicado metadatos NamedQuery en la entidad Employee. Esta consulta recupera todas las
filas de la tabla Empleados.
@ NamedQueries ({
@ NamedQuery (name = "Employees.findAll", query = "o seleccionar o empleados")
})
Nota: Cualquier símbolo en principio el código de Java con @ se conoce como una anotación. El uso de anotaciones
que permite añadir metadatos a los objetos. Ejemplos de las anotaciones siguientes:
Anotación Descripción
@ Entity Identifica el archivo como una entidad EJB 3.0
Una consulta que se pueden utilizar en tiempo de ejecución
@ NamedQuery
para recuperar datos
@ Table Especifica la tabla principal de la entidad
Puede definir que la propiedad es el identificador de la
@ Id
entidad
Especifica una columna asignada para una propiedad
@ Columna
persistente o campo
Especifica un tipo de clave de la relación externa entre
@ ManyToOne
tablas
Especifica la unión de la columna y columna de referencia
@ JoinColumn
para una relación de clave externa
10. Añadir una coma al final de la instrucción NamedQuery último @, a continuación, agregar una consulta a la clase
que recupera los empleados por su nombre.
@ Entity
@ NamedQueries ({
@ NamedQuery (name = "Employees.findAll", query = "o seleccionar o empleados")
,
@ NamedQuery (name = "Employees.findByName", query = "o seleccionar o empleados en
o.firstName como: p_name")
})
Si es necesario, utilice las teclas ALT + Intro combinación de teclas para importar la biblioteca
javax.persistence.NamedQueries.
Nota: ¿Qué hace que estos objetos diferentes de otros archivos de Java son las anotaciones que los identifican
como entidades EJB. Una característica clave de EJB 3.0 y JPA es la capacidad de crear entidades que contienen
asignaciones de objeto-relacionales mediante anotaciones de metadatos en lugar de descriptores de despliegue
como en versiones anteriores.
11.
Haga clic en el icono para compilar la clase Employees.java.
Haga clic en el nodo HRFacadeBean en el Navegador de Aplicaciones y seleccione Editar Session Facade en el
menú contextual.
13. Expanda el nodo de Empleados del diálogo. Tenga en cuenta que la nueva consulta getEmployeesFindByName
nombre aparece como un método exposable. Selecciónelo y haga clic en Aceptar.
14. JDeveloper proporciona una forma de probar el EJB mediante la creación de un cliente de la muestra. Para ello,
haga clic en HRFacadeBean y seleccione Nuevo cliente Java de ejemplo en el menú contextual.
16. Revise el código de la clase HRFacadeClient y corregir el error reportado para el getEmployeesFindByName
() método mediante la adición de un parámetro de valor "% P" para que se vea como el siguiente:
17. Haga clic en el HRFacadeBean en el Navegador de Aplicaciones y seleccione Ejecutar en el menú contextual para
abrir el frijol fachada en WebLogicServer.
19. La ventana de registro devuelve los datos de base de datos sobre la base de los tres métodos que el cliente
contiene.
20. Para visualizar mejor el resultado del método findByName, en la clase java HRFacadeClient, comente el bucle
correspondiente al getEmployeesFindAll () método, y comentar el bucle correspondiente al
getDepartmentsFindAll () método. El código debe ser algo como esto:
21.
Haga clic en el botón Crear para volver a compilar la clase, y asegurarse de que no hay errores se devuelven.
23. La ventana de registro debería mostrar ahora las filas devueltas recuperados por 'P'% de su cláusula.
Volver al tema
Una unidad de persistencia puede ser configurado para ejecutarse dentro o fuera del contenedor. En EJB 3.0, puede ejecutar las
entidades en un entorno puro de Java SE, sin necesidad de utilizar un servidor de aplicaciones. Una de las razones que podrían
hacer esto es crear un simple banco de pruebas de Java SE (utilizando JUnit, tal vez) para probar su comportamiento de la entidad
sin la sobrecarga de implementar / ejecutar en un servidor de aplicaciones. Otra razón es que usted lo desea, puede ejecutar una
aplicación Swing a nivel local.
En esta sección, se crea un bean de sesión que implementa un método para encontrar los registros de empleados y el
departamento.
1. Crear una nueva unidad de persistencia para ejecutar el servicio de Java fuera del contenedor Java EE.
Haga clic en el META-INF | persistence.xml y seleccione Nuevo Java Servicio de fachada en el menú
contextual.
2. En el panel de Java Clase de servicio, usted puede optar por crear una nueva unidad de persistencia (en el panel
siguiente) o utilizar una unidad existente. Seleccione Elegir una unidad de persistencia o Crea un Grupo en el
próximo, y comprobar el Generar un main () casilla método.
3. Nombre de la Unidad de fuera de la persistencia. Elija la conexión JDBC y asegúrese de que la conexión JDBC se
establece en HRConn.
4. Todos los métodos deben ser seleccionados de forma predeterminada. Anule la selección de algunos de ellos para
que su selección se parece a la siguiente imagen.
5. En la ventana del editor de código fuente, para la clase JavaServiceFacade, añadir una nueva línea después de /
/ TODO comentarios y entrar en la siguiente declaración:
cuenta de que puede utilizar el código técnico para ayudarle con escribir la sintaxis (CTRL + barra espaciadora)
SOP y presione CTRL + Tipo de Enter para insertar un System.out.println () declaración. a.getLastName Agregar
() dentro de los paréntesis para que su clase ahora tiene el siguiente aspecto:
/ / TODO
Los empleados de una javaServiceFacade.getEmployeesFindByName = ("% P")). Get (0;
System.out.println (a.getLastName ());
6.
Haga clic en el botón para compilar la clase y guardar su trabajo.
8. La ventana de registro muestra el resultado de la ejecución de la clase que se ejecuta fuera de Java EE contenedor,
la devolución del lastName del primero de los registros recuperados (P ayam Kaufling).
9. Haga doble clic en el META-INF | nodo persistence.xml para mostrar el contenido del archivo.
10. Ambas unidades de persistencia se describen. El valor por defecto dentro de uno y el de nueva creación para el
exterior de ejecución de Java EE. Haga clic en la ficha Origen para revisar los detalles.
Volver al tema
Ahora exponer el EJB como un control de datos para el marco de Oracle ADF. Esto simplifica la forma en que las interfaces de
usuario se unen a la EJB. Para obtener más información sobre la visita del ADF Framework:
http://oracle.com/technology/products/adf
Para crear los datos del ADF controles de beans de sesión EJB, realice los pasos siguientes:
1. Haga clic en el nodo HRFacadeBean en el Navegador de Aplicaciones y seleccione Crear control de datos de
contexto.
Volver al tema
Se considera las mejores prácticas para utilizar los proyectos para separar el código del modelo del código escrito para la vista. Por
esta razón ha creado un proyecto para el modelo de componentes EJB, y ahora se cree un segundo para los puntos de vista JSF.
3. En el cuadro de diálogo Crear proyecto, establezca Nombre del proyecto UserInterface a continuación, en Finalizar.
4. En el Navegador de aplicaciones, haga clic en el nodo UserInterface y seleccione Propiedades del proyecto a partir del
contexto.
5. En el diálogo Propiedades del proyecto, seleccione el nodo JSP Tag Libraries. Distribuido bibliotecas Seleccione y pulse el
botón Agregar.
7. Aún en el cuadro de diálogo Propiedades del proyecto, seleccione el nodo de tecnología de alcance. En las Tecnologías de la
ficha de proyecto, seleccione JSF en el panel disponible, y el uso de la flecha derecha botón, se traslado en el panel
seleccionado. Tenga en cuenta que la selección de JSF se propaga automáticamente las tecnologías necesarias asociadas (Java
- JSP y servlets)
Haga clic en Aceptar. A continuación, haga clic en el guardar todos los icono para guardar su trabajo.
Ahora el uso de JSF JDeveloper de Navegación Modeler para planificar el diagrama y crear páginas de la aplicación, y la
navegación entre ellos.
1. En el Navegador de aplicaciones, haga doble clic en el UserInterface | Contenido Web | WEB_INF | caras
config.xml nodo para abrir un diagrama de flujo de la página.
2. El diagrama de vacío se abre. Aviso de la paleta de componentes a la derecha del editor de diagramas. Puede
utilizar esto para crear componentes para el modelo de navegación JSF.
4. Desde la paleta de componentes, arrastre y suelte una página JSF junto a la anterior. Cambiar el nombre de la
consulta de la página.
5. Desde la paleta de componentes, arrastre y suelte otra página JSF debajo del primero. Cambiar el nombre de la
página de búsqueda.
6.
JSF Seleccione el asunto de navegación en la paleta de componentes. Haga clic en el
icono de la JSF página de origen (ver) y, a continuación, haga clic en el icono de la página de destino JSF
(consulta) para el caso de la navegación.
7. Modificar el valor por defecto la etiqueta, el "éxito", haciendo clic en él y escribiendo consulta sobre el mismo.
Tenga en cuenta que hay un icono de advertencia sobre el asunto de navegación. Esto se debe a que aún no ha
creado las páginas JSF y así indica que el asunto de navegación estaría buscando una página que no existe. Esta
advertencia se va al crear las páginas respectivas.
8. JDeveloper le da tres puntos de vista del archivo faces-config.xml. Usted ya ha utilizado la vista de diagrama,
pero la misma información también es accesible a través de un diálogo declarativa, así como directamente en la
fuente.
Haga clic en la pestaña general en la parte inferior de la pantalla. Haga clic en Reglas de navegación en la mano
izquierda para mostrar la tabla actual Reglamento de Navegación.
Haga clic en la ficha Fuente en la parte inferior de la pantalla. La etiqueta <from-view-id> identifica la página de
origen y la etiqueta <to-view-id> identifica la página de destino.
9. Vuelva a la vista de diagrama, haga clic en la ficha Esquema y seleccione JSF navegación asunto en la paleta de
componentes. Haga clic en el icono de la página de origen JSF (consulta) y, a continuación, haga clic en el icono
de la JSF página de destino (ver) para el caso de la navegación.
10. Modificar la etiqueta de forma predeterminada, el "éxito", seleccionándolo y escribiendo ver más de ella.
11. De la misma manera agregar los casos de navegación entre el ver y JSF páginas de búsqueda. Nombre de la que
va a la página de búsqueda, la búsqueda, y la que vuelve, vaya.
Su diagrama de ahora debería ser algo como la imagen de abajo.
12.
Haga clic en el guardar todos los icono para guardar el diagrama.
En los próximos pasos, se crea una página JavaServer Faces usando componentes ADF Faces para los Empleados página
Departamentos Maestro-Detalle.
1. En el diagrama de flujo de la página, haga doble clic en el icono para ver lanzar el asistente Crear JSF JSP.
2. El nombre del archivo debe ser browse.jspx. Compruebe la casilla de verificación Crear como XML documento, y en el
Diseño de página inicial y el área de contenido, haga clic en el botón Inicio Rápido diseño de radio. Se recomienda utilizar los
diseños de inicio rápido para evitar problemas de visualización. Haga clic en Examinar para elegir un diseño.
3. En la Galería de componentes aceptar el valor predeterminado, una categoría de diseño de la columna, y haga clic en Aplicar
temas en el panel de Opciones. Temas añadir un estilo de color para algunos de los componentes utilizados en los diseños de
inicio rápido y crear una página más agradable de aspecto.
Haga clic en Aceptar para guardar la selección de diseño. En la página JSF, haga clic en Aceptar diálogo Crear para crear la
página.
Ahora tiene una página browse.jspx vacío. En los próximos pasos, se agrega un enlace a datos de componentes ADF Faces a
la página. Este componente muestra un departamento junto con los empleados pertenecientes al departamento.
4. En la paleta de componentes, la colección de ADF Faces, seleccione la sección de diseño y arrastre un estiramiento de diseño
de componentes del Grupo Especial en la página
5. Desde la paleta de componentes, arrastre un componente Panel divisor en el medio de la página (el cursor debe estar a la
izquierda de la etiqueta en el centro).
6. Abra los controles de acordeón de datos y expanda el nodo HRFacadeLocal, a continuación, arrastre y suelte el nodo
DepartmentsFindAll dentro de la primera faceta.
7. En la Edición de campos de formulario, marque la opción Incluir controles de navegación y eliminar todas las columnas,
excepto los siguientes:
DepartmentID
departmentName
LocationID
8. En el, Diseño de grupo de la paleta de componentes, seleccione Panel de Colección y arrastre y suéltelo en la segunda faceta.
9. En los controles de datos, expanda el nodo departmentsFindAll, seleccione el nodo employeesList y ponerlo en la segunda
faceta.
En el menú desplegable, seleccione Tablas | alimentador automático de documentos de sólo lectura Tabla
10. En el cuadro de diálogo Editar columnas eliminar todas las columnas, excepto los siguientes:
commissionPct,
correo electrónico,
de empleado,
firstName
HireDate,
jobId,
lastName,
phoneNumber,
salario,
y seleccione Selección de filas, de filtrado y selección de opciones.
11. En el inspector de propiedades establecer la propiedad de selección de columnas de la tabla a una sola.
12. En el panel Estructura, seleccione el af: panel panelSplitter y en el inspector de propiedades, establezca la orientación a
vertical.
13. Seleccione el af: etiquetas panelStretchLayout y utilizando el inspector de propiedades, para el estilo | etiquetas Caja de
establecer el ancho a 600 píxeles y una altura de 400 píxeles.
15. Usted quiere que la sección de empleados de esta página para volver a cargar cuando el usuario navega entre los
departamentos. Establezca la representación de páginas parciales gatillo para disparar cuando el usuario hace clic en cualquiera
de los botones.
En la ventana Propiedades, haga clic en Editar para el Comportamiento | propiedad PartialTriggers. (El botón Editar es en el
extremo derecho del campo).
16. En el cuadro de diálogo Editar propiedades, expanda faceta (primero) | panelFormLayout - Departamentos | faceta (pie de
página) | panelGroupLayout para exponer los botones de navegación. Use the shuttle buttons to add all four buttons to the
selected list.
Haga clic en Aceptar. Now, when the user clicks any of the 4 buttons, the employees list will refresh to reflect the employees
within the displayed department.
17. From the Component Palette, Common Components, select the Panel Menu Bar component and drop it onto the Facet Top tag,
in the Design view of the page.
18. Click the Menu component then drag and drop it inside the Menu Bar .
Volver a la lista de temas
In the next few steps, you use ADF Faces to build a query page to edit Employees.
1. Vuelva a la página diagrama de flujo (haga clic en la ficha-config.xml caras), y haga doble clic en el icono de consulta para
iniciar el asistente de la página.
2. El nombre del archivo debe ser query.jspx. Compruebe la casilla de verificación Crear como XML documento, y en el
Diseño de página inicial y el área de contenido, haga clic en el botón Inicio Rápido diseño de radio. Haga clic en Examinar para
elegir un diseño.
3. En la Galería de componentes, acepte la columna de categoría uno y haga clic en Aplicar temas en el panel de Opciones.
Haga clic en Aceptar para guardar la selección de diseño. En la página JSF, haga clic en Aceptar diálogo Crear para crear la
página.
4. En los controles de acordeón de datos, en el nodo HRFacadeLocal, seleccione el getEmployeesFindByName (Objeto) del
nodo y colóquelo en la página.
5. En el formulario de edición, haga clic en Campos en Aceptar para aceptar los campos propuestos.
.
7. En el control de acordeón de datos, expanda el nodo getEmployeesFindByName y seleccione el nodo empleados. Colóquelo
en la siguiente página el formulario de parámetros.
8. En la Edición de campos de formulario, visita las dos casillas (Incluye controles de navegación - Incluye botón Enviar) y
eliminar todas las columnas, excepto los siguientes:
commissionPct,
correo electrónico,
de empleado,
firstName
HireDate,
jobId,
lastName,
phoneNumber,
salario.
10. Esta página debe ser actualizable, para especificar esto, seleccione el mergeEmployees (Trabajadores) método en el
panel de controles de datos, y colóquelo en el botón Enviar.
En la edición de acción vinculante de diálogo, en la sección Parámetros, haga clic en la flecha hacia abajo en el campo Valor y
seleccione Mostrar EL Generador de expresiones.
11. En el cuadro de diálogo Variables, expanda ADF enlaces | Enlaces | getEmployeesFindByNameIterator | CurrentRow
dataProvider y seleccione. Observe que al seleccionar cada nodo en la expresión. el editor que se suma a la expresión en la
parte superior de la ventana.
14. En el Inspector, común ficha de propiedades, establezca el valor de texto para guardar y en la sección de botones de acción,
establecer la acción de la que navegar desde la lista desplegable.
15. Con el botón aún seleccionado, haga clic y seleccione Ir a la página Definición en el menú contextual.
Al establecer esta propiedad mantiene concurrencia fila para ADF Faces y JSP / JSF páginas.
17.
Haga clic en Guardar todas las icono para guardar su trabajo.
En los siguientes pasos, utilice ADF Faces para crear una página de búsqueda usando la nueva función de alimentador automático
de documentos de consulta.
1. Vuelva a la página diagrama de flujo (haga clic en la ficha-config.xml caras), y haga doble clic en el icono de búsqueda para
iniciar el Asistente para la página.
2. El nombre del archivo debe ser search.jspx. Compruebe la casilla de verificación Crear como XML documento, y en el
Diseño de página inicial y el área de contenido, haga clic en el botón Inicio Rápido diseño de radio. Haga clic en Examinar para
elegir un diseño.
3. En la Galería de componentes, acepte la columna de categoría uno y haga clic en Aplicar temas en el panel de Opciones.
Haga clic en Aceptar para guardar la selección de diseño. En la página JSF, haga clic en Aceptar diálogo Crear para crear la
página.
4. En los controles de acordeón de datos, en el nodo HRFacadeLocal, expanda el nodo departmentsFindAll y, a continuación los
Criterios nodo con nombre. Seleccione todos los atributos Queriable y arrastre y suéltelo en la página.
En el menú emergente, seleccione la consulta | alimentador automático de documentos de consulta del Grupo Especial
con el cuadro.
5. En el formulario de editar campos eliminar todas las columnas, excepto los siguientes:
DepartmentID
departmentName
LocationID
Ahora que usted ha construido su aplicación, es necesario probarlo. JDeveloper hace que sea fácil de probar las páginas JSF a
través de un built-in del servidor de aplicaciones. El servidor se inicia automáticamente cuando se prueba una página dentro de
JDeveloper.
1. To test the pages, return to the page flow diagram. Right click the browse page icon and select Run from the
context menu.
2. Your page is loaded in your default browser and should look like the following:
3. Click the Next button to find a department with several employees in its list, for example department 30. Then click in
the firstName column and experiment sorting the names in ascending/descending order using the up/down arrow
icons.
4. Scroll right to select the lastName column header and move it left to position it in the table just after the firstNam
e column.
5. Select the column headers and reorder the columns in this sequence: employeeId, firstName , lastName ,
email , jobId, salary, hireDate , commissionPct....
6. On the top left of the page, click Options --> Query and move the menu to another location on your page. Then
press the Query button.
7. The query page opens in the browser. In the queryEmployeesFindByName_p_name field enter any name or
partial name. ie A% then click the getEmployeesFindByName button.
8. Experiment with the navigation buttons if your query retrieved more than one record.
10. Increase Alexander's salary to 10000 and click the Save button to commit the change and take you back to the
browse page.
11. Back in the browse page, rerun the A% query to check that your update to Alexander's salary has been saved. Then
click the Options menu again, and this time select Search to navigate to the search page.
12. In the search criteria area, click the Any radio button in the Match field, and type IT in the departmentName field.
Click Search .
13. The search returns four departments that contain IT in their name.
Notice some of the other functionalities of the ADF query feature, including advanced searches and the ability to save
searches.
14. You have successfully completed this OBE. Close the browser window
Resumen
In this tutorial, you created an end-to-end application using Oracle JDeveloper, EJB 3.0, JPA, and JSF pages. You learned how to :