Está en la página 1de 486

Creación de archivos XML en Oracle

JDeveloper

Tabla 15-1 (Cont.) Características de edición XML


Característica Finalidad
Ventana de estructura E l e m e nto s d e un a r c hi v o s e m ue s tr a n j e r á r q ui c a me nte e n
la estructura
Ventana, que también muestra los errores de sintaxis XML encontrados
Escribir y editar. Puede hacer doble clic en un elemento o error
Para editarlo en el editor XML.
Validar XML En una ventana del editor de XML abierto, o en la aplicación
Navigator
Haga clic con el botón derecho en un archivo XML y elija Validar XML. El
validar
Comando XML validará el XML con el esquema
Definido en el archivo XML. Valida las limitaciones y XML
Pero no XSDs definiciones. Este comando de menú contextual
Desactivan un archivo XML no tiene un XML
Espacio de nombres definido.
Tecla F2. Después de crear un esquema XML, seleccione un elemento en la
estructura
Ventana y presione F2. El elemento que tiene el foco en el XML
Editor de diseño. Usted es automáticamente capaz de introducir un nuevo
texto
El elemento en el editor de diseño de XML.
Expandir/contraer los atributos que se pueden expandir o contraer los atributos que aparecen bajo
el
Elemento complexType. Esto es conveniente porque la lista de
Los atributos que aparecen bajo el elemento puede ser grande.

15.2.2 La comprensión de la barra de herramientas del Editor XML


Table 15–2 Contiene los iconos que aparecen en la barra de herramientas del Editor XML.

Tabla 15-2 Iconos de la barra de herramientas del editor de XML


Icono Nombre Descripción
Búsqueda (Ctrl + F) Introduzca el texto de búsqueda en el Editor XML. Haga clic en
abajo
Flecha para ver y ajustar los parámetros adicionales para la
Búsqueda, incluidas mayúsculas y minúsculas al realizar una
Búsqueda con distinción de mayúsculas y minúsculas, para localizar
toda la Palabra completa
Sólo coincidencias de palabras y resaltar las apariciones de usar
Sombreado para mostrar la ubicación de la coincidencia.
Buscar siguiente ( F3) Haga clic aquí para buscar la primera aparición del texto que
cumple
Los parámetros especificados en el archivo.
Buscar anterior Haga clic aquí para buscar la aparición anterior del texto que
(Mayúsculas Cumple con los parámetros especificados en el archivo.
+ F3)

15.3 Creación de archivos XML en Oracle JDeveloper


La nueva Galería ofrece diferentes opciones de tipo de archivo XML, tal como se muestra en
la
Table 15–3. Para crear un nuevo archivo XML elegir menú Archivo > Nuevo > General > XML.

Tabla 15-3 Tipos de archivo XML


Tipo de archivo Descripción
Documento XML. Crear un nuevo archivo XML que incluye sólo el <?xml
Version="1.0"?> en la parte superior.

Documento XML a partir Genera un documento XML a partir de un esquema XML existente.
de XML
Esquema
Crea un archivo de localización basada en XML con una extensión .XLF.
Archivo de localización Para obtener más información,
consulte Section 15.3.1, "Localizing with XML".
XML
(XLIFF) Genera como documento XML a partir de un esquema XML.
Documento XML a partir
de XML
Esquema
Desarrollo de aplicaciones con XML 15-3
Creación de archivos XML en Oracle JDeveloper

Tabla 15-3 (Cont.) de tipos de archivo XML


Tipo de archivo Descripción
Archivo de XQuery XQuery crea un archivo con una extensión .xq. Para obtener más
Información, consulte Section 15.4.2, "Using XQuery with XML".
Mapa XSL Crea un mapa XSL archivo con una extensión .xsl.

Mapa de XSL XSL Crea un mapa XSL archivo con una extensión .xsl de un XSL
Stylesheet Stylesheet.
XSL stylesheet Crea una hoja de estilo XSL con una extensión .xsl. Para obtener más
Información, consulte Section 15.6.12, "How to Create an XSL Style
Sheet for XSQL Files".
Archivo XSQL XSQL crea un archivo con una extensión .xsql. Para obtener más
Información, consulte Section 15.6.2, "How to Create an XSQL File".

15.3.1 Localización con XML


JDeveloper tiene herramientas para el soporte de localización completo para su aplicación basada
en
La tecnología XLIFF basado en XML. XLIFF apoya un proceso de localización completo
proporcionando
Etiquetas y atributos que mantenga los datos de sus traductores y proveedores se utiliza cuando
Internacionalizar su aplicación.

15.3.1.1 Cómo crear un nuevo archivo XLIFF


Crear un nuevo archivo en el XMLFF JDeveloper Nueva Galería bajo el nodo XML.

Para crear un nuevo archivo XLIFF:


Seleccionar menú Archivo >Nuevo > General > XML > Archivo de localización XML.
Para obtener más información sobre XLIFF, consulte el sitio web de estándar abierto de OASIS,
Http://www.oasis-open.org/home/index.php

15.3.1.2 lo que necesita saber acerca de archivos XLIFF


Los principales elementos en un archivo XLIFF son los elementos trans-unit. Estos elementos store
Texto localizable y sus traducciones. Estos elementos representan segmentos (normalmente
Frases en el archivo de código fuente que puede ser traducido razonablemente independientes). El
Trans-unit contienen elementos de origen, destino, alt-trans, y un puñado de otros elementos.
Hay también elementos para los comentarios de revisión, el estado de la traducción de cada
Cadenas y m tricas, tales como recuentos de palabras de la fuente de las condenas. El archivo
XLIFF
Se compone de uno o más elementos de archivo. Cada uno de ellos contiene un encabezado y un
cuerpo
Sección. El encabezado contiene datos del proyecto, tales como información de contacto, las fases del
proyecto,
Punteros a material de referencia, y la información sobre el archivo esqueleto.
JDeveloper utiliza paquetes de recursos para contener toda la información, incluida la localización
Los archivos XLIFF. Al crear contenido en una página JSF, un paquete de recursos es
Crea automáticamente para usted en ese proyecto.

15.3.2 Cómo importar y registrar los esquemas XML


Utilice las opciones en la página de esquemas XML en el cuadro de diálogo de preferencias para
ver todas las
Actualmente registrados esquemas XML, añadir nuevos esquemas para apoyar otros
Espacios de nombres y elementos, quitar los esquemas definidos por el usuario, y esquemas de
descarga
La memoria.

15-4 Guía del usuario para Oracle JDeveloper


Creación de archivos XML en Oracle
JDeveloper

Para importar y registrar un esquema XML:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. Seleccione el nodo de esquemas XML.

3. Haga clic en Agregar para abrir el cuadro de diálogo de esquema donde puede especificar un

nuevo esquema para


Agregar a la lista de esquemas de usuario.
4. Introduzca el nombre y la ubicación del archivo de esquema XML que está agregando

en el cuadro de diálogo Agregar un


Esquema del sistema de archivos o un campo URL.
5. Introduzca la extensión de archivo para registrar el esquema para un tipo de archivo

específico en el
Campo de extensión. JDeveloper utiliza la extensión eficiente para cargar el esquema
en
Memoria y para mostrar la paleta de componentes creados automáticamente las
páginas basadas en
Los elementos del esquema.
6. Haga clic en Aceptar.

JDeveloper valida automáticamente el esquema cuando lo agregue.


7. Confirmar que el nuevo esquema se ha añadido en el usuario esquemas para XML.
Editar la lista y haga clic en Aceptar.

Consejos: sólo puede quitar los esquemas definidos por el usuario con el retiro
Botón.
Si un cambio de esquema, se debe utilizar el botón Borrar caché para descargar
Todos los esquemas cargados actualmente en la memoria. JDeveloper luego
Recargue los esquemas necesarios incluyendo la modificación de esquema.

15.3.3 Cómo agregar un elemento XML a la paleta


Puede agregar páginas a la paleta de componentes en JDeveloper para incluir los elementos
A partir de un esquema o registrado puede añadir elementos a una página existente. Una
vez que agregue
Los elementos de la paleta, puede insertar elementos en el archivo XML mientras
Edición, seleccionándolos de la paleta.

Para agregar elementos XML a la paleta de componentes:


1. Desde el menú principal, elija Herramientas > Configurar la paleta para abrir Configurar
Paleta de componentes de diálogo.
Vaya al paso 4 si no desea agregar una nueva página.
2. Haga clic en Agregar en la lista de páginas para abrir el cuadro de diálogo Nueva

página de paleta.
3. En el cuadro de diálogo Paleta nueva página, introduzca el nombre de la nueva

página y seleccione el
El tipo adecuado de la lista desplegable y, a continuación, haga clic en Aceptar.
Su nuevo nombre de página se agrega a la parte inferior de la lista de páginas en la
configuración
Paleta de componentes de diálogo.
4. Seleccione el nuevo nombre de la página en la lista de páginas y haga clic
en Agregar dentro de los componentes
Lista para abrir el diálogo de elementos XML.
Los elementos XML diálogo muestra los esquemas registrados.
5. Expanda el nodo Esquema adecuado para mostrar los elementos que puede agregar a

la
Paleta.
6. Para agregar un elemento, selecciónelo en el árbol. Para agregar varios elementos, utilice
Ctrl-clic o Mayús-clic para seleccionarlos. A continuación, haga clic en Aceptar.
También puede hacer clic en Usar el icono predeterminado o seleccione el icono para
seleccionar el icono que
Mostrar para un elemento individual en la paleta, antes de hacer clic en Aceptar.

Desarrollo de aplicaciones con XML 15-5


Edición de archivos XML en Oracle JDeveloper

7. Después de agregar elementos XML, haga clic en Aceptar para cerrar la configuración de paleta
de componentes
El diálogo.
El nombre de la página de agregar aparece en la lista desplegable que aparece en la paleta. Todos
los
Los elementos agregados se muestran con corchetes angulares (< >) como el icono, si
Aceptado el icono predeterminado. Si no ve ningún elemento nombres en la paleta,
Haga clic con el botón secundario en la paleta y seleccione Vista de lista.

15.3.4 Cómo generar las clases Java a partir de esquemas XML con JAXB
En JDeveloper puede utilizar JAXB (Java Architecture for XML Binding) para generar Java
Clases de esquemas XML. JAXB es una manera fácil de incorporar datos XML y
Funciones de procesamiento en aplicaciones Java sin tener conocimientos de XML. Puede
Generar un JAXB 1.0 o 2.0 Modelo de contenido, incluidas las anotaciones necesarias, desde una
Esquema XML.
Cuando el compilador de JAXB vinculante se ejecuta contra un esquema XML, JAXB paquetes,
Las clases e interfaces son generados. A continuación, puede utilizar los paquetes generados JAXB
Y la utilidad de JAXB paquetes en un marco vinculante para unmarshal, Mariscal, y
Validar el contenido XML.

Para generar las clases Java a partir de esquemas XML con JAXB:
1. En el menú principal, elija Archivo > Nuevo > Nivel de Empresa > TopLink/JPA y
Seleccione JAXB 1.0 o 2.0 Modelo de contenido a partir de un esquema XML para abrir el
Compilación del diálogo.
2. Seleccione el archivo de esquema y, opcionalmente, el archivo de personalización de JAXB para

utilizar y la
El paquete al que se agregarán clases generadas.
El paquete JAXB y clases generadas se agregan a los recursos de la aplicación
Carpeta.

15.4 Edición de archivos XML en Oracle JDeveloper


El Editor de código fuente XML en JDeveloper es un esquema especializados-driven editor para
editar
Idiomas incluyendo XML, XSD, WSDL XSQL, XHTML y archivos XSL.

Para editar un archivo XML en el Editor XML de origen:


1. En el navegador, haga clic con el botón derecho en un archivo y elija Abrir.
2. Haga clic en la ficha Código fuente si no está seleccionada de forma predeterminada para ese

archivo.
3. Mientras escribe, puede invocar código Insight pausando después de teclear el <
(Corchete de apertura) o pulsando Ctrl+espacio (si se utiliza el valor predeterminado
Keymapping). Code Insight abre una lista con los elementos válidos, basándose en el
esquema.
4. Después de seleccionar un elemento, escriba un espacio y, a continuación, detener o
pulse Ctrl+Espacio
Para abrir una lista de atributos válidos desde la que puede seleccionar. Después de introducir la
Las comillas de apertura por el valor del atributo, Punta Insight muestra el tipo de valor que se
Requerida.

Sugerencia: Para editar un documento XML con la paleta de componentes, seleccione


Ver > Paleta de componentes para abrir la paleta de colores y seleccionar uno de los
Las páginas disponibles en la lista desplegable. A continuación, seleccione los elementos
de
La página.

15-6 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

15.4.1 Cómo Establecer las opciones de edición para el Editor XML


Cuando la edición de archivos XML en el Editor XML puede definir dos opciones de edición.

Para personalizar las opciones de edición de XML Editor:


1. Elija Herramientas > Preferencias.
2. Expanda el nodo del Editor de código.

3. Seleccione el nodo XML.

4. Seleccione el nodo XML. En la página Preferencias de XML, seleccione el atributo requerido


Inserción o terminar la finalización de etiquetas para activar las opciones deseadas.
5. Haga clic en Aceptar.

15.4.2 Uso de XQuery con XML


Puede crear y editar sus archivos basados en XML XQuery en JDeveloper. XQuery proporciona
Los medios para extraer y manipular datos de documentos XML o cualquier origen de datos
Que puede ser visto como el XML, como bases de datos relacionales o documentos de Office.

15.4.2.1 Cómo crear un nuevo archivo de XQuery


Se crea un nuevo archivo de XQuery en el JDeveloper Nueva Galería bajo el nodo XML.

Para crear un nuevo archivo de XQuery:


Seleccionar menú Archivo > Nuevo> General > XML > XQuery Archivo.
Para obtener más información sobre XQuery, consulte el sitio web de W3C,
Http://www.w3.org/TR/xquery/

15.4.2.2 lo que necesita saber acerca de la sintaxis de expresiones XPath


XQuery utiliza la sintaxis de expresiones XPath para atender a determinadas partes de un
documento XML. Ella
Se complementa esto con SQL-como "expresión FLWOR" para realizar combinaciones. Un
Expresión FLWOR se construye a partir de los cinco cláusulas que lleva su nombre:,
Vamos, donde, por orden de retorno.
El idioma está basado en un modelo con estructura en árbol de la información del
contenido de un
Documento XML, que contiene siete tipos de nodos: los nodos de documento,
elementos
Atributos, nodos de texto, comentarios, instrucciones de procesamiento y espacios de
nombres.

15.5 Trabajar con esquemas XML


JDeveloper proporciona un XSD Editor visual que proporciona una representación visual de
la
Estructura, contenido y semántica de un documento XML.

15.5.1 Trabajo con atributos en el Editor Visual de XSD


Puede crear un esquema XML del conjunto de atributos y propiedades y facetas de uso
El XSD Editor Visual. Figura 15-1 contiene un ejemplo de un esquema XML en la ficha Diseño
El XSD del Editor Visual.
Desarrollo de aplicaciones con XML 15-7
Trabajar con esquemas XML

Figura 15-1 en el esquema XSD Editor Visual

Puede editar los atributos del atributo2 en el editor de atributos, que se muestra en
Figure 15–1 Como elemento de unión. En este editor, puede:
■ Mostrar todos los atributos disponibles bajo un elemento. Para ocultar o mostrar los
detalles, haga clic en
Los signos más y menos al lado del atributo.
■ Mostrar todas las facetas y los detalles de tipo de un atributo display en el nodo de
atributo
■ Mostrar el valor predeterminado en el menú "Insertar" con los componentes de esquema
válido (por
Ejemplo, Union) cuando haga clic con el botón derecho del ratón sobre un nodo de
atributo.
■ Expandir un nodo de atributo dentro para mostrar un subárbol que contiene nodos
secundarios como
Lista o europea.

15.5.2 ¿Qué sucede cuando se crea un esquema XML en el Editor Visual de XSD
Como crear un esquema XML en el editor visual de XSD, JDeveloper automáticamente
Actualiza el código fuente XML en la ficha Diseño, así como la actualización de los contenidos de la
Ventana de estructura. Ejemplo 15-1 contiene el código fuente para el ejemplo.xsd
Se muestra en la Figure 15–1.

Ejemplo 15-1 Código fuente XML


<?xml version="1.0" encoding="windows-1252" ?>
Esquema xsd:xmlns:xsd="http://www.w3.org/2001/XMLSchema"
Xmlns="http://www.example.org"
="http://www.example.org" targetNamespace
<elementFormDefault="cualificado">
<xsd:name="UnionTest complexType">
<xsd:sequence>
<xsd:element name="element1">
<xsd:complexType>
<xsd:attribute name="Atributo1">
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="element2">
<xsd:complexType>
<xsd:attribute name="attribute2">
<xsd:simpleType>
<xsd:restricción>
<xsd:simpleType>
<xsd:unión/>
</xsd:simpleType>
<xsd:patrón value="abcd"/>
</xsd:restricción>
</xsd:simpleType>

15-8 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>

15.5.3 entender el componente XSD Mostrar en el Editor Visual de XSD


El JDeveloper XSD Editor Visual proporciona una representación visual de la estructura,
El contenido y la semántica de un documento XML. Utilizar el XSD Editor visual a un autor
Nueva o editar una existente, XML Schema.

15.5.3.1 Selección de componentes XSD


La selección de cualquier elemento o atributo en el editor está indicado resaltando
El elemento seleccionado en azul. En la figura 15-2, el elemento simpleType seleccionado
Define un tipo simple y especifica las restricciones y la información acerca de los valores de
Atributos o componentes de sólo texto, en este caso restringiendo el tipo string.

Figura 15-2 elemento simpleType

15.5.3.2 Componente del esquema XML


El esquema XML componente aparece en la parte superior de un archivo XSD, como se
muestra en la
Figure 15–3. Haga clic con el botón derecho en el elemento y seleccione Propiedades para
mostrar un cuadro de diálogo para
La configuración del esquema de nombres.

Figura 15-3 Componente del esquema XML

15.5.3.3 Selección Componente


El componente permite elegir sólo uno de los componentes contenidos en el <choice>
Declaración que se presente dentro de los componentes que contienen, como se muestra en
la Figure 15–4.
Establecer el atributo maxOccurs a >1 para tener más de un elemento de la elección en la
Padre.

Figura 15-4 Componente de elección

15.5.3.4 todos los componentes


Todos los componentes se muestra en la figura 15-5 especifica que el niño componentes
pueden
Aparecer en cualquier orden y que cada niño componente puede aparecer cero o una vez.
Desarrollo de aplicaciones con XML 15-9
Trabajar con esquemas XML

Figura 15-5 Todos los componentes

15.5.3.5 el componente de secuencia


El componente de secuencia se muestra en la figura 15-6 especifica que los componentes
secundarios
Deben aparecer en una secuencia. Cada componente secundario puede ocurrir de 0 a cualquier
número de
Veces.

Figura 15-6 Componente de Secuencia

15.5.3.6 y cardinalidad Ordinality


En el ejemplo de la cardinalidad se muestra en la figura 15-7, se muestran los componentes
con
Los siguientes atributos:
■ Los componentes requeridos (minOccurs="">0) se muestran con una línea sólida.
■ Componentes opcionales (minOccurs="0") se muestran con una línea punteada.
■ Componentes ilimitado(maxOccurs="sin límites") muestra un símbolo de infinito en
El componente número de pila. Cualquier componente que puede aparecer más de una vez es
Aparece como una "pila" de los componentes. Los números a la izquierda del componente
El número que aparece antes de los dos puntos indica el número mínimo de veces que el
Componente puede ocurrir (minOccurs) y el número después de los dos puntos indica el
Número máximo de veces que el componente puede ocurrir (maxOccurs). En el
Ilustración el máximo es tan ilimitado como el símbolo de infinito aparece.
■ Rango de componentes que se muestra en el componente número de pila. En el
Ilustración del componente debe aparecer al menos 2 veces en el documento de instancia
Pero no más de 7.

Figura 15-7 Componente de cardinalidad

15.5.3.7 Elemento ComplexType


En la figura 15-8, el elemento complexType se extiende un tipo base, y hereda un
Atributo y los niños de ese tipo base. El fondo amarillo representa un
Referencia a la baseType definido en otro lugar en el esquema y se ilustra a continuación el
Elemento complexType. Se muestran los atributos del componente como:
■ Heredado, marcado con un cuadrado.
■ Opcional, marcado con un cuadrado.
■ Necesarios, marcados con un asterisco naranja.
15-10 Guía del usuario para Oracle JDeveloper
Trabajar con esquemas XML

■ Prohibido naranja marcado con una X.

Figura 15-8 elemento complexType

Componente del grupo Atributo 15.5.3.8


Los grupos de componentes de grupo de atributos de un conjunto de declaraciones de
atributos para que puedan
Puede ser incorporado como un grupo en una definición de tipo complejo.
Figure 15–9 Muestra tres grupos de atributos.

Figura 15-9 Componentes de grupo de atributos

Si agrega un elemento a un esquema que tiene múltiples attributeGroups, puede


agregar
Elija uno o más attributeGroups para el elemento haciendo clic en el elemento
Atributo y elegir de una lista desplegable.

Componente de unión 15.5.3.9


La unión componente define un tipo simple como una colección (unión) de valores de
Especifica los tipos de datos simples. En la figura 15-10, la unión representa a todas las
cadenas que comienzan
Con la letra "i".

Figura 15-10 Componente de unión

15.5.3.10 componente List


El componente List define un tipo simple componente como una lista separada por
espacios de valores
De un tipo de datos especificado. En la figura 15-11, el componente representa una serie de
breves
Objetos de valor.
Desarrollo de aplicaciones con XML 15-11
Trabajar con esquemas XML

Figura 15-11 componente List

15.5.4 Cómo generar un esquema XML a partir de documentos XML.


Utilice el asistente de XML en la nueva galería para ayudarle a generar rápidamente la industria
Standard W3C XML Schema () desde su .xsd XML ( .xml) documentos. Por el contrario,
También puede generar documentos XML desde su esquema XML.

Para generar un esquema XML a partir de un documento XML:


1. Seleccionar menú Archivo > Nuevo > General > XML > XML Schema de XML
Documento.
2. Introduzca la información como se indica.

Para generar un documento XML a partir de un esquema XML.


1. Seleccionar menú Archivo > Nuevo > General > XML > Documentos XML a partir de XML
Esquema.
2. Introduzca la información como se indica.

15.5.5 Cómo generar un archivo XSD desde un archivo DTD


Puede generar un documento de esquema XML (XSD) de un tipo de documento.
Definición (DTD) archivo.

Para generar un archivo XSD de un DTD:


1. En el menú principal, haga clic en Herramientas.
2. En el menú Herramientas, haga clic en Convertir a XSD DTD.

15.5.6 Cómo mostrar un archivo XSD para edición


Abra un esquema (XSD). Para editar en el Editor Visual de XSD XML o un editor de código
fuente.
Por defecto los nuevos archivos de esquema XSD se abren con el Editor visual en el foco.
Haga doble clic en un archivo en la aplicación Navegador abre o trae el editor predeterminado
En la ficha Diseño en primer plano. Haga clic en la ficha Origen abre el archivo en el formato XML
Editor de código fuente. Los cambios realizados en un editor se actualiza automáticamente en el otro
Editor.
U n a r c h i v o d e e s q u e m a XSD () puede ser editado simultáneamente con los editores
visuales y fuente
Abriendo la página en uno de los editores y utilizando el divisor para abrir una segunda página.
En la vista del editor alternativo.

Para visualizar un archivo de esquema en ambos editores:


■ Para dividir el archivo horizontalmente, agarre el divisor justo encima de la barra de desplazamiento
vertical (en
El lado superior derecho de la ventana) y arrástrelo hacia abajo.
■ Para dividir el archivo verticalmente, agarre el divisor justo a la derecha de la barra de desplazamiento
horizontal
Bar (en la parte inferior derecha de la ventana) y arrástrelo hacia la izquierda.

15.5.7 Cómo crear una imagen de la ficha Diseño Visual Editor XSD
Puede crear la ficha Diseño XSD del Editor visual como una imagen. A continuación, puede compartir
La imagen como un archivo o una imagen o imprimir con otros.

15-12 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

Los formatos de imagen admitidos son .svg, .svgz, .jpgy .png.


1. En la aplicación Navegador, haga doble clic en el archivo .xsd que desea mostrar

en el
Editor Visual de XSD.
2. Haga clic en la ficha Diseño, en el XSD Editor Visual.

U n a v i s t a d e d i s e ñ o d e l a m u e s t r a d e l a r c h i v o . x s d , s i m i l a r a Figure 15.6.

Figura 15-12 Ficha Diseño en Visual Editor XSD

3. Haga clic con el botón derecho del mouse en la ficha Diseño y elija Publicar Diagrama.
4. Introduzca un nombre, la ruta de la carpeta donde desea guardar el diagrama, y el tipo

de imagen
Que desea utilizar.

Notas: Si el diagrama que está intentando guardar es demasiado grande,


Muestra el mensaje que indica que la imagen debe ser guardado en .svg
Formato.
Si hace clic con el botón secundario en un nodo en el Editor Visual de XSD,
sólo la actual
Nodo y sus nodos secundarios se guarda como una imagen.

15.5.8 Cómo navegar con desplazamiento de agarre en el XSD Editor Visual


En XSD Editor visual, puede desplazarse rápidamente de un esquema XML que muestra
con
Las barras de desplazamiento mediante una operación de desplazamiento de agarre. Utilice
el desplazamiento de agarre para invocar una pequeña mano
Cursor para agarrar un esquema XML página y arrástrelo dentro de la ventana del editor.

Para navegar utilizando grab desplazarse en un esquema XML:


1. En XSD Editor Visual pulse y mantenga pulsada la barra espaciadora.
El puntero se convierte en un cursor en forma de mano abierta.
2. Pulse y mantenga pulsado el botón izquierdo del ratón.

La mano se cierra y agarra el esquema XML de la página.


3. Utilice su ratón para mover el esquema XML de la página dentro de la ventana del editor.

4. Suelte el esquema XML página soltando el botón izquierdo del ratón.

5. Cerrar grab vaya soltando la barra espaciadora.

15.5.9 Cómo expandir y contraer el elemento XSD Mostrar


Mientras trabajaba en el XSD Editor visual o el diseño de la ventana de estructura, puede
expandir
O contraer elementos XSD para mostrar los componentes hijos o contraer contenedor
Componentes para crear una vista de nivel superior del esquema.

Desarrollo de aplicaciones con XML 15-13


Trabajar con esquemas XML

Para expandir un nivel más allá del componente principal:


Haga clic en el signo + (más) del componente principal.

Contraer todos los niveles por debajo del componente principal:


Haga clic en el signo - (menos) del componente principal.

Para expandir todos los componentes principales en el esquema:


Presione Ctrl + *, utilizando el * en el teclado numérico del teclado.

Nota: Esta vista puede ser grande.

15.5.10 Cómo acercar y alejar en el XSD Editor Visual


El zoom permite ampliar (zoom in) o reducir (zoom out) en la pantalla de un
Esquema XSD XML en el editor visual.

Para ampliar:
1. Coloque el cursor en el área del esquema XML que desea ampliar.
2. Presione Ctrl+Plus.

Nota: Utilice el signo más en el teclado numérico del teclado.

Para alejar la imagen:


1. Coloque el cursor en la zona del esquema XML que desee reducir.
2. Presione Ctrl+minus.

Nota: Use el signo menos del teclado numérico del teclado.

15.5.11 Cómo seleccionar componentes XSD


Una de las acciones más habituales que realiza en el Editor visual o estructura XSD
Ventana (vista Diseño o Código fuente) es para seleccionar componentes para hacer algo
Con ellos. Hay varias razones para la selección de componentes:
■ Editar las propiedades del componente(s)
■ Mueva el componente(s)
■ Eliminar el (los) componente(s)
■ Seleccione una posición de destino en el que insertar otro componente
Puede seleccionar un solo componente sin hijos, un componente junto con su
Los niños, y de varios componentes.

Para seleccionar un componente:


■ Haga clic en el componente.
Si el componente seleccionado contiene los niños, seleccionar el componente también
selecciona
Todos sus hijos. Si desea copiar, mover o eliminar el padre, todos sus hijos son también
Copiar, mover o eliminar.

15-14 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

Sugerencia: Al hacer doble clic en un elemento XSD en XSD Editor Visual


Muestra un editor de propiedades para el componente.

Para seleccionar varios componentes:


1. Haga clic en el primer elemento.
2. Presione y mantenga presionada la tecla Ctrl.

3. Haga clic en cualquiera de los componentes adicionales. Si desea deseleccionar

uno sin perder la


Otras selecciones, mantenga presionada la tecla Ctrl y haga clic en el componente
De nuevo.
Seleccionar varios elementos no adyacentes por cualquier razón distinta de la eliminación
Ellos pueden llevar a resultados inesperados. Por ejemplo, si los componentes existen en
Los diferentes niveles en la jerarquía del esquema, pueden perder su relación jerárquica
Posiciones si copiarlos o moverlos a otra posición en el esquema de la página.
En XSD Visual Editor es posible seleccionar un componente de contenedor (y, por
ende,
Seleccione sus hijos) y también seleccionar explícitamente uno o más de los niños. Que
Significa que cualquier niño seleccionado explícitamente es seleccionado dos veces. Si
haces esto y luego
Copiar y pegar la selección, la doble hijo seleccionado se pegará dos veces, una como
Un niño a la copia principal y una vez como igual a la copia principal.

15.5.11.1 Qué ocurre cuando se selecciona un componente en el Editor Visual de XSD


Cuando un componente está seleccionado en el Editor Visual de XSD, el componente se
muestra en
Azul. Cuando se selecciona un componente de contenedor y cualquiera de sus hijos son
también de manera explícita
Seleccionado, todos se muestran en azul.
Cuando se selecciona en la ventana Estructura (Diseño o la vista Código fuente), el
componente se
Resaltado. Sin embargo, cuando seleccione los componentes con los niños, estos
También se seleccionan con ella, aunque sus nombres no estén seleccionadas. Si elimina o
mueve el
Padre, todos los niños se eliminan o se mueve con ellos.
Cuando selecciona un componente, también se selecciona una posición en la cual el otro
El componente puede ser insertado. Para obtener más información,
consulte Section 15.5.12, "How to Select
Target Positions for XSD Components".

Consejos: Cuando pase el puntero del ratón sobre un componente, un tooltip


Con el nombre de los componentes se muestra. Que hace que sea más fácil
saber
Donde haga clic para seleccionar un componente.
Cuando seleccione un componente en el Editor Visual de XSD, también es
Seleccionado en el diseño y la vista Código fuente de la ventana de estructura, y
viceversa
Versa. Esto significa que usted puede mirar la selección de ambas herramientas
para
Aclarar lo que está seleccionado y donde la posición de inserción.
La barra de estado JDeveloper declara explícitamente el punto de inserción de un
Los componentes seleccionados.
15.5.12 Cómo seleccionar las posiciones objetivo para componentes XSD
Al insertar, copiar o mover componentes XSD en XSD Editor visual o
Ventana de estructura (Diseño o la vista Código fuente), necesita seleccionar una posición de
destino en
Relación con el nodo en el que se realiza la actividad. Un posible objetivo
Las posiciones de un nodo son antes, después y en el interior.

Para seleccionar una posición de destino:


Elija una de las siguientes opciones:

Desarrollo de aplicaciones con XML 15-15


Trabajar con esquemas XML

■ Seleccione la posición de destino haciendo clic en el nodo en el que está realizando la


La acción.
■ Al colocar un elemento en una posición de destino, realice una de las siguientes opciones:
- Para insertar un elemento antes de un nodo de destino, arrástrelo hacia la parte superior del
nodo.
Hasta que vea una sólida línea horizontal (Visual Editor) o línea horizontal con un
Flecha arriba incrustado (estructura) y, a continuación, suelte el botón del ratón.

- Para insertar un componente después de un nodo de destino, arrástrelo hacia la parte inferior de

la
Nodo hasta que vea una sólida línea horizontal (Visual Editor) o una línea horizontal
Con incrustada una flecha abajo (estructura) y, a continuación, suelte el botón del
ratón.

- Para insertar un componente dentro de un nodo de destino, arrástrelo sobre el nodo hasta que se
Rodeada por un contorno de cuadro y, a continuación, suelte el botón del ratón. Este
objetivo
Colocar sólo está disponible en los nodos que pueden contener nodos secundarios.
■ Al utilizar el menú contextual para seleccionar una posición de destino, haga clic con el botón
derecho del ratón el destino
Nodo, seleccione una opción y, a continuación, seleccione un componente. Las opciones son:
- Insertar antes <componente> - Inserta un componente antes del nodo seleccionado.
- Insertar dentro de <componente> - Inserta un componente interior (bajo) el seleccionado
Nodo.
- Insertar después de <componente> - Inserta un componente después del nodo seleccionado.
No todas las opciones están siempre disponibles. Elegir una opción se muestra un submenú
desde
Lo que usted puede elegir una lista de componentes y, a continuación, seleccione el
componente que desea.
Según el nodo selecciona el submenú también puede contener uno o más
Los componentes que son elegibles para la inserción en el interior del nodo seleccionado.

Nota: Cuando se selecciona una posición de destino en el diseño o la fuente


Vistas en la ventana Estructura, la selección se refleja también en la
Editor Visual de XSD, y viceversa. Esto le permite verificar el
Visualmente la posición de inserción así como jerárquicamente. La selección es
También explícitamente en la barra de estado en la parte inferior de la JDeveloper
Ventana.

15.5.13 Cómo insertar componentes XSD


En el Editor visual y estructura XSD (ventana de diseño y la vista Código fuente), puede
Insertar componentes XSD arrastrando desde la paleta de componentes o mediante un contexto
Menú. También puede insertar componentes XSD copiando o cortando y pegando. Si
Estás cortando y pegando, puede insertar varios componentes a la vez. Para obtener más
Información, consulte Section 15.5.16, "How to Cut, Copy, and Paste XSD Components".

Nota: pegado de varios componentes que se copiaron desde diferentes


Lugares en la jerarquía del esquema XML puede llevar a resultados inesperados.

15-16 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

Para insertar componentes XSD usando la paleta de componentes:


1. En XSD Editor visual o la estructura de la ventana, localice la posición deseada
donde
Desea insertar un componente. Puede tener que expandir los nodos de la estructura
Ventana para descubrir el nodo que desea.
2. En la paleta de componentes, seleccione un XSD Lista de componentes de la lista

desplegable
Cuadro y, a continuación, arrastre el componente deseado de la lista y colóquelo en la
deseada
Posición de destino en el Editor Visual de XSD o ventana de estructura.
También puede seleccionar la posición de destino en el editor visual o estructura de ventana y
A continuación, haga clic en el componente deseado en la paleta de componentes.

Sugerencia: u n a b r e v e d e s c r i p c i ó n d e u n c o m p o n e n t e a p a r e c e
cuando el cursor está
Coloca sobre el nombre de un componente en una lista. Para obtener ayuda, haga
clic con el botón secundario en un
Los componentes de la lista y seleccione Ayuda.

Para insertar componentes XSD usando el menú contextual:


1. En XSD Editor visual o la estructura de la ventana, haga clic con el botón secundario
en el nodo deseado para
Mostrar un menú contextual. Puede tener que expandir los nodos para descubrir el
nodo
Desea.
2. Elija una opción en el menú contextual y, a continuación, seleccione un componente. Las

opciones
Son:
■ Insertar antes de <componente> - Inserta un componente antes del nodo seleccionado.
■ Insertar dentro de <componente> - Inserta un componente interior (bajo) el seleccionado
Nodo.
■ Insertar después de <componente> - Inserta un componente después del nodo seleccionado.
No todas las opciones del menú contextual están siempre disponibles. Elija una opción
Muestra un submenú en el que puede elegir una lista de componentes y, a
continuación, seleccione
El componente que desee. Según el nodo selecciona el submenú mayo
También contienen uno o más componentes que son elegibles para la inserción dentro del
El nodo seleccionado.

15.5.14 Cómo establecer y modificar las propiedades de los componentes de XSD


El Inspector de propiedades muestra las propiedades de componentes seleccionados XSD
en XSD
Editor visual o la estructura (Diseño o vista Origen) ventana. Utilice la propiedad
Inspector para establecer o modificar los valores de las propiedades de cualquier
componente de su XML
Esquema. Establecer los valores de la propiedad están marcados con un cuadrado verde.
Para deshacer los cambios, en el menú principal, seleccione Editar> Deshacer acción. Utilizar el
comando Set para
El botón Predeterminado para restablecer una propiedad que se ha ajustado a su valor
predeterminado (si hay alguno).
Para establecer las propiedades de un componente:
1. Con un esquema XML abierto, seleccione un componente en el editor visual o estructura
Ventana.
El Inspector de propiedades muestra los valores de las propiedades para el
componente seleccionado. Si
El Inspector de propiedades no está a la vista, seleccione Ver > o utilice el Inspector de
propiedades
Método abreviado de teclado Ctrl+Mayús+I.
2. Desplácese hasta la propiedad que desea es visible y, a continuación, seleccione con el

ratón o el
Teclas de flecha.
Una breve descripción de la propiedad se muestra en la parte inferior
de la propiedad
Inspector.

Desarrollo de aplicaciones con XML 15-17


Trabajar con esquemas XML

Sugerencia: Para ubicar rápidamente una propiedad en una larga lista, haga clic en el botón de
búsqueda.
En el Inspector de propiedades de la barra de herramientas. En el campo de texto
Buscar, escriba el nombre
De la propiedad y, a continuación, pulse Intro.

3. Introduzca el valor de la propiedad en la columna de la derecha en una de las siguientes


maneras:
■ En un campo de texto, escriba la cadena de valor de la propiedad, por ejemplo, un
valor de texto
O un valor de número y, a continuación, pulse Intro.
■ En un campo de valor con una flecha hacia abajo, haga clic en la flecha hacia abajo y
elija un valor
De la lista y, a continuación, pulse Intro.
■ En un campo de valor con puntos suspensivos (...), haga clic en el botón de puntos
suspensivos para mostrar un editor para
Esa propiedad. Defina los valores en el editor de propiedades y, a continuación, pulse OK.

Sugerencias: haga doble clic en un elemento xsd o haga clic en el componente


Y elija Propiedades para mostrar un editor de propiedades para el componente.
En el editor de propiedades seleccione un atributo y ver una breve descripción
En el área de estado debajo del editor.
Haga clic en Ayuda en el editor de propiedades para un enlace a un componente de
referencia
Tema.

15.5.15 Cómo establecer propiedades para varios componentes


Si tiene varios componentes seleccionados, de forma predeterminada, el Inspector de
propiedades muestra
Todas las propiedades de los componentes seleccionados. Haga clic en el botón Unión en la
propiedad.
Barra de herramientas del inspector para alternar entre mostrar todas las propiedades del
seleccionado
Los componentes (europea) y mostrar sólo las propiedades que los componentes seleccionados.
Tienen en común (intersección). Los valores representados en cursiva indican comunes
Las propiedades que tienen valores diferentes.

Para establecer las propiedades de varios componentes:


1. Mantenga presionada la tecla Ctrl y seleccione cada uno de los componentes.
2. Para cambiar la lista de propiedades que aparecen en el Inspector de propiedades, haga clic en el
Unión botón en la barra de herramientas del Inspector de propiedades.
■ Estado seleccionado muestra todas las propiedades de los componentes seleccionados.
■ Estado No seleccionado sólo muestra las propiedades de los componentes seleccionados
Común.
3. Seleccionar y editar la propiedad deseada en el Inspector de propiedades.

Si el valor se muestran en cursiva, los componentes seleccionados tienen diferentes


valores.
Edición del valor de una propiedad compartida hará que todos los componentes
seleccionados para tener
El mismo valor.

15.5.16 Cómo cortar, copiar y pegar elementos XSD


Puede cortar, copiar y pegar elementos XSD en el Editor visual o estructura XSD
(O Fuente) de la ventana de diseño. Puede realizar estas operaciones entre archivos del
El mismo proyecto o proyectos diferentes.

15.5.16.1 componentes de corte


Cuando se corta un componente, se extrae desde el editor y se coloca en un local
El portapapeles sólo accesibles por JDeveloper, no en el portapapeles del sistema. Si sale

15-18 Guía del usuario para Oracle JDeveloper


Trabajar con esquemas XML

JDeveloper sin pegar el componente, la versión de corte del componente será


Perdido.
Eliminar un componente se elimina sin modificar el contenido. Si usted entra en el hábito
De utilizar el comando Cortar para eliminar elementos de forma permanente, existe la posibilidad
de que un día
Podrá reemplazar accidentalmente algo en el portapapeles que preferiría tener
Mantenerse. Para obtener más información,
consulte Section 15.5.18, "How to Delete XSD Components".

Cortar uno o más componentes:


1. Seleccione el componente que desea XSD para cortar en el editor visual o la estructura
Ventana.
2. Realice uno de los siguientes:
■ Presione Ctrl+X.
■ Haga clic con el botón derecho del ratón y seleccione Cortar.
■ Elija Edición > Cortar desde el menú principal.

15.5.16.2 copiando componentes


Puede copiar XSD de componentes en el editor visual o la ventana de estructura.

Para copiar uno o más componentes:


1. Seleccione el componente XSD que desee copiar en el editor visual o la estructura
Ventana.
2. Realice uno de los siguientes:
■ Pulse Ctrl+C.
■ Haga clic con el botón derecho y seleccione Copiar.
■ Elija Edición > Copiar desde el menú principal.
■ Mantenga presionada la tecla Ctrl y arrastre una copia del componente
seleccionado a un destino
Posición.

15.5.16.3 Pegar elementos


Los elementos que se corta o se copia desde el Editor visual o estructura XSD ventana
puede ser
Se pega en cualquier otro archivo XSD en JDeveloper. Para obtener más información, consulte
Section 15.5.12, "How to Select Target Positions for XSD Components".

Para pegar un elemento:


1. Abra el archivo en el que desee pegar un elemento xsd en el editor visual o
Ventana de estructura.
2. Seleccione el punto de inserción donde desee pegar el elemento.

3. Realice uno de los siguientes:


■ Presione Ctrl+V.
■ Haga clic con el botón derecho del ratón y seleccione Pegar.
■ Elija Edición > Pegar.

15.5.17 Cómo mover componentes XSD


Puede mover un elemento xsd a un nuevo punto de inserción en el Editor Visual de XSD o
Estructura (Diseño o la vista Código fuente) la ventana arrastrando o cortar y pegar. Usted

Desarrollo de aplicaciones con XML 15-19


Desarrollo de páginas XML Databound con servlet XSQL

Puede trabajar en el editor visual o la estructura de la ventana para mover componentes o trabajar en
Ambas cosas a la vez, los componentes móviles entre los editores. Mover un componente a un XSD
Punto de inserción válido en otro archivo en el mismo proyecto o un proyecto diferente por
corte
Y Pegar. Para obtener más información, consulte Section 15.5.11, "How to Select XSD
Components".
Puede mover uno o varios componentes a la vez. Sin embargo, debe tener en cuenta
Que seleccionar y mover varios elementos no adyacentes o múltiples componentes
Desde diferentes niveles en la jerarquía del esquema puede llevar a resultados inesperados.

Para mover componentes arrastrando


En la ventana de estructura visual editor o realizar cualquiera de las acciones siguientes:
■ Arrastre el componente(s) desde la posición inicial a una posición de destino en visual
Editor o ventana de estructura. Para obtener más información, consulte Section 15.5.12, "How to
Select Target Positions for XSD Components".
■ Haga clic con el botón derecho del ratón arrastrar el componente(s) de la posición original en
un punto de inserción
En el editor visual o la estructura de la ventana y, a continuación, elija Mover nodos desde
aquí
El menú de contexto.

Para mover componentes cortando y pegando:


En la ventana de estructura visual editor o realizar cualquiera de las acciones siguientes:
■ Cortar el componente(s). A continuación, pegar en alguna otra posición en el editor visual
o
Ventana de la estructura del esquema.
■ Cortar el componente(s). A continuación, pegarlo en otro archivo en el mismo proyecto o
un
Otro proyecto.

Nota: Los componentes seleccionados y todos sus componentes secundarios son


Se trasladó a la nueva posición de destino.

15.5.18 Cómo eliminar componentes XSD


Puede quitar componentes de su esquema XML en el Editor Visual de XSD o
Estructura (Diseño o vista Origen) ventana. Cuando se elimina un componente, JDeveloper
Elimina las líneas asociadas a partir del código fuente.

Para eliminar uno o más componentes XSD:


1. Seleccione uno o más componentes XSD que desee eliminar en el editor visual o
Ventana de estructura. Para obtener más información,
consulte Section 15.5.11, "How to Select XSD
Components".
2. Realice uno de los siguientes:
■ Presione la tecla Supr.
■ Presione Ctrl+X.
■ Haga clic con el botón derecho del ratón y seleccione Eliminar.
■ Elija Edición > Eliminar desde el menú principal.
15.6 Desarrollo de páginas XML Databound con servlet XSQL
JDeveloper proporciona un entorno de desarrollo completo para simplificar la tarea de
Desarrollo de páginas XML databound con servlet XSQL.

15-20 Guía del usuario para Oracle JDeveloper


Desarrollo de páginas XML Databound con servlet XSQL

15.6.1 Apoyar servlet XSQL Clientes


JDeveloper proporciona soporte para servlet XSQL con estas características:
■ Proporciona etiquetas XSQL en la paleta de componentes
■ Le permite crear automáticamente páginas XSQL
■ Incluye bibliotecas XSQL
■ Proporciona XSQLConfig.xml en la ruta de clases; puede modificarla según sea
necesario
■ Proporciona componentes de negocio manipulador de acción etiquetas de manera
XSQL las páginas pueden utilizar un
Nivel de lógica de negocios para acceder a los datos

15.6.1.1 el servlet XSQL ¿Qué es?


Servlet XSQL le permite crear y usar páginas XSQL como clientes. Estas páginas
están escritas en
XML con consultas SQL incrustado y otro lenguaje de manipulación de datos
(DML)
Declaraciones. Además, puede utilizar los controladores de acciones para proporcionar más
funcionalidad
A SQL, tales como escribir los datos en un archivo XML.
Una acción handler es una aplicación que le permite llamar a una clase Java desde
dentro de una
Página XSQL. Hay controladores de acciones predefinidas que puede hablar
directamente a la base de datos
O con Componentes de Negocio para Java (BC4J), y puede crear los suyos propios.
Un servlet XSQL aplicación tiene estas capas lógicas:
■ Cliente - páginas XSQL cuidar de la consulta y obtención de datos mediante XML con
SQL incrustado. Para presentar los datos, es necesario convertir los datos XML a otro
Formulario, como HTML, Wireless Markup Language (WML), y así sucesivamente. Puede
escribir
Hojas de estilo XSL para convertir XML en cualquiera de estos idiomas.
■ Servlet XSQL en un servidor Web - El servlet usa la utilidad XML SQL para hablar con un
La base de datos.
■ - Nivel de lógica de negocios puede utilizar opcionalmente un Componentes de Negocio para Java tier
Para acceder y modificar datos.
■ Base de datos : puede utilizar cualquier base de datos que soporte los controladores JDBC 2.0.

15.6.1.2 ¿cómo puede usar el servlet XSQL?


Servlets XSQL ofrecen una manera sencilla y productiva para obtener XML en y fuera
del
La base de datos. Mediante secuencias de comandos más sencillas, los desarrolladores pueden:
■ Generar documentos XML simple o complejo
■ Aplicar hojas de estilo XSL para generar cualquier formato de texto
■ Analizar documentos XML y almacenar los datos en la base de datos
■ Crear completas aplicaciones web dinámicas sin programar una sola línea de
Código
Por ejemplo, un archivo como emp.xsql en Example 15–2:
Ejemplo 15 2 emp.archivo sql
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="emp.xsl"?>
<FAQ xmlns:xsql="urn:oracle-xsql conexión" = "scottDS">
<xsql:consulta doc-Elemento="empleados" row-Elemento="EMP">
Seleccione e.ename, e.d.sal, como departamento dname
Desde dept d, emp e
Donde d.deptno = e.deptno

Desarrollo de aplicaciones con XML 15-21


Desarrollo de páginas XML Databound con servlet XSQL

</xsql:consulta>
</FAQ>

Genera el código XML Example 15–3:

Ejemplo 15-3 Archivo XML


<empleados>
<EMP>
<ENAME>Scott</ENAME>
<SAL>1000</SAL>
<Departamento>Boston</departamento>
</EMP>
<EMP>
...
</EMP>
</empleados>

Con JDeveloper, puede fácilmente desarrollar y ejecutar archivos XSQL. La web integrada
El servidor y el navegador web predeterminado se utiliza para mostrar las páginas.
Para obtener más información sobre el servlet XSQL, consulte la documentación de Oracle
Database.

15.6.2 Cómo crear un archivo XSQL


Con JDeveloper, puede fácilmente desarrollar y ejecutar archivos XSQL. La web integrada
El servidor y el navegador web predeterminado se utiliza para mostrar las páginas.

Para crear un archivo XSQL:


1. En el navegador, seleccione el proyecto en el que desee crear la nueva XSQL
Página.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En el árbol, expanda las categorías General y seleccione XML.

4. En la lista de elementos, haga doble clic en Página XSQL.

Esto agregará un esqueleto XSQL archivo denominado untitled#.xsql para su proyecto, que
Se abre en el Editor XML. Puede escribir código en este editor, agregar etiquetas seleccionándolos
Desde la paleta de componentes, y modificar el archivo con tu propia hoja de estilos
Información.

15.6.3 Cómo editar archivos XML con etiquetas XSQL


JDeveloper's Editor XML soporta el resaltado de sintaxis, estructura vista de ventana, y
El Inspector de propiedades. También puede seleccionar las etiquetas de la paleta de componentes para
insertar en
Las páginas mientras se está editando.

Para utilizar el Editor XML para editar un archivo XSQL:


1. En el navegador, haga clic con el botón derecho en un archivo y elija XSQL Editor XML.
2. Elija Ver > Componenet Paleta para abrir la paleta de componentes y seleccione el
XSQL página de etiqueta en la lista desplegable de la paleta. A continuación, puede seleccionar
XSQL
Etiquetas de la paleta.
3. Mientras escribe, puede invocar código Insight pausando después de teclear el <
(Corchete de apertura) o pulsando Ctrl+espacio (si se utiliza el valor predeterminado
Keymapping). Code Insight abre una lista con las etiquetas válidas.
15-22 Guía del usuario para Oracle JDeveloper
Desarrollo de páginas XML Databound con servlet XSQL

4. Después de seleccionar una etiqueta, escriba un espacio y, a continuación, detener o


pulse Ctrl+espacio para
Abrir una lista de atributos válidos desde la que puede seleccionar. Después de introducir la
Las comillas de apertura por el valor del atributo, Punta Insight muestra el tipo de valor
que se
Requerida.
5. Mientras se edita, o después de que termine, puede hacer clic con el botón derecho en

el archivo y elija
Sangría automática XML guión correctamente el archivo.
6. También puede hacer clic con el botón derecho en cualquier etiqueta y elija Buscar en

estructura para resaltar que


Etiqueta en la ventana de estructura.

15.6.4 Cómo agregar etiquetas XSQL


Todas las etiquetas pueden insertarse XSQL seleccionándolos en la paleta de
componentes, como
Se describen a continuación. También puede insertar etiquetas XSQL escribiéndolos en el
archivo. Código
Insight está disponible para etiquetas XSQL.

Para agregar etiquetas a un archivo XSQL:


1. En el navegador, seleccione el archivo XSQL al que desea agregar etiquetas, haga
clic con el botón derecho del ratón
Y elegir el editor XML para abrir el archivo de origen.
2. Coloque el cursor en la línea en blanco después de la <página
Xmlns:xsql="urn:oracle-xsql"> etiqueta.
3. Elija Ver > Paleta de componentes para abrir la paleta si no aparece.

4. Seleccione XEtiquetas SQL de la lista desplegable en la paleta si no aparece.

5. Seleccione la etiqueta correspondiente de la paleta.

Si la etiqueta no tiene atributos, aparece en la página XSQL inmediatamente. Si la


etiqueta tiene
Uno o más atributos, aparece un cuadro de diálogo.
6. En el cuadro de diálogo que aparece, introduzca la necesaria y los atributos

opcionales. Presione la tecla F1


O haga clic en Ayuda en el cuadro de diálogo para obtener ayuda para un XSQL
etiqueta y sus atributos.
7. Después de introducir los atributos, haga clic en Siguiente para mostrar el cuadro de

diálogo siguiente o haga clic en Finalizar si es


Activado.
El botón y verá el número de diálogos dependen de qué etiqueta que seleccione.
Observe que la etiqueta y atributos introducidos aparecerán en la página XSQL.
8. Añadir otra línea en el archivo de origen y seleccione otra etiqueta del
componente
Paleta si es necesario.
9. Cuando haya terminado de agregar etiquetas, elija Archivo > Guardar todo para guardar

todo tu trabajo
Hasta la fecha.
Después de la adición de etiquetas, puede ver los datos XML sin formato o formato de
datos XML con un
La hoja de estilo.

15.6.5 Cómo comprobar la sintaxis de los archivos XSQL


Puedes comprobar tu archivo XSQL para determinar si es un documento XML bien formado y
si
No, para encontrar errores.

Para comprobar la sintaxis en un archivo XSQL:


En el navegador o en una ventana del editor de XML abierto, haga clic con el botón
derecho en un archivo y XSQL
Seleccione Revisar sintaxis XML.
Los resultados se muestran en la ventana de registro.

Desarrollo de aplicaciones con XML 15-23


Desarrollo de páginas XML Databound con servlet XSQL

Nota: El comando Validar XML en este menú contextual está desactivada


Siempre que un archivo XML no tiene un espacio de nombres XML definido.

15.6.6 Cómo crear el servlet XSQL de clientes que tienen acceso a la base de datos
Puede crear clientes basados en XML para servlets XSQL mediante XSQL etiquetas. Servlets XSQL
Le permiten obtener fácilmente datos dentro y fuera de la base de datos en formato XML. La
siguiente
Procedimiento muestra cómo utilizar la etiqueta consulta XSQL para mostrar datos

Crear un servlet XSQL cliente que accede directamente a la base de datos:


1. Crear un nuevo proyecto en el área de trabajo que contiene los componentes de negocio
Proyecto seleccionando el área de trabajo en el navegador y elija Archivo > Nuevo para
Abra la nueva galería.
2. En el árbol, expanda las categorías General y seleccionar proyectos.

3. En la lista de elementos, haga doble clic en Vaciar Proyecto para abrir el cuadro de diálogo Nuevo

proyecto.
4. Complete el cuadro de diálogo Nuevo proyecto y haga clic en Aceptar para agregar el proyecto

vacío para su
Área de trabajo.
5. Seleccione el nuevo proyecto en el navegador y elija Archivo > Nuevo.

6. En la lista Categorías, seleccione General y seleccione XML.

7. En la lista de elementos, haga doble clic en Página XSQL.

Esto añade un esqueleto XSQL archivo denominado untitled#.xsql para su proyecto.


8. En el navegador, haga clic con el botón secundario en el archivo y elija XSQL X ML de

Editor para abrir


El archivo de origen.
9. Coloque el cursor en la línea en blanco después de la <página
Xmlns:xsql="urn:oracle-xsql"> etiqueta.
10. Elija Ver > Paleta de componentes para abrir la paleta si no aparece.

11. Seleccione XSQL etiquetas desde la lista desplegable de la paleta si no aparece.

12. Arrastre la consulta (XSQL) etiqueta desde la paleta en el archivo XSQL.

Etiqueta de la consulta se ejecuta una instrucción SQL e incluye el conjunto de resultados en


formato XML.
13. En el cuadro de diálogo que aparece, puede introducir los valores y cambiar los valores

predeterminados para el
Atributos. Presione F1 o haga clic en Ayuda en el cuadro de diálogo para obtener ayuda
sobre la etiqueta y su
Atributos.
14. Después de introducir los atributos, haga clic en Siguiente.
15. En el cuadro de diálogo de selección de conexión, seleccione la conexión o crear una

nueva base de datos


Conexión y, a continuación, haga clic en Siguiente.
16. En el cuadro de diálogo de consulta, escriba la instrucción SQL que desea ejecutar y, a

continuación, haga clic en


Siguiente.
Por ejemplo, podría escribir select * from cliente para mostrar todos los
Los registros en la base de datos de clientes, basado en los atributos que has introducido.
17. Haga clic en Finalizar.

Observe que la etiqueta de consulta y los atributos introducidos aparecerán en la página XSQL.
18. Elija Archivo > Guardar todo para guardar su trabajo.

15-24 Guía del usuario para Oracle JDeveloper


Desarrollo de páginas XML Databound con servlet XSQL

19. Haga clic con el botón secundario en el archivo XSQL en el navegador y


elija Ejecutar filename.xsql para ver
Los datos XML sin formato en su navegador web.
Puede dar formato a los datos XML con una hoja de estilo. Los datos XML también pueden
ser pasados
A otra aplicación a través de un servicio de mensajería.

15.6.7 La creación de servlet XSQL clientes para los componentes empresariales


Puede crear clientes basados en XML para componentes de negocio utilizando servlet XSQL.
XSQL
Servlet le permite obtener fácilmente datos dentro y fuera de la base de datos en formato
XML. El
El siguiente procedimiento se muestra cómo enlazar un cliente XSQL para un negocio
componentes
El proyecto ya ha creado, mediante el ViewObject Mostrar etiqueta para mostrar el
Ver datos del objeto en formato XML. También puede utilizar la etiqueta de
actualización ViewObject
Inserciones, actualizaciones y eliminaciones de un objeto View.

Crear un servlet XSQL client para componentes de negocio:


1. Crear un nuevo proyecto en el área de trabajo que contiene los componentes de negocio
Proyecto seleccionando el área de trabajo en el navegador y elija Archivo > Nuevo para
Abra la nueva galería.
2. En el árbol, expanda las categorías General y seleccionar proyectos.

3. En la lista de elementos, haga doble clic en Vaciar Proyecto para abrir el cuadro de

diálogo Nuevo proyecto.


4. Complete el cuadro de diálogo Nuevo proyecto y haga clic en Aceptar para agregar el

proyecto vacío para su


Área de trabajo.
5. Seleccione el nuevo proyecto en el navegador y elija Archivo > Nuevo.

6. En la lista Categorías, seleccione General y seleccione XML.

7. En la lista de elementos, haga doble clic en Página XSQL.

Esto añade un esqueleto XSQL archivo denominado untitled#.xsql para su proyecto.


8. En el navegador, haga clic con el botón secundario en el archivo y elija XSQL Editor

XML para abrir


Si el archivo de origen no está abierto.
9. Coloque el cursor en la línea en blanco después de la <página
Xmlns:xsql="urn:oracle-xsql"> etiqueta.
10. Elija Ver > Paleta de componentes para abrir la paleta si no aparece.

11. Seleccione XSQL etiquetas desde la lista desplegable de la paleta si no aparece.

12. Seleccione el ViewObject Mostrar etiqueta de la paleta.


El ViewObject Mostrar etiqueta muestra la vista del objeto de datos en formato XML. El
Los procesos de actualización ViewObject inserciones, actualizaciones y eliminaciones de
un objeto View
Opcionalmente transformada basada en un documento XML.
13. En el cuadro de diálogo de selección de objeto de la vista, seleccione la vista

apropiada objeto > haga clic en Siguiente.


14. Cambiar o aceptar los valores predeterminados para los atributos. Presione F1 o haga

clic en Ayuda en la
Diálogo para obtener ayuda sobre la etiqueta y sus atributos. Después de introducir los
atributos, haga clic en Siguiente.
15. Haga clic en Finalizar.

Observe que la etiqueta y atributos introducidos aparecerán en la página XSQL.


16. Elija Archivo > Guardar todo para guardar todos sus trabajos hasta la fecha.

17. Haga clic con el botón secundario en el archivo XSQL en el navegador y

elija Ejecutar filename.xsql para ver


Los datos XML sin formato en su navegador web.

Desarrollo de aplicaciones con XML 15-25


Desarrollo de páginas XML Databound con servlet XSQL

Puede dar formato a los datos XML con una hoja de estilo. Los datos XML también pueden ser
pasados
A otra aplicación a través de un servicio de mensajería.

Nota: Consulte la sección titulada "salvedades al consultar ver


Objetos con descriptores de acceso ViewLink Circular" en el Show ViewObject F1
Tema de ayuda si recibe el error XSQL JBO-27122.

15.6.7.1 lo que necesita saber acerca de los componentes de la empresa acción XSQL
Los controladores
Para utilizar las páginas XSQL con los componentes empresariales XSQL controladores de acciones, el
XSQL
Runtime y JBO bibliotecas HTML necesita estar en el classpath del proyecto, además
A cualquier JBO librerías necesarias basándose en su modo de conexión.
JDeveloper incluye en el classpath automáticamente.

15.6.8 Cómo crear un controlador de acciones personalizadas para XSQL


Un controlador de acción en una página XSQL es una clase Java que se invoca para
realizar una
Tarea específica. Hay acción precompilados controladores para diversas tareas como la
configuración
Cookies, aplicando hojas de estilo, realizar consultas contra bases de datos, etc. Sin embargo, si
Usted elige realizar alguna operación que no es proporcionado por la acción incorporada
Los handlers, entonces usted puede escribir lo que se denomina un controlador de acción
personalizada. Una acción personalizada
Handler Es una clase Java que puede invocarse desde una página XSQL tan fácilmente como un
Controlador de acciones predefinidas.

Para crear una acción de controlador:


1. Agregar el archivo de configuración XSQL para su proyecto.
2. En el archivo de configuración XSQL, registre el nuevo controlador de acción especificando

el
El nombre del elemento y la clase del controlador.
3. En el archivo XSQL, añadir el nuevo elemento y sus atributos.

4. En el archivo XSQL, agregar información de conexión para el <página> etiqueta.

5. Agregar un archivo al proyecto Java.

6. En el archivo java, crear una clase que extienda la clase XSQLActionHandlerImpl.


La acción XSQL controladores para BC4J se empaquetan como parte de la biblioteca en HTML JBO
JDeveloper, que incluye el correspondiente: <JdevHome>/BC4J/jlib/bc4jhtml.jar
Archivado en la compilación.

Ejemplo 15 4 Acción Controlador para XSQL


// Copyright (c) 2000, 2009, Oracle y/o sus afiliados. Todos
Derechos reservados. import oracle.xml.xsql.*;
Importar org.w3c.dom.nodo;
Import java.util.Date;
/**
* Un Class.
* <p>
* @Author Pas Apicella
Clase pública se extiende XSQLActionHandlerImpl JavaDate
{
Public void handleAction (nodo raíz).
{
AddResultElement(root, "CURRENTDATE" (new Date()).toString());
}

15-26 Guía del usuario para Oracle JDeveloper


Desarrollo de páginas XML Databound con servlet XSQL

15.6.9 Cómo ejecutar y desplegar servlets XSQL Clientes


Después de haber completado su archivo XSQL, puede probar la consulta XSQL
ejecutándolo
En WebLogic Server integrado, que ofrece todo lo que usted necesita para desarrollar,
probar
Y depurar aplicaciones web desde el IDE. Para obtener más información, consulte
Section 9.2, "Running Java EE Applications in the Integrated Application Server."

Para ejecutar un servlet XSQL archivo:


1. En el navegador, haga clic con el botón derecho en el archivo y seleccione
XSQL Compruebe la sintaxis XML.
JDeveloper XSQL analizará el archivo en busca de errores de sintaxis XML y mostrar el
Los resultados en la ventana de registro.
2. Si no hay errores de sintaxis XML, haga clic con el botón derecho en el archivo y

seleccione Ejecutar XSQL


Filename.xsql.
JDeveloper compila el servlet. A continuación inicia el sistema integrado de WebLogic
Server. El
La primera vez que inicie el servidor WebLogic integrado, se muestra un cuadro de
diálogo donde usted
Tendrá que escribir una contraseña para el usuario por defecto weblogic en el
dominio predeterminado.
Usted sólo tendrá que hacerlo una vez.
JDeveloper inicia el navegador web predeterminado, y muestra la salida del servlet.
En el explorador.
Después de que el archivo se ejecute correctamente XSQL en WebLogic Server integrado,
puede
Implementar la aplicación que contiene a un servidor de aplicaciones externas, como por
ejemplo Oracle
WebLogic Server.

Para implementar una aplicación XSQL:


1. La sintaxis utilizada por JDeveloper y Oracle WebLogic Server para ejecutar XSQL es
Diferente, de modo que en su archivo de origen XSQL tienes que cambiar la conexión
Información como sigue. Sustituir:
Conexión="java:comp/env/jdbc/Conexión de base de datos nombre deDS"

Con
Conexión="jdbc/nombre de conexión de base de datosDS"

Nota: Si desea ejecutar la aplicación en el Sistema Integrado de WebLogic


Servidor, necesita cambiar la información de conexión de nuevo.

2. A fin de desplegar la aplicación, primero tienes que cr ear un perfil de implantación


E implementar la aplicación. En el navegador, haga clic con el botón secundario en el
proyecto que contiene
El servlet XSQL y, a continuación, seleccione Nuevo. En la nueva galería, expanda y
General
Seleccione Deployment Perfiles.
3. Elija un perfil, por ejemplo, un despliegue de guerra perfil y haga clic en OK (Aceptar) y
Continuar para crear el perfil de implementación. Para obtener más información,
consulte Section 9.3.2,
"How to Create and Edit Deployment Profiles."
4. Para implementar la aplicación en el perfil de implementación, haga clic con el botón derecho en

el proyecto
Que contiene el servlet XSQL archivos y elija Implementar > Perfil PERFIL DONDE ES
El nombre del perfil de implementación que acaba de crear.

Desarrollo de aplicaciones con XML 15-27


Desarrollo de páginas XML Databound con servlet XSQL

En el cuadro de diálogo, elija la implementación implementar a la guerra (o la opción


correspondiente si
Usted ha elegido un tipo diferente de perfil de implementación) y haga clic en Finalizar.
5. La aplicación está ahora listo para implementar en un servidor de aplicaciones, por ejemplo,
Oracle WebLogic Server. Los pasos que debe realizar son:
■ Crear un origen de datos en el servidor de aplicaciones de destino utilizando la conexión
Información en el archivo XSQL. Para obtener más información, consulte Section 9.3.6.4,
"Setting Up JDBC Data Sources on Oracle WebLogic Server."
■ Crear una conexión con el servidor de aplicaciones. Para obtener más información, consulte
Section 9.3.1, "How to Create a Connection to the Target Application Server."
■ Implementar la aplicación haciendo clic con el botón derecho en el proyecto que contiene
su XSQL
Archivos de servlet y elegir implementar > Perfil Perfil donde es el nombre de la
Perfil de implementación.
En el cuadro de diálogo, elija la implementación implementar en el servidor de
aplicaciones y en la
Página siguiente elige la conexión con el servidor de la aplicación y haga clic en Finalizar.
Una vez que se implemente la aplicación, usted puede ver los resultados de la consulta en un
Ventana del navegador navegando a
Http://targethost:puerto/web-contexto-root/filename.xsql.

15.6.10 Cómo ver el resultado de la ejecución de archivos XSQL como datos XML sin formato
Después de crear un archivo XSQL y agregar etiquetas, puede ver los datos XML sin formato o
El formato de datos XML con una hoja de estilo.

Para ver un archivo XSQL como datos XML sin formato:


Seleccione el archivo XSQL en el navegador, haga clic con el botón derecho del ratón y
seleccione Ejecutar para abrir xsql filename.
El archivo de código fuente en el explorador web.
JDeveloper inicia el servidor WebLogic Server integrado, abre el navegador web predeterminado,
Y muestra los datos XML sin formato que se produce después de que el servlet XSQL procesa el
Página XSQL.

15.6.10 Cómo dar formato a los datos XML con una hoja de estilo
Después de crear un archivo XSQL y agregar etiquetas, puede dar formato a los datos XML con
un
Hoja de estilo XSL o ver los datos XML sin formato. Puede utilizar una hoja de estilos
que previamente
Creado o crear uno nuevo en JDeveloper y aplicarlo. Al aplicar una hoja de estilo,
Puede convertir los datos XML en HTML u otro lenguaje de marcado, tales como wireless
Markup Language (WML).

Dar formato a los datos XML con una hoja de estilos:


1. En el navegador, seleccione el archivo XSQL al que desea agregar una hoja de estilo,
Haga clic con el botón derecho del ratón y elija Editor XML para abrir el archivo de origen.
2. Busque la línea de xml-stylesheet y comentario, que tiene este aspecto:
<!--
Descomentar la siguiente instrucción de procesamiento y sustituir
El nombre de la hoja de estilo para transformar la salida de su página XSQL con XSLT.
<?xml-stylesheet type="text/xsl" href="YourStylesheet.xsl" ?>
-->
3. Descomente la <?xml-stylesheet?> línea moviéndolo hacia abajo --> Cerrar
Comentario de la escuadra.

15-28 Guía del usuario para Oracle JDeveloper


Desarrollo de páginas XML Databound con servlet XSQL

4. En esta línea, sustituir YourStyleSheet.xsl con el nombre de la hoja de estilo;


para
Ejemplo, su hoja de estilo podría llamarse 1.xsl stylesheet.
A continuación, agregue el archivo que acaba de especificar a su proyecto, si usted usa
uno creado
Fuera de este proyecto.
5. En Navigator, seleccione el proyecto y elija Proyecto > Agregar al proyecto
Nombre. En el cuadro de diálogo Agregar al proyecto, navegue hasta el directorio y
seleccione el estilo
Archivo de hoja especificada.
6. Haga clic en Abrir.

7. Elija Archivo > Guardar todo para guardar todos los cambios.

El archivo agregado se muestra en el navegador y se abre en el Editor XML. Usted


Puede cerrar los archivos abiertos.
8. Seleccione el archivo XSQL en el navegador, haga clic con el botón derecho del ratón y

seleccione Ejecutar para xsql filename .


Abra el archivo en su navegador web.
Usted puede ver el formato de datos XML en el navegador.

15.6.12 Cómo crear una hoja de estilo XSL para ficheros XSQL
En JDeveloper, puede crear una hoja de estilo XSL que se pueden aplicar a los ficheros
XSQL
Para dar formato a los datos para HTML, WML u otra salida. Cuando se crea un
Hoja de estilos XSL, se agrega al proyecto XSQL seleccionada.

Para crear una hoja de estilo XSL:


1. En el navegador, seleccione el proyecto en el que desea crear el nuevo archivo XSL.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En el árbol, expanda las categorías General y seleccione XML.

4. En la lista de elementos, haga doble clic en la hoja de estilo XSL para abrir el cuadro de

diálogo Nuevo archivo XSL.


5. Deje el campo Nombre de directorio sin cambios para guardar su trabajo en el

directorio
Cuando JDeveloper espera encontrar archivos de aplicaciones web. En el campo
Nombre de archivo,
Introduzca el nombre del archivo que desea generar.
El esqueleto de un archivo XSL se genera y aparece en el proyecto
activo.
Puede editarlo en el Editor XML para crear su propia hoja de estilo personalizada. Un ejemplo
De una hoja de estilo XSL que transforma datos XML en Wireless Markup Language (WML)
Se proporciona a continuación. Cuando haya terminado, puede especificar el nombre de
la hoja de estilos en
Su archivo a formato XSQL los datos XML sin formato.

Ejemplo de la hoja de estilo XSL


La hoja de estilo en el ejemplo 15-5 demuestra la conversión de XML a WML. Usa
El valor predeterminado en un DeptView BC4J Aplicación.
Ejemplo de conversión de 15-5 A WML XML
<xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/XSL/Transform">:xsl

<!-- plantilla raíz -->


<xsl:output type="wml" media-type="text/x-wap.wml"
Doctype-public="-//WAPFORUM//DTD WML 1.1//EN"
Sistema doctype="http://www.wapforum.org/DTD/wml_1.1.xml"
Guión="yes" />

Desarrollo de aplicaciones con XML 15-29


Desarrollo de páginas XML Databound con servlet XSQL

<xsl:template match >/="*"><xsl:apply-templates/></xsl:template>


<xsl:template match="text()>@*"><xsl:valor de select="."/></xsl:template>
<xsl:template match="/">

<wml>
<card id="C1">
<p mode="nowrap">
<big>DEPTLIST</big>
</p>
<xsl:por cada select="page/DeptView/DeptViewRow">
<p>
<strong><xsl:valor de select="Deptno"/>&NBSP;</strong>
Xsl:valor de select="Dname"/>&NBSP;
<xsl:valor de select="Loc"/>
</p>
</xsl:por cada>
</tarjeta>
</wml>

</xsl:template>
</xsl:stylesheet>

15.6.13 Cómo modificar el archivo de configuración XSQL


El archivo de configuración XSQL, XSQLConfig.xml, se encuentra en la ruta de clases, de modo que
su XSQL
Páginas siempre tienen acceso a ella. La información de conexión se añade a la
XSQLConfig.xml cuando se crea una nueva conexión en JDeveloper.
XSQLConfig.xml se encuentra en el directorio del sistema y se copia en el WEB-INF
Directorio cuando un proyecto que contenga un archivo XSQL es compilado. Puede agregar el
archivo a
Su proyecto si necesita modificarla; por ejemplo, para registrar los controladores de acciones
personalizadas.

Nota: Cuando migre un proyecto XSQL en JDeveloper, el


XSQLConfig.xml no está actualizado para usted. Puedes actualizar tu
Las conexiones después de migrar el proyecto recreando la conexión o
Modificar una conexión existente en JDeveloper.

Para modificar el archivo de configuración XSQL para su proyecto:


1. Con el proyecto seleccionado en el navegador, seleccione Proyecto > Agregar al proyecto
Nombre.
2. Navegue hasta el directorio del sistema en el directorio de instalación, seleccione JDeveloper
XSQLConfig.xml y haga clic en Abrir.
3. Realice los cambios o adiciones en el Editor XML.

4. Elija Archivo > Guardar para guardar el archivo revisado.

15.6.14 utilizando las propiedades de metadatos XML en archivos XSQL


Las propiedades personalizadas que se muestran en la Tabla 15-4 afectan la generación de XML
cuando se utiliza el
Método writeXML de un objeto View o fila.
15-30 Guía del usuario para Oracle JDeveloper
Desarrollo de páginas XML Databound con servlet XSQL

Tabla 15-4 Propiedades de metadatos


Nombre de propiedad Valor Válido para
XML_ELEMENT Un nombre de elemento legal Ver objetos y ver
Atributos
XML_ROW_ELEMENT Un nombre de elemento legal Ver objetos
XML_CDATA Cualquier valor (no vacío). Ver atributos
XML_EXPLICIT_NULL Cualquier valor (no vacío). Ver objetos y ver
Atributos

15.6.14.1 usando XML_ELEMENT


Si el XML_ELEMENT propiedad personalizada está presente para un objeto View, su
valor se utiliza
Como el nombre del elemento XML para el objeto View en XML, cuando se genera mediante
la
Método writeXML y "consumido" por el método readXML.
Si el XML_ELEMENT propiedad personalizada está presente para una vista de atributo,
su valor es
Utilizado como el nombre del elemento XML para el atributo en el XML, cuando se genera
mediante
El método writeXML y "consumido" por el método readXML.
Por ejemplo, para ver un objeto denominado DeptView con un atributo denominado Sal,
ajuste:
■ XML_ELEMENT="Departamentos" en la vista Propiedades de objeto
■ XML_ELEMENT="Salario" en la vista Propiedades del atributo de Sal
Produciría como XML:
<Departamentos>
<DeptViewRow>
<Empno>1010</Empno>
<Ename>Steve</Ename>
<el sueldo>1234</salario>
</DeptViewRow>
</departamentos>

En lugar de la predeterminada:
<DeptView>
<DeptViewRow>
<Empno>1010</Empno>
<Ename>Steve</Ename>
<Sal>1234</Sal>
</DeptViewRow>
</DeptView>

15.6.14.2 usando XML_ROW_ELEMENT


Si el XML_ROW_ELEMENT propiedad personalizada está presente para un objeto View,
su valor es
Utilizado como el nombre del elemento XML para cada fila de resultados de consulta
elaborado por la vista
Objeto en XML, cuando se genera mediante el método writeXML y "consumido" por
El método readXML.
Por ejemplo, para ver un objeto denominado DeptView con un atributo denominado Sal,
ajuste:
■ XML_ELEMENT="Departamentos" en la vista Propiedades de objeto
■ XML_ROW_Elemento="Department" en la vista Propiedades de objeto
■ XML_ELEMENT="Salario" en la vista Propiedades del atributo de Sal
Produciría como XML:

Desarrollo de aplicaciones con XML 15-31


Desarrollo de páginas XML Databound con servlet XSQL

<Departamentos>
<Departamento>
<Empno>1010</Empno>
<Ename>Steve</Ename>
<el sueldo>1234</salario>
</Departamento>
</departamentos>

En lugar de la predeterminada:
<DeptView>
<DeptViewRow>
<Empno>1010</Empno>
<Ename>Steve</Ename>
<Sal>1234</Sal>
</DeptViewRow>
</DeptView>

15.6.14.3 usando XML_CDATA


Si el XML_CDATA propiedad personalizada no está ajustada a un valor vacío para un
atributo, ver
A continuación, su valor será de salida como una sección CDATA en lugar de como texto sin formato.

15.6.14.4 usando XML_EXPLICIT_NULL


Si el XML_EXPLICIT_NULL propiedad personalizada está establecida en un valor no vacío
para una vista
Objeto y, a continuación, cualquier atributo con un valor null generará un elemento XML que busca
Como:
<AttributeName null="true"/>

En vez de omitir el <AttributeName> elemento del XML, que es el resultado de


De manera predeterminada.
Si el XML_EXPLICIT_NULL propiedad personalizada está establecida en un valor no vacío
para una vista
El atributo y, a continuación, en el caso de que el atributo indicado tiene un valor nulo, el sistema
Generar un elemento XML que tiene el siguiente aspecto:
<AttributeName null="true"/>

En vez de omitir el <AttributeName> elemento del XML, que es el resultado de


De manera predeterminada.
15-32 Guía del usuario para Oracle JDeveloper
16
Desarrollo de aplicaciones Web
16

utilizando
Servicios

Este capítulo describe cómo JDeveloper proporciona potentes herramientas que le


ayudarán a descubrir
Y usar servicios web existentes y desarrollar e implementar nuevos servicios web.
Este capítulo incluye las siguientes secciones:
■ Section 16.1, "About Developing Applications using Web Services"
■ Section 16.2, "Using JDeveloper to Create and Use Web Services"
■ Section 16.3, "Working with Web Services in a UDDI Registry"
■ Section 16.4, "Creating Web Service Clients"
■ Section 16.5, "Creating SOAP Web Services (Bottom-Up)"
■ Section 16.6, "Creating SOAP Web Services from WSDL (Top Down)"
■ Section 16.7, "Creating RESTful Web Services"
■ Section 16.8, "Managing WSDLs"
■ Section 16.9, "Using Policies with Web Services"
■ Section 16.10, "Editing and Deleting Web Services"
■ Section 16.11, "Testing and Debugging Web Services"
■ Section 16.12, "Deploying Web Services"
■ Section 16.13, "Monitoring and Analyzing Web Services"

16.1 Acerca del desarrollo de aplicaciones utilizando servicios Web.


Los servicios Web son un conjunto de protocolos y estándares de programación de mensajería que
Exponer las funciones comerciales a través de Internet utilizando estándares abiertos. Un servicio
web es un
Discreto, componente de software reutilizable que se accede mediante programación a través
de la
Internet para devolver una respuesta.
Puede crear clientes de servicios web para acceder a servicios web existentes. Si utiliza web
Servicios en su aplicación, puede crear bottom-up (desde Java) y
Top-down (a partir de WSDL) servicios web como sigue:
■ Configurar JDeveloper para desarrollar y ejecutar servicios web
■ Crear clientes de servicios web mediante una o más de las siguientes tareas:
- Buscar servicios web en un registro UDDI.
Desarrollo de Aplicaciones utilizando servicios Web. 16-1
Utilizando JDeveloper crear y utilizar servicios Web

- Crear un cliente y clases de proxy para acceder a un servicio web existente a


Incorporarlo en una aplicación
■ Crear servicios web mediante una o más de las siguientes tareas:
- Crear servicios web SOAP desde la aplicación Java subyacente (inferior
Arriba)
- Crear servicios web desde el WSDL (de arriba a abajo).
- Crear servicios web RESTful.
■ Proteger los servicios web mediante directivas
■ Probar y depurar servicios web
■ Implementar servicios web en el Sistema Integrado de WebLogic Server u Oracle WebLogic
Server.
■ Publicar servicios web en un registro UDDI.
Una vez implementado, los servicios web puede ser visitada y utilizada en otros
Las aplicaciones.

16.1.1 descubriendo y utilizando servicios Web.


Puede crear rápidamente un cliente para un servicio web existente con el fin de usarlo en su
Aplicación. Puede ver todos los servicios web en la aplicación en los servicios Web.
Carpeta en la aplicación Navegador.
Además, JDeveloper incorpora un explorador UDDI y puede definir conexiones
A registros UDDI, por ejemplo, a uno dentro de su organización. Para obtener más
Información, consulte Section 16.3, "Working with Web Services in a UDDI Registry".

16.1.2 Desarrollo e implementación de servicios Web


Puede crear servicios web desde las clases Java, la interfaz remota de EJB, y un
ADF Business Components service envuelto como un bean de sesión EJB. El servicio
Web
Asistentes para creación de crear los archivos de implementación para usted, así que una vez que
hayas creado tu
Servicio web el paso final es implementar en servidores de aplicaciones. Para obtener más
información,
Ver Section 16.5, "Creating SOAP Web Services (Bottom-Up)".
Alternativamente, puede crear un servicio web a partir de un WSDL, como una web de arriba a
abajo
Servicio. Para obtener más información, consulte Section 16.6, "Creating SOAP Web Services from
WSDL (Top Down)".
Por último, puede desarrollar servicios web que se basan en la transferencia de estado
representacional
(El resto). Un servicio web RESTful es una sencilla interfaz que transmite datos a través de
una
Interfaz estandarizada (como HTTP) sin necesidad de agregar una capa de mensajería, tales como
Jabón. Para obtener más información, consulte Section 16.7, "Creating RESTful Web Services"
JDeveloper también admite un conjunto estándar de Java a asignaciones de tipo XML. También
puede
Crear serializers personalizados para los tipos de objetos que no son automáticamente compatibles. Para
Si desea más información, consulte Section 16.2, "Using JDeveloper to Create and Use Web
Services".
16.2 Usando JDeveloper crear y utilizar servicios Web
La siguiente información le ayudará a entender más acerca de los servicios web, y
Cómo puede utilizar JDeveloper para crear, configurar y usar.
■ Section 16.2.1, "How to Use Proxy Settings and JDeveloper"

16-2 Guía del usuario para Oracle JDeveloper


Utilizando JDeveloper crear y utilizar servicios Web

■ Section 16.2.2, "How to Set the Context Root for Web Services"
■ Section 16.2.3, "How to Configure Connections to Use with Web Services"
■ Section 16.2.4, "How to Work with Type Mappings"
■ Section 16.2.5, "How to Work with PL/SQL Web Services and Types"
■ Section 16.2.6, "How to Choose Your Deployment Platform"
■ Section 16.2.7, "How to Work with Web Services Code Insight"
■ Section 16.2.8, "How to Migrate JAX-RPC 10.1.3 Web Services"

16.2.1 Cómo utilizar la configuración de proxy y JDeveloper


De forma predeterminada, JDeveloper utiliza la configuración de proxy del
explorador predeterminado en el mismo
La máquina. Si tiene problemas al realizar conexiones desde JDeveloper, por ejemplo,
Conectarse a un servidor de aplicaciones que se encuentra en la misma máquina como
JDeveloper,
Podría necesitar cambiar la configuración del servidor proxy que utiliza.
Por ejemplo, si se conecta a una dirección IP detrás de un servidor proxy, y su
La máquina está también detrás del mismo servidor proxy, asegúrese de que el proxy web.
Preferencias excluir la dirección IP que está intentando conectar.
Cuando se utiliza el analizador HTTP, el analizador es un proxy y todo el tráfico que se
Supervisada por él se enrutan a través de ella, justo como si fuera un servidor proxy normal. Si
Ya tiene una configuración de proxy en JDeveloper, el analizador se asegurará de que el
tráfico
Pasa por el proxy original después de haber pasado a través del analizador.

Para excluir una dirección IP:


1. Elija Herramientas > Preferenciasy seleccione Navegador Web y Proxy.
Para más información en cualquier momento, pulse F1 o haga clic en Ayuda en el
navegador Web y
Diálogo de proxy.
2. Agregar la dirección IP a la lista de excepciones.

Para desactivar el uso del servidor proxy del navegador:


1. Elija Herramientas > Preferenciasy seleccione Navegador Web y Proxy.
Para más información en cualquier momento, pulse F1 o haga clic en Ayuda en el
navegador Web y
Diálogo de proxy.
2. Deseleccione Usar servidor proxy HTTP.

16.2.2 Cómo establecer el contexto raíz para servicios Web.


El contexto raíz aparece como parte del extremo de servicio web para una web generada
Servicio, así que es importante que se establezca en un valor adecuado. Puede establecer el
contexto raíz
A nivel del proyecto.
El servicio web contexto raíz es la cadena que viene después de la porción de host:port
La dirección URL de servicio web. Por ejemplo, si el despliegue de WSDL del servicio web es
WebLogic
Como sigue: http://hostname:7001/financial/GetQuote?WSDL
La ruta de acceso del contexto de este servicio web es financiero.
Para establecer el contexto raíz:
1. Aplicación en el navegador, haga clic con el botón derecho en el proyecto y
elija Propiedades del proyecto
Para abrir el cuadro de diálogo Propiedades del proyecto.

Desarrollo de Aplicaciones utilizando servicios Web. 16-3


Utilizando JDeveloper crear y utilizar servicios Web

Para más información en cualquier momento, pulse F1 o haga clic en Ayuda de las
propiedades del proyecto
El diálogo.
2. Ampliar las rutas de origen de proyecto y seleccione Aplicación Web.

3. Acepte el directorio raíz HTML predeterminado o escriba un nuevo valor.

Haga clic en Examinar para buscar el directorio local.

16.2.3 Cómo configurar conexiones para usar con servicios Web


Usted puede desarrollar servicios web sencillos que puede probar utilizando el Sistema Integrado de
WebLogic
Server. Sin embargo, para desarrollar servicios web más complejos, e implementar servicios web
Necesitará las conexiones apropiadas.
■ Para implementar un servicio web en Oracle WebLogic Server, usted necesita una aplicación
Como se describe en la conexión con el servidor Section 16.12, "Deploying Web Services".
■ Para encontrar servicios web usando una pinza Descripción, descubrimiento e integración
(UDDI) registro, necesita crear una conexión con el registro. Para obtener más
Información, consulte Section 16.3.1, "How to Define UDDI Registry Connections".

16.2.4 Cómo Trabajar con asignaciones de tipo


Los objetos que pueden ser pasados a y desde los servicios web tienen que ser capaces de serializarse
Tipo XML y, a continuación, deserializar volver a su tipo original. Los objetos que están
Se maneja automáticamente los tipos primitivos de Java y ciertos tipos estándar de Java. Si
Desea crear un servicio web usando objetos que no están automáticamente serializar,
Puede escribir su propio serializador personalizado.
Los objetos que pueden ser pasados a y desde los servicios web son aquellas que se ajusten a la
Convenciones JavaBean para los fines de servicios web, un JavaBean es una clase de Java
Que cumpla con las siguientes restricciones:
■ Debe tener un público predeterminado (cero) el argumento del constructor.
■ Debe exponer todos los atributos de interés como descriptores de acceso.
■ Orden de los descriptores de acceso para las propiedades (setMethod() y getMethod())
debe
No importa.
■ Los descriptores de acceso deben escribirse en mayúsculas y minúsculas con la primera letra en
minúsculas. Por ejemplo,
Si un atributo llamado nombre los descriptores de acceso deben ser llamados setName y
getName.
Para obtener más información, consulte la especificación en JavaBean
Http://java.sun.com/javase/technologies/desktop/javabeans/api/in
Dex.html.
Para los servicios web, cada propiedad del objeto debe ser de uno de los tipos de Java que
Se asigna a un esquema XML tipo simple. Éstos se enumeran en la siguiente tabla, que muestra
El primitivo Esquema XML y matrices de tipos primitivos tipos de esquema XML
Admite como parámetros y valores de retorno para los servicios web. Además, un servicio
Método puede aceptar y devolver un único trozo de elemento XML de datos, pasar como un
Org.w3c.dom.El elemento.

Tabla 16-1 Asignación de tipo de esquema XML para tipos de Java


Tipo de Esquema XML Tipo Java
Cadena Java.lang.String.
Valor booleano JAVA.lang.Boolean

16-4 Guía del usuario para Oracle JDeveloper


Utilizando JDeveloper crear y utilizar servicios Web

Tabla 16-1 (Cont.) la asignación de tipo de esquema XML para tipos de Java
Tipo de Esquema XML Tipo Java
Decima Java.lang.Double
Float Java.lang.Float
Doble Java.lang.Double
DateTime Java.util.Date
Tiempo Java.util.Date
Fecha Fecha java.util.GregorianCalendar
Base64Binary Java.lang.Byte[]
NormalizedString Java.lang.String.
Integer Java.lang.Integer
Largo Java.lang.larga
Int Java.lang.Integer
Corto Java.lang.Short
Byte Java.lang.Byte

Servicios web JAX-WS usar la arquitectura Java para vinculación XML (JAXB), descrito en
Http://jcp.org/en/jsr/detail?id=222, para administrar todos los datos
obligatorios
Las tareas. Concretamente, JAXB enlaza método Java firmas y mensajes y WSDL.
Las operaciones y le permite personalizar la asignación mientras automáticamente la
manipulación
Conversión en tiempo de ejecución. Esto hace que sea fácil para usted para incorporar
datos XML y
Funciones de procesamiento de aplicaciones basadas en tecnología Java sin tener que saber
Mucho acerca de XML.

16.2.5 Cómo trabajar con PL/SQL y los tipos de servicios Web


Esta sección describe las limitaciones para que los servicios web de PL/SQL no puede
ser
Creado para una circunstancia particular:
■ Overloaded Program Units
■ BFILE Type
■ BCLOB Type
■ OUT and IN-OUT Parameters
■ Creating PL/SQL web services from PL/SQL records
■ Stored procedures of the same name which are accessible in more than one schema
■ Ref Cursors Return Types
■ SYS Schema
■ Types Declared Within a Package Spec
■ PL/SQL nested tables

Las unidades del programa sobrecargado


Una unidad de programa que comparte su nombre con otra unidad de
programa en el mismo paquete es
Una unidad del programa sobrecargado. En tiempo de ejecución el WSDL puede determinar
qué procesador
Unidad de programa para que se ejecute cuando hay más de una unidad con el mismo
programa
Nombre. Por lo tanto, las unidades de programa PL/SQL no pueden ser desplegadas como
servicios web.

Desarrollo de Aplicaciones utilizando servicios Web. 16-5


Utilizando JDeveloper crear y utilizar servicios Web

Puede evitar el problema de la sobrecarga de las unidades de programas que se pueden adaptar a
Sus requisitos. Considere el siguiente ejemplo de un paquete PL/SQL que contiene
El siguiente programa:
-- Promueve un empleado al rango especificado
Procedimiento promover_emp(empno, rango de número en Número);

-- Promueve un empleado para el rango por encima de su rango actual


Procedimiento promover_emp(empno EN NÚMERO);

Puede solucionar la sobrecarga de tipos en una de las siguientes maneras:


■ Si usted es capaz de cambiar el paquete existente, puede agregar los dos
procedimientos
Se muestra a continuación para el paquete, y publicar los servicios web desde el nuevo
Los procedimientos.
O
■ Puede añadir los dos procedimientos que se indican a continuación en un nuevo paquete, y
publicar el
Los servicios web desde el nuevo paquete.
Los nuevos procedimientos son:
-- Promueve un empleado al rango especificado
Procedimiento promover_emp_para_rank(empno, rango de número en Número)
Es
Comenzar
Promover_emp(empno, rank);
Fin;

-- Promueve un empleado para el rango por encima de su rango actual


Procedimiento promover_emp_para_next_rank(empno EN NÚMERO) es
Comenzar
Promover_emp(empno);
Fin;

BFILE Tipo
El tipo PL/SQL BFILE sólo puede usarse como argumento o como retorno de una función
Valor.

Tipo BCLOB
El tipo BCLOB PL/SQL no es compatible.

Y en los parámetros OUT


Cuando publique un programa unidad con OUT o IN-OUT, estos son los parámetros
Volver a transferir a la persona que llama en una estructura de tipo de retorno con un atributo para
cada uno
O en el parámetro de salida. Por ejemplo, un servicio con la siguiente firma:
Un procedimiento_proc(val1 EN VARCHAR2, val2 en número entero, val3 Out)

Devuelve los valores finales de val2 y val3 en una clase de resultado generado. Puede utilizar
Los métodos de descriptor de acceso de la clase generada para tener acceso a estos valores.

PL/SQL de creación de servicios web a partir de registros de PL/SQL


JDeveloper no le permite crear servicios web directamente desde los paquetes de PL/SQL
Que utilizan registros de PL/SQL. Si su organización utiliza paquetes de PL/SQL que se han
Migrar desde las versiones anteriores de la base de datos de Oracle, puede encontrar que usted
desea
16-6 Guía del usuario para Oracle JDeveloper
Utilizando JDeveloper crear y utilizar servicios Web

Exponer algunas funciones como servicios web y será incapaz de hacerlo porque el
Paquetes aceptar y devolver parámetros que son tipos de registro, en lugar de tipos de objeto.
Puede utilizar Oracle JPublisher sobre los paquetes que contienen los tipos de registro. Para
obtener más
Información, consulte Section 28.3.1, "How to Use JPublisher".
Se produce un archivo SQL que se ejecuta contra la base de datos crear
equivalente
Los paquetes que contienen los tipos de objeto. A continuación, puede utilizar los nuevos
paquetes para crear su
PL/SQL servicios web en la forma habitual.

Procedimientos almacenados del mismo nombre y que son accesibles en más de un


Esquema
Sobre la base de datos Oracle9i Release 2, cuando un procedimiento almacenado o una
función del mismo nombre
Y el mismo nombre de paquete es accesible en más de un esquema, el SQLJ
Traductor invocarse durante la publicación de PL/SQL servicios web fallará.
Para resolver este problema, asegúrese de que los paquetes que se publicarán sólo
son visibles
En un esquema, y que no hay otros paquetes en otros esquemas comparten el mismo
nombre.

Los cursores REF CURSOR los tipos de devolución


No se puede crear un servicio web de paquetes que utiliza ref cursor como tipo de retorno,
Por ejemplo:
Paquete de prueba como
Tipo ref cursor es EmpCurType;
Función de prueba de retorno EmpData.EmpCurType;
Fin;

Esquema SYS
A fin de evitar que un usuario arbitrario asumir SYS privilegio, una conexión no
Especificarse desde el nivel intermedio como SYS. Esto significa que no se puede crear un sitio web
Servicio de un paquete en el esquema SYS.
Si necesita tener acceso a un paquete PL/SQL en el esquema SYS del nivel medio,
para
Ejemplo, para crear un servicio web en JDeveloper, inicie sesión en la base de datos como
SYS y
Ejecutar paquete de concesión de privilegios para el usuario que utilice para crear el
JDeveloper
Conexión de la base de datos.

Los tipos declarados dentro de un paquete espec.


Paquetes de PL/SQL pueden tener tipos declarados dentro del paquete, sin
embargo, estas especificaciones
Los paquetes no se pueden publicar como servicios web. Para evitar esto, crear los tipos fuera
El alcance del paquete.

PL/SQL tablas anidadas


JDeveloper no le permite crear servicios web directamente desde los paquetes de PL/SQL
PL/SQL que utilizan tablas anidadas.
16.2.6 Cómo elegir tu plataforma de despliegue
Cuando se crea un servicio web utilizando los servicios web a los asistentes, se le ofrece a
usted una
Elección de plataformas de implementación, tal y como se define en la Tabla 16-2. La
plataforma que usted elija
Determina las opciones disponibles en el asistente y las bibliotecas que se agregan
A LA GUERRA/archivo EAR para la implementación.

Desarrollo de Aplicaciones utilizando servicios Web. 16-7


Utilizando JDeveloper crear y utilizar servicios Web

Tabla 16-2 Las plataformas de implementación


Despliegue de la plataforma Descripción

J2EE 1.4 con soporte de JAX-RPC para Genera un servicio web JAX-RPC que está configurada para desplegar a
El servidor WebLogic 10.3 Oracle WebLogic Server 10.3.
Java EE 1.5 con soporte para JAX-WS. Genera un servicio web que se aprovecha de la web JAX-WS.
Anotaciones Servicios API, lanzado como parte de Java EE 1. 5. Esta opción proporciona
Apoyo para la implementación en el servidor WebLogic 10.3 con anotaciones de Java
Mediante la especificación de anotación de JAX-WS.
Java EE 1.5 con soporte para JAX-WS RI genera un servicio web JAX-WS para implementar en cualquier contenedor que
Sun apoya la implementación de referencia de JAX-WS.

16.2.7 Cómo trabajar con servicios Web Code Insight


El código de servicios web Insight completan las anotaciones al escribir una clase Java, y
Está disponible para documentos WSDL en el editor XML (es decir, cuando esté escribiendo en
el origen
Ficha). Puede configurar cómo código rápido Insight responde. Puede acceder al código
Página de Insight en JDeveloper desde el menú Herramientas > Preferencias > Editor de código >
Código
Insight.

Nota: Código Insight no funciona con las clases Java para JAX-RPC.
Servicios web, sólo con las clases de Java para servicios web JAX-WS.

Al crear un servicio web JAX-WS desde una clase Java agregando anotaciones en el
Editor de código fuente, el Código Insight características de soluciones rápidas y ayuda de código
están disponibles
Para ayudarle.
Por ejemplo, cuando se crea un servicio web desde una clase Java agregando manualmente los
@WebService anotación, una escarpada línea aparece en virtud de la anotación. Haga clic en la auditoría.
Fijar el icono y elija Configurar el proyecto para servicios web.
Desde el cuadro de diálogo Seleccionar plataforma de despliegue, seleccione uno de los
siguientes JAX-WS.
Plataformas para su servicio:
■ Java EE 1.5, con soporte para anotaciones JAX-WS. En este caso, JDeveloper añade:
- Importar javax.jws.WebService; declaración de la clase
- En el archivo web.xml al proyecto
■ Java EE 1.5, con soporte para JAX-WS de RI. En este caso, JDevleoper añade:
- Importar javax.jws.WebService; declaración de la clase
- Sun-jaxws.xml y web.xml archivos al proyecto
Otros ejemplos incluyen:
■ Puede agregar anotaciones a una política de servicio web JAX-WS y utilizar JDeveloper a
Completar la directiva que desee. Por ejemplo, si introduce @Pol, a continuación, haga clic en
Alt+Entrar usted puede elegir si desea utilizar @Policy, para una política única, o
@Políticas para varias directivas. La declaración de importación correspondiente también se
agrega
A la clase.
■ Si está trabajando en un documento WSDL en el editor de código fuente, puede utilizar
el código
Conclusión para ayudarle a introducir elementos de esquema. Por ejemplo, si introduce < Y
Espere un segundo, aparecerá una ventana emergente en la que puede sel eccionar la
entrada que desee.
■ Si el WSDL del servicio web y obtener archivos de código fuente fuera de sincronización,
puede regenerar el
Servicio web de origen.

16-8 Guía del usuario para Oracle JDeveloper


Utilizando JDeveloper crear y utilizar servicios Web

■ Si cambia el nombre de una clase Java en la clase Java o WSDL, haga clic en el
icono de reparación de auditoría
Y seleccione cómo desea reconciliar la discrepancia.

16.2.8 Cómo migrar JAX-RPC 10.1.3 Servicios Web.


Puede migrar servicios web creados como J2EE 1.4 servicios web JAX-RPC en JDeveloper
10.1.3.n.

Nota: Usted no puede migrar EJB 2.1 porque son servicios web
Desestimado en esta versión de JDeveloper. No se puede migrar la web de JMS.
Los servicios de Oracle porque son de propiedad y ya no son compatibles.

Se realizan las siguientes acciones durante la actualización:


■ Extraer la JAX-RPC 10.1.3 Servicios Web biblioteca y sustituirlo con el JAX-RPC.
Biblioteca de servicios Web de 11g.
■ Regenerar el servicio web como un Oracle WebLogic Server compatible JAX-RPC.
Servicio web. Para obtener más información,
consulte Section 16.5.6, "How to Regenerate Web
Services from Source".
El WSDL no cambia. Después de realizar la actualización, puede usar la Web Editar
Diálogo de servicio para realizar cambios adicionales.
Las limitaciones del servicio migradas son:
■ Servicios web JAX-RPC en esta versión de JDeveloper sólo admite SOAP 1.1, por lo
que
Soporte para SOAP 1.2 se retira.
■ Cualquier adjunto políticas son retirados. Puede adjuntar nuevas políticas
mediante la edición de la web
El servicio y la aplicación de las correspondientes políticas de Oracle WebLogic Server.
Para obtener más
Información, consulte Section 16.9.3, "How to Attach Policies to Web Services".

Nota: JAX-RPC sólo pueden utilizar los servicios web de Oracle WebLogic
Server.
Las políticas de seguridad.

■ Soporte para la versión anterior de stateful servicios se elimina. Puede configurar


Soporte para la versión actual de servicios con estado en el cuadro de diálogo Editar
servicios Web.
Para obtener más información,
consulte Section 16.10, "Editing and Deleting Web Services".
■ Apoyo para el resto se elimina.
■ Recopilación de métodos con tipo de retorno, que no son compatibles, están desactivados
en la
La ejecución.

Para migrar a un servicio web:


1. En el Application Navigator, seleccione Abrir aplicación desde la lista desplegable.
Abra la aplicación que contiene el servicio web.
El asistente de migración se invoca automáticamente que le permite migrar el
Aplicaciones y proyectos. Para más información en cualquier momento, presione F1 o
haga clic en Ayuda
Desde el asistente.
2. En el Webapp 2.5 Migración página del asistente para la migración, deseleccione la

opción Migrar a
Webapp 2.5. JAX-RPC es compatible con la versión 2.4 de web.xml, no la versión 2.5.

Desarrollo de Aplicaciones utilizando servicios Web. 16-9


Trabajar con servicios Web en un registro UDDI.

3. Para actualizar el servicio web, la aplicación Navegador, haga clic en el web


Contenedor de servicio y seleccione Actualizar el servicio Web para WLS JAX-RPC.
Configuración.
4. Lea el mensaje y haga clic en confirmar la actualización Sí. El servicio web se actualiza a
Utilice la JAX-RPC 11g servicios web Biblioteca y regenerada.
5. Si es necesario, modifique el servicio web para realizar cambios adicionales.

16.3 Trabajar con servicios Web en un registro UDDI.


Descripción, detección e integración universales (UDDI) es uno de los estándares y
Los protocolos que sustentan los servicios web. Proporciona un estándar común para la publicación
Y descubrir información acerca de los servicios web. Contiene un navegador que UDDI
Busca un registro UDDI utilizando criterios de búsqueda que usted especifique para buscar servicios
web.
Que se describen mediante lenguaje de descripción de servicios Web (WSDL). Para obtener más
Información acerca de UDDI, incluida la especificación UDDI, consulte las normas en OASIS
Http://uddi.xml.org/.
Las siguientes secciones describen cómo trabajar con servicios web en un registro UDDI:
■ Section 16.3.1, "How to Define UDDI Registry Connections"
■ Section 16.3.2, "How to Configure the View of UDDI Registry Connections"
■ Section 16.3.3, "How to Search for Web Services in a UDDI Registry"
■ Section 16.3.4, "How to Generate Proxies to Use Web Services Located in a UDDI
Registry"
■ Section 16.3.5, "How to Display Reports of Web Services Located in a UDDI
Registry"
■ Section 16.3.6, "How to Publish Web Services to a UDDI Registry"

16.3.1 Cómo definir conexiones registro UDDI.


Puede definir conexiones a registros UDDI, por ejemplo, para explorar su
Registro UDDI interna de la organización. Además, se definen todos registro UDDI.
Las conexiones son accesibles a cualquier área de trabajo o proyecto.
Para obtener más información acerca de UDDI, incluida la especificación UDDI, consulte el OASIS
Normas en Http://uddi.xml.org/.
Las siguientes secciones describen cómo definir conexiones registro UDDI.
■ Section 16.3.1.1, "Creating UDDI Registry Connections"
■ Section 16.3.1.2, "Editing the Name of UDDI Registry Connections"
■ Section 16.3.1.3, "Changing the View of UDDI Registry Connections"
■ Section 16.3.1.4, "Refreshing UDDI Registry Connections"
■ Section 16.3.1.5, "Deleting UDDI Registry Connections"

16.3.1.1 Crear conexiones registro UDDI.


Puede crear una nueva conexión con un registro UDDI. que es público o privado (dentro
Su organización). El registro UDDI. conexión aparece en la paleta de recursos, en
El panel de conexiones.

16-10 Guía del usuario para Oracle JDeveloper


Trabajar con servicios Web en un registro UDDI.

Para crear una nueva conexión:


1. En Navigator, seleccione la aplicación del proyecto.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En el árbol de Categorías, expanda la capa de negocios y seleccione Servicios Web.

4. En la lista de elementos, haga doble clic en registro UDDI. Conexión para iniciar la

creación de
El asistente para la conexión de registro UDDI.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde
dentro de la Creación
El asistente para la conexión de registro UDDI.
Alternativamente, puede crear la conexión directamente en la paleta como recurso
Descrito en Section 6.9, "Using WebDAV with JDeveloper".

16.3.1.2 editando el nombre de conexiones registro UDDI.


Puede editar una conexión existente de registro UDDI para cambiar el nombre de la
Conexión, o para cambiar el URL de la encuesta final.

Para cambiar la encuesta final de un registro:


1. En el menú principal, elija Ver > Paleta de recursos. Por defecto, el Resource
Paleta de colores se muestra a la derecha de la ventana de JDeveloper.
2. En la paleta de Recursos, expanda registro UDDI.

3. Desde el menú de contexto de registro UDDI la conexión que desea editar, seleccione
Propiedades.
La reentrada registro UDDI se inicia el asistente de conexión.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde
dentro de la Creación
El asistente para la conexión de registro UDDI.

16.3.1.3 al cambiar la vista de conexiones registro UDDI.


Puede cambiar el orden en que se enumeran los servicios web en el registro UDDI.
A la vista de categoría vista comercial, o de vista comercial a la vista de categoría. Para
obtener más
Información, consulte Section 16.3.2, "How to Configure the View of UDDI Registry
Connections".

Para cambiar la vista de un registro:


1. En el menú principal, elija Ver > Paleta de recursos. Por defecto, el Resource
Paleta de colores se muestra a la derecha de la ventana de JDeveloper.
2. En la paleta de recursos, ampliar el registro UDDI.

3. Desde el menú de contexto de registro UDDI la conexión que desea editar, seleccione
Perspectiva de Negocio Render Render o perspectiva de categoría.

16.3.1.4 Conexiones refrescante registro UDDI.


Puede actualizar un registro UDDI. conexión para asegurarse de que la información
almacenada bajo
La conexión es hasta la fecha.

Para actualizar una conexión:


1. En el menú principal, elija Ver > Paleta de recursos. Por defecto, el Resource
Paleta de colores se muestra a la derecha de la ventana de JDeveloper.
2. En la paleta de recursos, ampliar el registro UDDI.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


11
Trabajar con servicios Web en un registro UDDI.

3. Desde el menú de contexto del registro UDDI, seleccione la conexión que desea
Actualizar.

16.3.1.5 Conexiones Eliminar registro UDDI.


Cuando ya no se necesitan, puede eliminar un registro UDDI respecto del recurso.
Paleta.

Para eliminar una conexión:


1. En el menú principal, elija Ver > Paleta de recursos. Por defecto, el Resource
Paleta de colores se muestra a la derecha de la ventana de JDeveloper.
2. En la paleta de recursos, ampliar el registro UDDI.

3. Desde el menú de contexto de la conexión de registro UDDI desea eliminar


Elija Eliminar.
4. S e m o s t r a r á u n m e n s a j e p r e g u n t á n d o l e s i d e s e a e l i m i n a r l a c o n e x i ó n . H a g a

clic en
Sí.

16.3.2 Cómo configurar la vista de conexiones registro UDDI.


Cuando se crea la conexión, tal como se describe en Section 16.3.1, "How to Define UDDI
Registry Connections", Se le preguntará si los servicios web en el registro
Muestra en Vista Business o vista de categoría. La vista que elija determinará
Cómo buscar servicios en el registro.

16.3.2.1 eligiendo Vista comercial


Un registro UDDI contiene cuatro tipos de estructura de datos que la
información del grupo acerca de la web
Servicios:
■ BusinessEntity: define la estructura de datos de nivel superior que contiene información
Acerca de la empresa que ofrece el servicio web. Cuando encuentre un servicio web, el
Business se agrega al Explorador UDDI en la paleta de recursos.
■ BusinessService: contiene información descriptiva para una familia de servicios,
Incluyendo el nombre y una breve descripción y la información de categoría.
■ BindingTemplate: contiene información sobre un servicio web y punto de entrada
Las referencias a la interfaz especificada.
■ Estructura tModel: representa la especificación técnica del servicio web. Cuando la
encuentre
Asistente de Servicios Web encuentra un servicio web, también muestra otros servicios web que
Son compatibles con la misma estructura tModel.
Si elige vista comercial, servicios se enumeran debajo de las entidades empresariales y
negocios
Los servicios.

16.3.2.2 elegir la vista de categoría


Si selecciona la Vista por categorías, puede buscar servicios web basados en uno o más de
Las siguientes categorías:
■ Tipos UDDIUDDI : Buscar por tipo.
■ El NAICS: especifique el tipo de industria.
■ ISO 3166: Búsqueda por ubicación.
■ UNSPSC: Búsqueda por tipo de servicio.

16-12 Guía del usuario para Oracle JDeveloper


Trabajar con servicios Web en un registro UDDI.

Cuando busque por nombre, puede escribir todo o parte de un nombre, y puede utilizar
Los comodines. Los resultados son estructuras tmodel donde el nombre de la estructura
tModel que coincidan con los criterios de búsqueda
Criterios. Cuando un número de servicios web tienen la misma estructura tModel, aparecen
en la
Asistente para que pueda elegir el que mejor se adapta a sus necesidades.

16.3.3 Cómo buscar servicios Web en un registro UDDI.


Puede buscar un registro UDDI en conexión el recurso paleta de un servicio web.

Nota: Si va a crear un servicio web de arriba a abajo, puede utilizar el


Buscar servicio Web Asistente para búsqueda conexión desde un registro UDDI.
En la creación de servicios Web en Java desde WSDL asistente.

Para buscar un servicio web en un registro UDDI:


1. Crear un registro UDDI conexión, si es necesario. Para obtener más información, consulte
Section 16.3.1, "How to Define UDDI Registry Connections".
2. En la paleta de Recursos, busque el servicio web. Para obtener más información,

consulte
Section 3.7, "Working with the Resource Palette".

16.3.4 Cómo generar Proxies para utilizar servicios Web ubicada en un registro UDDI.
Puede crear un proxy para un servicio web en un registro UDDI en conexión el recurso
Paleta.

Nota: sólo puede generar un proxy para un servicio web si el servicio


Utiliza un enlace WSDL. Para determinar esto, abra el informe y servicios web
Verificar que la Descripción general de la sección de instancias tModel
El informe es enlace WSDL.

Para generar un proxy:


1. Abrir la paleta de recursos.
En el menú principal, elija Ver > Paleta de recursos. Por defecto, el Resource
Paleta de colores se muestra a la derecha de la ventana de JDeveloper.
2. Vaya al servicio web que desee, o buscarlo.

3. Desplácese al servicio

4. Haga clic con el botón secundario en el servicio y elija Generar un servicio Web Proxy para

lanzar la web
Asistente de proxy de servicio.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde
el asistente.

16.3.5 Cómo visualizar informes de servicios Web ubicada en un registro UDDI.


Puede mostrar un informe de un servicio web en un registro UDDI.

Para visualizar un informe del servicio:


1. En la paleta de Recursos, expanda la conexión de registro UDDI, y vaya a la
Punto final para el servicio.
2. Haga clic con el botón secundario en el servicio y seleccione Ver informe.

Un informe del servicio web se muestran en el editor de código


fuente.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


13
Creación de clientes de servicio Web.

16.3.6 Cómo Publicar servicios Web en un registro UDDI.


Puede publicar un servicio web en un registro UDDI. a través de una conexión con el registro
En el navegador del servidor de aplicaciones. Antes de poder publicar un servic io a UDDI
Registro, usted ya debe tener una conexión con el registro en el catálogo de recursos.
Para obtener más información, consulte Section 16.3.1.1, "Creating UDDI Registry Connections".

Para publicar un servicio web en un registro UDDI:


1. Implementar el servicio web en Oracle WebLogic Server.

Nota: Si va a implementar el servicio web integrado WebLogic


Servidor, entonces el registro UDDI. Para que la publicación debe ser
Local para el Sistema Integrado de WebLogic Server.

2. En Application Server navigator, expanda el nodo de Application Server.

3. Expanda el nodo de servicios web y busque el nodo (que representa el WSDL)


El servicio web que desea publicar.
4. Haga clic con el botón secundario en el nodo WSDL y elija Publicar WSDL a UDDI para lanzar el
Publicar registro UDDI WSDL para el diálogo.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda en el WSDL
para publicar
El diálogo de registro UDDI.

16.4 La creación de clientes de servicio Web.


JDeveloper lo hace fácil de usar un servicio web en su aplicación permitiendo
Crear y clases de proxy de cliente para acceder al servicio mediante la creación de cliente de servicio Web
Y asistente de Proxy. Puede iniciar el asistente al buscar o crear un servicio web.
Alternativamente, puede ejecutar el asistente directamente e introduzca la dirección URL de la
web
Servicio o utilizar el asistente del servicio Web Find para localizar un servicio web en un registro
UDDI.
JDeveloper genera automáticamente el tipo correcto de proxy para un documento o RPC
Estilo de servicio web.

Nota: servicios web JAX-WS no admiten estilo RPC.

Para obtener más información acerca de:


■ Desarrollo de clientes de servicio web, vea "invocar servicios Web" en el Oracle Fusion
Middleware Introducción a servicios web JAX-WS para Oracle WebLogic Server.
■ Asegurar y administrar servicios web y clientes, vea el Oracle Fusion
Seguridad de middleware y la Guía del administrador de servicios Web.
Las secciones siguientes describen cómo crear y usar un servicio web clientes:
■ Section 16.4.1, "How to Create the Client and Proxy Classes"
■ Section 16.4.2, "How to Use Web Service Client and Proxy Classes"
■ Section 16.4.3, "How to View the WSDL Used to Create the Web Service Client"
■ Section 16.4.4, "How to Update the Web Service WSDL at Run Time"
■ Section 16.4.5, "How to Regenerate Web Service Client and Proxy Classes"
■ Section 16.4.6, "How to Manage the Web Service Clients"
16-14 Guía del usuario para Oracle JDeveloper
Creación de clientes de servicio
Web.

■ Section 16.4.7, "How to Reference Web Services Using the @WebServiceRef


Annotation"

16.4.1 Cómo crear el cliente y clases de proxy


Utilizar JDeveloper para crear automáticamente un cliente y clases de proxy para acceder a
un sitio web
Servicio y llamar a sus métodos en su aplicación. Mediante el asistente, también puede
Generar métodos asincrónicos y fijar políticas, según sea necesario.
Puede crear un cliente y clases de proxy para acceder a un servicio web utilizando el crear
Web
Servicio de proxy de cliente y asistente. El asistente genera una nueva clase de servicio
(JAX-WS).
O ramal (JAX-RPC) y la interfaz de servicio para cada puerto expuesto y los enumera en el
Aplicación Navigator. Abre el archivo cliente generada puerto nameClient.java en
El editor de código fuente. Una vez generada, puede llamar a los métodos en su aplicación.

Nota: En algunos casos, es posible que encuentre errores cuando se ejecuta un


sitio web
Cliente del servicio que usted ha creado un servicio web para acceder a la
Internet o utilizando un registro UDDI. Porque son los estándares de los servicios
web.
Todavía en evolución, es posible que los servicios web que usted puede localizar
No cumplen con los estándares más recientes, o las normas que ellos
Conformes pueden no ser compatibles con los admitidos por el servidor
Que se está ejecutando el cliente. Si un cliente de servicios web que tiene
Creado en JDeveloper devuelve un error, examine el mensaje de error y
Considerar la creación de un cliente a otro servicio web que proporciona un
Un servicio similar, pero que sea compatible con el servidor y ejecutar
Sin problemas.

Puede acceder al crear un servicio web proxy de cliente y asistente utilizando uno de los
Los métodos siguientes. Si necesita ayuda para completar el asistente, presione F1 o haga
clic en Ayuda de
En el asistente.

Para crear un cliente y clases de proxy para acceder a un servicio web:


1. En el Application Navigator, seleccione el proyecto que desea utilizar.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, seleccione Servicios Web.

4. En la lista de elementos, haga doble clic en Servicios Web para iniciar la creación de un

servicio Web
Proxy de cliente y asistente.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde
dentro de la Creación
Cliente del Servicio Web Proxy y asistente.

Para crear un cliente y clases de proxy para acceder a un servicio web definidos en
JDeveloper:
1. Haga clic con el botón derecho en el contenedor de servicios web en la aplicación del
navegador y elija:
■ Para un servicio web JAX-WS, crear el cliente para el servicio Web Anotaciones.
■ Para un servicio web JAX-RPC, generar un servicio Web Proxy.
2. Crear un servicio web proxy de cliente y el asistente se abre y se rellena con
El proyecto de servicio Web seleccionado.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


15
Creación de clientes de servicio Web.

Nota: al crear el cliente y clases de proxy web de un EJB.


Servicio que utiliza parámetros de JavaBean, el JavaBean debe implementar
La interfaz java.io.Serializable.

16.4.2 Cómo utilizar Web Service Client y clases de proxy


JDeveloper genera un número de archivos que definir un proxy para el servicio web. Utilizando
Los archivos generados, se pueden desarrollar los siguientes tipos de cliente de servicio web
Aplicaciones:
■ Aplicación cliente independiente
■ Java Standard Edition (SE) aplicación de cliente
■ Componentes Java EE implementado en Oracle WebLogic Server

Nota: Además de los procedimientos descritos a continuación, puede utilizar


Inyección de servicio web (mediante el método @WebServiceRef) para definir
Una referencia a un servicio web e identificar una inyección en su destino
Cliente de servicio web. Para obtener más información, consulte Section 16.4.7, "How to
Reference Web Services Using the @WebServiceRef Annotation"

16.4.2.1 Cómo utilizar una aplicación cliente independiente


Una aplicación cliente independiente, en su forma más simple, es un programa
Java que tiene
Clase pública principal que se invoca con el comando java. Se ejecuta completamente
independiente
De WebLogic Server.

Para utilizar las clases de proxy de cliente generada en un cliente independiente:


1. Abra la clase proxy cliente, llamado port_nameClient.java, en el editor de código fuente.
Este archivo se abre automáticamente cuando se crea el proxy de cliente de servicio web
Inicialmente. Para re-abrir la clase, haga clic con el botón derecho en el contenedor y
seleccionar proxy de cliente
Ir a la clase del cliente o simplemente haga doble clic en el archivo en la aplicación Navegador.
2. Busque el comentario // Agregar su propio código aquí, que se encuentra en un try-

catch
Bloque en el método main, y agregue el código apropiado para invocar a la web
Servicio.
3. Ejecutar el cliente.

16.4.2.2 cómo usar Java Standard Edition (SE) Aplicación de cliente


Incluyen las clases de proxy generadas como parte de Java Standard Edition (SE) Aplicación
Y hacer referencia a ellos para acceder al servicio web remoto.

Para utilizar las clases de proxy de cliente generada en un JSE componente:


1. Copie el cliente genera las clases de proxy para su aplicación JSE directorio de origen.
2. Utilizando la clase proxy cliente principal, denominado port_nameClient.java, como tu
Guía, agregar métodos apropiados para acceder al servicio web desde su aplicación.
3. Ejecutar la aplicación.
16-16 Guía del usuario para Oracle JDeveloper
Creación de clientes de servicio
Web.

16.4.2.3 cómo utilizar el componente Java EE implementado en aplicaciones cliente


WebLogic Server.
En este caso, el servicio web se ejecuta dentro de un Java Platform, Enterprise Edition
(Java EE).
Versión 5 componente desplegados a WebLogic Server como, por ejemplo, un EJB, servlet, u
otro
Servicio web. Este tipo de aplicación cliente, por lo tanto, se ejecuta en un servidor WebLogic
Contenedor.

Para utilizar las clases de proxy de cliente generada en un componente Java EE:
1. Abra la clase proxy cliente principal, denominado port_nameClient.java, en la fuente
Editor.
Este archivo se abre automáticamente cuando se crea el proxy de cliente de servicio
web
Inicialmente. Para re-abrir la clase, haga clic con el botón derecho en el contenedor y
seleccionar proxy de cliente
Ir a la clase del cliente o simplemente haga doble clic en el archivo en la aplicación
Navegador.
2. Sustituir el método main con su propio método(s) para tener acceso al servicio web y
Realizar las operaciones necesarias. Puede utilizar el código generado en el método
main
Como una guía.
3. Implementar el conjunto completo de clases del módulo cliente que JDeveloper ha

generado.
4. Haga referencia a la clase de proxy de cliente en su aplicación Java EE.

16.4.3 Cómo ver el WSDL utilizado para crear el cliente del servicio Web
Puede ver el WSDL que se utilizó para generar el servicio web en el cliente
Siguientes circunstancias:
■ Si está disponible, la copia local del archivo WSDL es mostrada. Al generar la web
Cliente del servicio, usted tiene la opción de copiar el WSDL del servicio web de origen
Su directorio local. Ver Section 16.4.1, "How to Create the Client and Proxy
Classes".

Nota: En la mayoría de los casos, la copia local del WSDL coincidirá con el
WSDL del servicio web remoto. Si el servicio web remoto
Modificado, el WSDL local puede no estar sincronizada con el control remoto
WSDL. Para garantizar que el cliente del servicio web podrán acceder a la
Servicio web remoto, puede regenerar el local utilizando el WSDL.
WSDL remoto, según sea necesario. Ver Section 16.4.5, "How to Regenerate Web
Service Client and Proxy Classes".

■ Si la versión local no está disponible, el WSDL remoto aparece.

Para ver el WSDL cliente:


1. Haga clic con el botón secundario en el cliente de servicios web dentro de la aplicación
Navegador.
2. Seleccione Ir a WSDL desde el menú emergente.

El WSDL es mostrada.
16.4.4 Cómo actualizar el WSDL del servicio Web en tiempo de ejecución
En algunos casos, es posible que necesite actualizar su aplicación para hacer referencia
a un XML importado
Recursos, como WSDLs y XSDs, desde una fuente que es diferente de la que se
Parte de la descripción del servicio web. Redirigir los recursos de esta forma XML

Desarrollo de Aplicaciones utilizando servicios Web. 16-


17
Creación de clientes de servicio Web.

Puede ser necesario para mejorar el rendimiento o para garantizar que su aplicación funcione
correctamente
En su entorno local.
Por ejemplo, un archivo WSDL pueden ser accesibles durante la generación del cliente, pero no
podrán
Ser accesible cuando el cliente se ejecute. Puede que necesite hacer referencia a un recurso que es local
O integrado con su aplicación, en lugar de un recurso que está disponible a través de la
Red.
Puede modificar la ubicación del WSDL que serán utilizados por el servicio web en
Tiempo de ejecución utilizando uno de los siguientes métodos:
■ Archivo de catálogo XML
■ Servicio Web (@WebServiceRef inyección) y un plan de implementación

16.4.4.1 Cómo utilizar un archivo de catálogo XML


Al crear o regenerar un cliente, un servicio web JAX-WS- archivo catalog.xml es
Crear automáticamente en el directorio META-INF. El archivo es compatible con el OASIS
Esquema XML, tal como se describe en el Oasis de catálogos de especificaciones XML
en
Http://www.oasis-open.org/committees/download.php/14809/xml-cata
Registros.html.
Puede actualizar el WSDL del servicio web modificando el atributo uri de la <sistema>
Elemento de la JAX-WS-archivo catalog.xml. El valor especificado se utilizará en tiempo de ejecución.
A continuación se proporciona un ejemplo de catálogo XML (JAX-WS-catalog.xml) para el control
remoto
WSDL:
<catálogo xmln="urn:oasis:names:tc:Entidad:xmlns:xml:catalog".
Prefiere="sistema">
<sistema="http://foo.org/hello?wsdl" systemId
Http://foo.org/hello?wsdl uri="" />
</catálogo>

A continuación se proporciona un ejemplo de catálogo XML (JAX-WS-catalog.xml) para un local


WSDL:
<catálogo xmln="urn:oasis:names:tc:Entidad:xmlns:xml:catalog".
Prefiere="sistema">
<sistema="http://foo.org/hello?wsdl" systemId
Uri="../org/foo/HelloService.wsdl" />
</catálogo>

En los ejemplos anteriores:


■ <catálogo> elemento raíz define el catálogo XML Namespace y establece el
Prefiere el atributo de sistema a sistema para especificar que los partidos son los preferidos.
■ El elemento <sistema> asocia una referencia URI con un identificador de sistema.
16-18 Guía del usuario para Oracle JDeveloper
Creación de clientes de servicio
Web.

Nota: al crear el cliente y clases de proxy para varios web


Servicios en un sistema local que comparten el mismo punto final, para asegurarse
de que
URL es único para cada servicio web en jaxws -catalog.xml, el archivo
Servicio QName se adjunta como texto de anclaje. Por ejemplo:
Http://foo.org/helloworld?wsdl
Podría ser:
Http://foo.org/helloworld#%7Bhttp%3A%2F%2Fexample.com%2F%
7DHelloService?WSDL.

16.4.4.2 cómo utilizar el servicio Web (@WebServiceRef inyección) y un despliegue


Plan
Este método implica los siguientes pasos:
1. Utilizando el @WebServiceRef anotación para definir una referencia a un servicio web y
Identificar un objetivo de inyección.
2. Actualización del plan de implementación y modificando el valor de la WSDL del servicio

web
Que se hace referencia en tiempo de ejecución.

Paso 1: Usando la anotación @WebServiceRef


La anotación @WebServiceRef inyecta un extremo para la interfaz del servicio Web que
Está definido en el archivo web.xml. En el ejemplo siguiente se muestra cómo utilizar el
@WebServiceRef anotación para definir una referencia a un servicio web e identificar un
Destino de inyección.
@WebService
Public Class LoansApprover {
/**
** Servicio de calificación crediticia inyectado desde web.xml
**/
@WebServiceRef(name = "" CreditRatingService)
CreditRating creditRating;

/**
** @Return con código de aprobación de solicitud de préstamo si se aprueba.
**/
Público LoanApplication LoanApprovalReponse approveLoan(la) {
...
}
}

La clase de servicio web para el CreditRatingService está codificada en el archivo web.xml,


como
Se muestra en el siguiente ejemplo:
<?xml version="1.0" encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
Http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
Version="2.5"
Xmlns="http://java.sun.com/xml/ns/javaee">
...
<servicio-REF>
<servicio-ref-name>CreditRatingService</service-ref-name>
<servicio-interface>
Com.somecreditrating.xmlns.clasificación.CreditRating_Service

Desarrollo de Aplicaciones utilizando servicios Web. 16-


19
Creación de clientes de servicio Web.

</interfaz de servicio>
</service-REF>
</web-app>

Paso 2: Actualización del Plan de Implementación


Para modificar el valor de WSDL que se utiliza en tiempo de ejecución, puede generar y
Actualización de un plan de implementación.
Un plan de implementación es un documento XML opcional que se puede usar
para configurar un
Aplicación para la implementación de un entorno de servidor WebLogic. Una implementación
Define el plan de implementación o reemplaza los valores de propiedad que normalmente serían
definidos
En una aplicación de servidor WebLogic descriptores de despliegue. Para actualizar el
Configuración para su aplicación, puede agregar o actualizar variables en la implementación
Planificar, definir tanto la ubicación de las propiedades de descriptor de WebLogic Server y el
Valor a asignar a las propiedades. Para obtener más información, consulte el Oracle Fusion
Implementación de aplicaciones de middleware de Oracle WebLogic Server.
El ejemplo siguiente ilustra un plan de implementación que invalida el valor de la
CreditRatingService WSDL del servicio web, donde:
■ Definición de la variable elemento define la CreditRatingService
Variable y el valor que le asignan.
■ Como parte de la anulación del módulo para el elemento
Préstamo AprobadorApplication-Loan-contexto-root.war,
Asignación variable elemento define la variable y servicio CreditRating
La ubicación exacta dentro del descriptor donde la propiedad se anula.
<?xml version="1.0" encoding="utf-8"?>
Plan de implementación <xmlns="http://www.bea.com/ns/weblogic/deployment-plan"
Xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan
Http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd"
Variables globales="false">
<Nombre de aplicación>producción</application-name>
<definición variable>
<variable>
<nombre>CreditRatingService</name>
<valor>http://www.somecreditrating.com/xmlns/rating?WSDL</valor>
</variable>
Definición </variable>
<module-anulación>
<module-name>producción.ear</module-name>
<module-tipo>oreja</module-type>
<módulo externo-descriptor="false">
<elemento raíz>weblogic-aplicación</root-element>
<uri>META-INF/weblogic-application.xml</uri>
</module-descriptor>
<módulo externo-descriptor="false">
<elemento raíz>Aplicación</root-element>
<uri>META-INF/application.xml</uri>
</module-descriptor>
<módulo externo-descriptor="true">
<elemento raíz>wldf-recurso</root-element>
<uri>META-INF/weblogic-diagnostics.xml</uri>
</module-descriptor>
</module-anulación>
<module-anulación>
<module-name>
16-20 Guía del usuario para Oracle JDeveloper
Creación de clientes de servicio
Web.

Préstamo AprobadorApplication-Loan-contexto-root.La guerra


</module-name>
<module-tipo>guerra</module-type>
<módulo externo-descriptor="false">
<elemento raíz>weblogic-web-app</root-element>
<uri>WEB-INF/weblogic.xml</uri>
</module-descriptor>
<módulo externo-descriptor="false">
<elemento raíz>web-app</root-element>
<uri>WEB-INF/web.xml</uri>
<Asignación variable>
<nombre>CreditRatingService</name>
<xpath>
/Web-app/service-ref/[service-ref-name="CreditRatingService"]/archivo WSDL.
</xpath>
<el funcionamiento>Agregar</operación>
</asignación de variable>
</module-descriptor>
<módulo externo-descriptor="true">
<elemento raíz>weblogic-webservices</root-element>
<uri>WEB-INF/weblogic-webservices.xml</uri>
</module-descriptor>
<módulo externo-descriptor="false">
<elemento raíz>webservices</root-element>
<uri>WEB-INF/Web.xml</uri>
</module-descriptor>
<módulo externo-descriptor="true">
<elemento raíz>webservice-policy-ref</root-element>
<uri>WEB-INF/weblogic-webservices-policy.xml</uri>
</module-descriptor>
</module-anulación>
<config-root>
D:\prom-demo\jdeveloper\mywork\LoanApplication\Deploy\\\plan de producción.
</config-root>
</plan de implementación>

16.4.5 Cómo Regenerar Cliente de Servicios Web y clases de proxy


Hay veces que usted puede necesitar para regenerar el cliente de servicios web y proxy.
Las clases.

Nota: Cuando se vuelva a generar el servicio web cliente y clases de proxy,


JDeveloper descarta cualquier cambio que haya realizado en la clase.
WSDL, o archivos auxiliares desde el cliente fue generado por última vez.

Para regenerar el servicio web client y clases de proxy:


1. Aplicación en el navegador, haga clic con el botón secundario en el nodo cliente de
servicio web que desee
A regenerarse y elija Propiedades en el menú contextual.
El Cliente del Servicio Web Proxy y editor asistente aparece.
2. Seleccione Servicio Web Descripción. (Debería estar seleccionado por defecto).
3. Seleccione Actualizar copia WSDL a partir de WSDL original ubicación si desea
Actualizar el WSDL local utilizando el WSDL en la ubicación original.
4. Haga clic en Aceptar.
Desarrollo de Aplicaciones utilizando servicios Web. 16-

21
Creación de clientes de servicio Web.

La copia local de WSDL se actualiza y el cliente del servicio web y proxy.


Las clases se regenera.

Para regenerar el servicio web client y clases de proxy:


Puede regenerar el servicio web client y clases de proxy de forma rápida y sencilla mediante
El último conjunto de propiedades definidas en el servicio Web cliente y asistente del Editor de Proxy
Y la actual WSDL almacenado localmente como sigue:
■ Aplicación en el navegador, haga clic con el botón secundario en el nodo cliente de
servicio web que desee
Elegir a regenerarse y regenerar el Proxy del servicio Web desde el menú contextual.
La clase de cliente de servicio web, WSDL y respaldar archivos proxy se regeneran.

16.4.6 Cómo administrar los clientes de servicio Web.


JDeveloper proporciona la capacidad para modificar y eliminar clientes de servicio web.

Editar clientes de servicios web:


Puede editar un cliente de servicios web utilizando el Cliente de Servicio Web Proxy y editor. A
Acceder al servicio web y proxy de cliente editor:
1. Haga doble clic en la aplicación cliente dentro del navegador.

2. Haga clic con el botón secundario en el cliente dentro de la aplicación del navegador y

seleccione Propiedades...
Si necesita ayuda para completar el asistente, presione F1 o haga clic en Ayuda desde el
asistente.

Para eliminar clientes de servicios web:


1. En el Application Navigator, expanda el nodo que contiene el servicio web client
Los archivos proxy, package.proxy, y seleccione los archivos.
2. Elija Archivo > Borrar del disco. Puede ignorar cualquier usos JDeveloper encuentra.

3. Expanda el nodo que contiene el servicio web proxy, los archivos de tiempo de ejecución
Package.proxy.runtime, y seleccione los archivos.
4. Elija Archivo > Borrar del disco.

Los archivos son borrados permanentemente.

16.4.7 Cómo hacer referencia a servicios Web mediante la anotación @WebServiceRef


Cuando utilice la interfaz javax.xml.ws.WebServiceRef anotación, puede inyectar un
Referencia a un servicio web en cualquier clase Java administradas por contenedor.
Agregar un @WebServiceRef anotación a su clase Java, de forma rápida y sencilla
Haga clic con el botón derecho del ratón dentro de la clase Java editor en la ubicación que desee
para inyectar en la web
Una referencia de servicio y seleccione una de las siguientes opciones:
■ Seleccione Crear proxy e insertar la referencia en el menú contextual.
Este comando invoca al crear un servicio web proxy de cliente y asistente, permitiendo
Puede generar un cliente de servicios web y clases de proxy. Entonces, el
Javax.xml.ws.WebServiceRef y clases de proxy de servicio web son importados
Y automáticamente una referencia al servicio Web seleccionada es inyectado en el
especificado
Ubicación.
■ Seleccione Insertar referencia proxy desde el menú contextual y, a continuación, seleccione un
Web existente
Servicio proxy desde la lista desplegable.

16-22 Guía del usuario para Oracle JDeveloper


Creación de servicios Web SOAP (Bottom-Up)

El paquete javax.xml.ws.WebServiceRef y clases de proxy de servicio web son


Importa automáticamente y una referencia al servicio Web seleccionado se inyecta a
La ubicación especificada. Si no hay clases de proxy de servicio web están actualmente
disponibles y, a continuación,
Esta opción está desactivada.
El extracto siguiente proporciona un ejemplo del código que se agrega automáticamente a
La clase Java:
Import java.xml.ws.WebServiceRef;
Importar ratingservice.CreditRatingService;
...
/**
** Para servicio de campo WebServiceClient inyectables
**/
@WebServiceRef
CreditRatingService creditRatingService1;
...

Para obtener más información, consulte "Definición de un servicio Web de referencia


utilizando @WebServiceRef
Annotation" en GD.

16.5 Crear servicios Web SOAP (Bottom-Up)


Los servicios Web pueden ser creados mediante dos métodos: desarrollo de arriba hacia abajo o de
abajo a arriba.
Desarrollo bottom-up se refiere al proceso de desarrollo de un servicio web desde el
Aplicación Java subyacente mediante SOAP. Para obtener información acerca del uso de
arriba-abajo
A partir del desarrollo WSDL-ver Section 16.6, "Creating SOAP Web
Services from WSDL (Top Down)".
Las siguientes secciones describen cómo generar diferentes tipos de servicios web desde
Abajo:
■ Section 16.5.1, "How to Create Java Web Services"
■ Section 16.5.2, "How to Use JSR-181 Annotations"
■ Section 16.5.3, "How to Create PL/SQL Web Services"
■ Section 16.5.4, "How to Create TopLink Database Web Service Providers"
■ Section 16.5.5, "How to Use Web Service Atomic Transactions"
■ Section 16.5.6, "How to Regenerate Web Services from Source"
■ Section 16.5.7, "How to Use Handlers"
■ Section 16.5.8, "How to Expose Superclass Methods for JAX-RPC"
■ Section 16.5.9, "How to Handle Overloaded Methods"
■ Section 16.5.10, "How to Set Mappings between Java Methods and WSDL
Operations Using the JAX-RPC Mapping File Editor"

16.5.1 Cómo crear servicios Web de Java.


Puede crear servicios web desde:
■ Las clases Java.
■ Interfaz remota de EJB.
■ ADF Business Components service envuelto como bean de sesión EJB.
Desarrollo de Aplicaciones utilizando servicios Web. 16-

23
Creación de servicios Web SOAP (Bottom-Up)

Los asistentes de creación de servicios web crear los archivos de implementación para usted, así
que una vez que
Han creado el servicio web el paso final es implementarlo.

Antes de empezar:
Si aún no lo ha hecho, establezca un contexto apropiado para el servicio web de raíz.
Para obtener más información, consulte Section 16.2.2, "How to Set the Context Root for Web
Services".

Para crear el servicio web:


1. En el Application Navigator, seleccione el proyecto que contiene la clase Java o EJB
A partir de la cual desea crear un servicio web.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda la capa de negocios y seleccione Servicios Web. En los elementos
Lista, haga doble clic en Servicios Web en Java para iniciar el asistente para crear servicios Web en
Java.
Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga clic
en Ayuda desde dentro
El asistente.

Nota: Seleccione la plataforma de despliegue sólo aparece la página


Primera vez que un servicio web se crean en un proyecto. A partir de entonces, todos los
demás
Servicios web en el mismo proyecto se utilice la misma versión.

16.5.2 Cómo utilizar JSR-181 anotaciones


JSR-181 especifica los servicios web los meta datos, que le permite usar anotaciones para
De forma declarativa para crear y administrar servicios web más fácil. Puede utilizar el
Las anotaciones para los métodos y clases para exponer estos métodos como servicio web
Los puntos finales.
Puede agregar anotaciones JSR-181 para una clase manualmente, elegir que JDeveloper add
A la clase a la hora de crear el servicio web, o agregarlas al editar la web
El servicio utilizando el cuadro de diálogo Editar servicios Web.

Nota: Si elimina las anotaciones utilizando Editar servicios Web.


El diálogo, las anotaciones que se introducen manualmente también se eliminan.

Para agregar anotaciones:


1. Abra la clase Java en el editor de código fuente abierto.
2. En la línea correcta, escriba @ y haga una pausa durante un par de segundos.

Code Insight muestra los valores posibles. Para obtener más información, consulte Section 16.2.7,
"How to Work with Web Services Code Insight".
Para obtener más información, consulte las siguientes referencias:
■ La especificación JSR-181 en http://jcp.org/en/jsr/detail?id=18
■ Especificación JAX-WS en:
Http://jcp.org/aboutJava/communityprocess/mrel/jsr224/index2.
Html
■ Para JWS las anotaciones disponibles con WebLogic Server Véase "JWS anotación
Referencia" en Oracle Fusion Middleware WebLogic Servicios Web referencia para Oracle
WebLogic Server.
16-24 Guía del usuario para Oracle JDeveloper
Creación de servicios Web SOAP (Bottom-Up)

16.5.3 Cómo crear servicios Web de PL/SQL


Crear el servicio Web de PL/SQL asistente facilita la generación de un servicio web desde
Un paquete PL/SQL o un procedimiento almacenado de Java que utiliza tipos de objeto.
Almacenados en Java.
El procedimiento está definido por una especificación SQL que lo invoca, y el PL/SQL Web
Asistente de servicio las trata de la misma manera como paquetes.

Nota: sólo puede crear JAX-RPC PL/SQL Servicios Web. Para obtener más
Información, consulte Section 16.2.6, "How to Choose Your Deployment
Platform".

PL/SQL se pueden implementar servicios web de Oracle WebLogic Server. La

creación de PL/SQL
Asistente de servicio Web utiliza la funcionalidad de Oracle JPublisher para envolver el PL/SQL en
Java para que el servicio pueda ser publicada. Para obtener más información,
consulte Section 28.3.1,
"How to Use JPublisher".
Puede:
■ Crear el servicio web a partir de un proyecto en la aplicación Navegador. En este
Caso, seleccione la conexión a la base de datos y el paquete PL/SQL para generar el
Desde el servicio web.
■ Crear el servicio web desde el paquete PL/SQL en la conexión de base de datos
Nodo en el navegador de base de datos o la paleta de recursos. En este caso, tienes que
Seleccione el proyecto en el que los archivos generados por el servicio web se implementan.
Cabe señalar que:
■ Si edita un servicio web de PL/SQL, asegúrese de que la conexión de la base de
datos todavía
Existe lo contrario recibirá un mensaje de error. Si se ha eliminado la base de datos
Conexión, crear una nueva con el mismo nombre que la conexión original.
■ Existen algunos casos donde un servicio web puede ser creado. Para obtener más
información
Sobre las limitaciones, consulte Section 16.2.5, "How to Work with PL/SQL Web Services
and Types".
■ Implementar servicios web de PL/SQL es similar a implementar otras Web J2EE.
Las aplicaciones. Para obtener más información,
consulte Section 16.12, "Deploying Web Services".

Para crear el servicio web de PL/SQL de un proyecto:


1. En Navigator, seleccione la aplicación del proyecto.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda la capa de negocios y seleccione Servicios Web. En

los elementos
Lista, haga doble clic en PL/SQL para iniciar el servicio Web crear servicios Web de PL/SQL
Asistente.
Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga
clic en Ayuda desde dentro
El asistente.

Para crear el servicio web desde un paquete PL/SQL:


1. En el navegador de base de datos o la paleta de Recursos, expanda la conexión de la
base de datos
Esquema de un nodo, el nodo, el nodo Paquetes, entonces el nodo del paquete.
2. Haga clic con el botón derecho en el paquete PL/SQL cuerpo y elija Publicar como

servicio Web
Iniciar la creación de PL/SQL Service Asistente.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


25
Creación de servicios Web SOAP (Bottom-Up)

16.5.4 Cómo crear TopLink Database Proveedores de servicios Web


Crear TopLink DB Web Service Provider Wizard le permite construir un JAX-WS.
Proveedor de servicios web para una base de datos de TopLink para realizar una de las siguientes
tareas:
■ Acceder a los procedimientos almacenados y funciones
■ Ejecutar una consulta SQL
■ Realizar operaciones CRUD sobre una tabla
Según el tipo de servicio seleccionado, el asistente genera un proveedor de servicios web y
Documento WSDL que pueden implementarse en un servidor de aplicaciones, como
Oracle
WebLogic Server. Implementación de TopLink proveedores de servicios web es similar a implementar
Otras aplicaciones Web J2EE. Para obtener más información, consulte Section 16.12, "Deploying Web
Services".
Cabe señalar que:
■ El asistente genera un servicio web JAX-WS proveedor.
■ Si edita un TopLink del proveedor de servicio de Internet, asegúrese de que la conexión
de la base de datos
Aún existe; de lo contrario se devuelve un mensaje de error. Si se ha eliminado el
Conexión de la base de datos, crear una nueva con el mismo nombre que el original
Conexión.
■ En algunos casos, puede no ser capaz de generar una TopLink del prove edor de servicio
de internet.
Para obtener más información sobre las limitaciones,
consulte Section 16.2.5, "How to Work with
PL/SQL Web Services and Types".

Para crear el proveedor de servicio web TopLink desde un proyecto:


1. En Navigator, seleccione la aplicación del proyecto.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda la capa de negocios y seleccione Servicios Web. En los elementos
Lista, haga doble clic en TopLink DB del proveedor de servicio de Internet para iniciar la
creación de TopLink
Asistente para proveedores de servicio Web.
Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga clic
en Ayuda desde dentro
El asistente.

16.5.5 Cómo utilizar transacciones atómicas del servicio Web


WebLogic los servicios web permiten la interoperabilidad con otras transacciones externas
Los sistemas de procesamiento, como Websphere, JBoss, Microsoft .NET, y así sucesivamente, a través
de los
El soporte de las siguientes especificaciones:
■ WS-Atomictransactions (versiones 1.0, 1.1 y 1.2)
Http://docs.oasis-open.org/ws-tx/wstx-wsat-1.2-spec-cs-01/wst
X-wsat-1.2-spec-cs-01.html
■ WS-Coordinación (versiones 1.0, 1.1 y 1.2)
Http://docs.oasis-open.org/ws-tx/wstx-wscoor-1.2-spec-cs-01/w
Stx-wscoor-1.2-spec-cs-01.html
Estas especificaciones definen un marco extensible para coordinar distribuidos
Un conjunto de actividades entre los participantes. El coordinador es el componente central,
Administrar el estado (coordinación contexto transaccional) y habilitar los servicios web y
Clientes para registrarse como participantes. Para obtener más información acerca de web service
atomic
Transacciones, consulte "Uso de Servicio Web transacciones atómicas" en Oracle Fusion Middleware
Características avanzadas de programación de servicios web JAX-WS para Oracle WebLogic Server.

16-26 Guía del usuario para Oracle JDeveloper


Creación de servicios Web SOAP (Bottom-Up)

Para habilitar transacciones atómicas para una aplicación de servicio web en el nivel de clase o
Método sincrónico nivel (para los métodos sólo de dos vías), utilice uno de los siguientes
Métodos:
■ Agregar @weblogic.wsee.wstx.wsat. anotación transaccional directamente en
La clase Java; el JDeveloper código función Insight puede ayudarle. Para obtener más
Información, consulte Section 16.2.7, "How to Work with Web Services Code Insight".
■ Mediante el Inspector de propiedades, tal y como se describe a continuación.
Para habilitar transacciones atómicas para clientes de servicio web. Utilice uno de los métodos
siguientes:
■ Haga clic con el botón secundario en la anotación @WebServiceRef o servicio web
inyectable, destino
Y seleccione Agregar en el menú transaccional para agregar la @Transactional
Anotación.
■ Pase el weblogic.wsee.wstx.wsat.TransactionalFeature como
Parámetro al crear el proxy de servicios web o envío. Para obtener más información,
Consulte "Uso de Servicio Web transacciones atómicas" en Oracle Fusion Middleware
Características avanzadas de programación de servicios web JAX-WS para Oracle WebLogic Server.
Al habilitar el servicio web transacciones atómicas, configurar la siguiente información:
■ Versión: versión del servicio web transacción atómica coordinación contexto que es
Utilizado para servicios web y clientes. Para los clientes, especifica la versión utilizada por
Sólo los mensajes salientes. El valor especificado debe ser uniforme en toda la
Transacción. Los valores válidos son WSAT10, WSAT11, y WSAT12y default.
El valor predeterminado para los servicios web son las tres versiones (impulsada por
el entrante
Petición); el valor predeterminado para los clientes de servicios web es WSAT10.
■ Tipo de flujo: Indicador que especifica si el contexto de coordinación se pasa con el
El flujo de transacciones. La siguiente tabla resume los valores válidos y sus
Significado en el servicio web y el cliente. En la tabla también se resume el valor válido
Combinaciones al configurar el servicio web transacciones atómicas para un EJB-style
Servicio web que utiliza el @TransacationAttribute anotación.

Tabla 16-3 Configuraciones de transacción


EJB válido
@TransactionAttrib
Valor Cliente de Servicios Web Servicio Web Valores de ute
Nunca Transacción JTA: No : ¿Existe flujo de Nunca, no_
Transacción de transacciones Compatible,
exportación No importar la transacción Necesario,
Contexto de coordinación. Contexto de coordinación. Si REQUIRES_NEW,
el Admite
Ninguna transacción JTA: ¿
CoordinationContext
No transacciones de El encabezado contiene
exportación Mustunderstand="true",
Contexto de coordinación. Fallo SOAP es lanzada.

No hay flujo de transacciones:


No importar la transacción
Contexto de coordinación.
Admite Transacción JTA: Export El flujo de transacciones existe: Admite, requerido
(Valor Coordinación de transacciones de importación Contexto de transacción.
predetermina
do).
Contexto. No hay flujo de transacciones:
Ninguna transacción JTA: ¿ No importar la transacción
No transacciones de Contexto de coordinación.
exportación
Contexto de coordinación.
Desarrollo de Aplicaciones utilizando servicios Web. Del
16 al 27
Creación de servicios Web SOAP (Bottom-Up)

Tabla 16-3 (Cont.) Configuraciones de transacción


EJB válido
@TransactionAttrib
Valor Cliente de Servicios Web Servicio Web Valores de ute
Obligatorio : exportación El flujo de transacciones existe: Obligatorio,
transacción JTA
Coordinación de transacciones de importación Contexto Necesario, admite
de transacción.
Contexto. No hay flujo de transacciones:
Ninguna transacción JTA: La excepción es del lado del servicio
Se produce la excepción. Arrojados.

Para habilitar el servicio web transacciones atómicas en la clase Java:


1. Abra la clase de servicio web en el editor de código fuente.
2. Puede utilizar el código JDeveloper Insight para ayudarle.

Comience a escribir la anotación, por ejemplo, @Transactional. Cuando se pausa, o


Haga clic en Ctrl+Mayús+Espacio, aparecerá una ventana emergente desde la que puede
elegir el correcto
Entrada para completar la declaración.
3. Puede especificar la versión y el tipo de flujo valores como sigue:
@Transactional(versión=.Versión transaccional.[WSAT10|WSAT11|WSAT12|default],
Value=.TransactionFowType transaccional.[obligatorio|admite|Nunca])

Para habilitar el servicio web transacciones atómicas en el Inspector de propiedades:


1. Con la clase de servicio web en el editor de código fuente abierto, elija la propiedad View
Inspector para abrir el Inspector de propiedades.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde dentro
de la propiedad
Inspector.
2. Con el cursor en la clase pública, @WebService, o método de dos vías de la línea
Clase, desplácese hasta el nodo de extensiones de Servicios Web en el Inspector de
propiedades.
3. Seleccione Agregar Transactional.

El Inspector de propiedades se actualiza para mostrar las opciones para establecer el tipo de
flujo y
Versión. Para obtener más información acerca de las opciones de configuración,
consulte Table 16–3.
4. Seleccione un tipo de flujo de la corriente de la lista desplegable Tipo. Los valores válidos son:
Admite, Nuncay obligatoria. Este campo tiene un valor predeterminado de soportes.
5. Seleccione una versión de la lista desplegable Versión. Los valores válidos son: WS-A
1.0, WS-AT -AT WS 1.1 , 1.2, y Default. El valor predeterminado para web
Servicios es las tres versiones (impulsada por la solicitud entrante); el valor predeterminado
Para clientes de servicios web WS-en 1.0.

Para habilitar el servicio web transacciones atómicas en un servicio web inyectable del cliente
Destino:
1. Abra el cliente de servicio web en el editor de código fuente.
2. Haga clic con el botón secundario en la anotación @WebServiceRef o inyectables y seleccione

Destino
Agregar en el menú transaccional.
La anotación @Transactional se agrega al cliente de servicio web.
3. Puede especificar la versión y el tipo de flujo valores como sigue:
@Transactional(versión=.Versión transaccional.[WSAT10|WSAT11|WSAT12|default],
Value=.TransactionFowType transaccional.[obligatorio|admite|Nunca])

16-28 Guía del usuario para Oracle JDeveloper


Creación de servicios Web SOAP (Bottom-Up)

Para obtener más información acerca de las opciones de configuración,


consulte Table 16–3.

16.5.6 Cómo regenerar los servicios Web desde el origen


Hay veces que usted puede necesitar para regenerar su servicio web. Por ejemplo, si la
Fuente desde la cual el servicio fue originalmente generado ha cambiado.

Nota: Cuando se vuelva a generar el servicio web, JDeveloper descartes


Los cambios que haya realizado en el WSDL desde la última vez que se
Generado.

Después de regenerar el servicio web, puede que sea necesario regenerar el cliente a la

web
Servicio. De lo contrario, puede obtener errores de compilación (cuando el cliente está en la
misma
Proyecto como el servicio web), o los errores en tiempo de ejecución (cuando el cliente está en
un proyecto diferente
Al servicio web).
Si no está usando anotaciones y cambiar el nombre del método en el subyacente
Clase, cuando se vuelva a generar el servicio recibirá un mensaje de error indicando
Los métodos que no fueron seleccionados. Porque los métodos son rastreados utilizando
espacios de nombres, si
Modificar el espacio de nombres JDeveloper no es capaz de determinar qué se necesita
Regenerado. Para corregir este error, haga doble clic en el servicio web para abrir el contenedor
Servicios Web Editor, vaya a la página de métodos, y seleccionar los métodos sobre el cual basar
El servicio web.

Para regenerar un servicio web desde la fuente:


1. Aplicación en el navegador, haga clic con el botón derecho en el contenedor de
servicio web que desee
Regenerar.
2. Elija Regenerar Servicio Web desde código fuente en el menú contextual.
El servicio se regenera automáticamente, y los cambios realizados en el archivo WSDL
Desde la última vez que se generó se pierden.

16.5.7 Cómo usar handlers


JDeveloper permite especificar las clases de controlador para tratar con el servicio web
Mensaje. Los administradores pueden utilizar parámetros inicializados, jabón roles o
encabezados de SOAP.

Para definir controladores:


1. Crear un servicio web. Para obtener más información,
consulte Section 16.5.1, "How to Create
Java Web Services".
O
Abra el editor del servicio web. Para obtener más información,
consulte Section 16.10, "Editing and
Deleting Web Services".
2. En la página Detalles del controlador, introduzca los valores que desee utilizar.

Para más información en cualquier momento, presione F1 o haga clic en Ayuda en el


cuadro de diálogo.

16.5.8 Cómo exponer los métodos de la superclase para JAX-RPC.

Nota: para servicios web JAX-WS, métodos de la superclase son siempre


Expuestos.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


29
Creación de servicios Web SOAP (Bottom-Up)

Exponer los métodos de la superclase para JAX-RPC, considere los siguientes dos ejemplos:
Paquete mypackage;
Forma Clase pública {
Public void area() {
}
}

Y
Paquete mypackage;
Public Class Circle amplía la forma {
Círculo público() {
}
Public void callParentMethod() {
Super.area();
}
}

En la clase Circle, que se extiende forma, hay un método público


CallParentMethod() que se encarga de llamar al método de la clase padre
La zona. Para llamar al método de la superclase area(), cree un web Java J2EE en el servicio
Clase Circle utilizando el método público callParentMethod().

16.5.9 Cómo Manejar métodos sobrecargados.


Si la clase Java en el que basar un servicio web tiene métodos sobreca rgados, JDeveloper
Gestiona automáticamente. Sin embargo, si crea un J2EE 1.4 y, a continuación, servicio web
Cambiar la clase en la que se basa, de manera que un método existente se convierte en un
Método sobrecargado tienes que tomar acción para actualizar el archivo de asignación.
El procedimiento para manejar los métodos sobrecargados depende del tipo de servicio web que
Se están desarrollando, JAX-WS o JAX-RPC.

Manejo de métodos sobrecargados para servicios web JAX-WS


Para servicios web JAX-WS, puede usar la anotación @WebMethod para cambiar la
Nombre de un método sobrecargado. Por ejemplo:
Public Class SimpleImpl {
@WebMethod(Operación nombreoperación="sayHelloOperation")
Cadena pública sayHello(string mensaje) {
System.out.println("sayHello:" + Mensaje);
Volver "Aquí está el mensaje: '" + Mensaje + "'".
}
...
}

En el ejemplo, el método sayHello() del archivo JWS SimpleImpl se expone como un


Operación pública del servicio web. La operación nombreoperación atributo especifica, sin
embargo,
Que el nombre público de la operación en el archivo WSDL es sayHelloOperation.
Para obtener más información acerca de @WebMethod, consulte el apartado "Cómo especificar
que un método JWS
Expuesta como una operación pública (@y @WebMethod OneWay anotaciones)" en Oracle
Fusion Middleware Introducción a servicios web JAX-WS para Oracle WebLogic Server.

Manejo de métodos sobrecargados para servicios web JAX-RPC.


Para servicios web JAX-RPC, hay dos maneras en que usted puede manejar sobrecargado
Métodos:
■ Modificar manualmente el archivo de asignación
16-30 Guía del usuario para Oracle JDeveloper
Creación de servicios Web SOAP desde WSDL (de arriba
abajo)

■ Elimine el archivo de asignación y recrear el servicio web

Para modificar manualmente el archivo de asignación


Después de crear el servicio web basado en la clase Java, agregue el método
sobrecargado
A la clase.

Para eliminar el archivo de asignación y recrear el servicio web


1. En el navegador de aplicaciones, ampliar el contenido de la web y WEB-INF.
2. Haga clic con el botón derecho del ratón <web_service>-java-wsdl-mapping.xml y

elija Eliminar.
3. Abra el editor del servicio web. Para obtener más información,

consulte Section 16.10, "Editing and


Deleting Web Services".
4. Haga clic en Aceptar para cerrarlo y regenerar el servicio.

16.5.10 Cómo establecer correlaciones entre los métodos de Java y las operaciones con el WSDL.
JAX-RPC Editor de archivos de asignación
Mapas de JAX-RPC para tipos de Java definiciones WSDL. Sin embargo, cuando los
tipos que desea
Apoyo no son cubiertos por la especificación JSR-109, o cuando desee utilizar
Diferentes asignaciones para proporcionar la funcionalidad de su servicio web requiere,
puede utilizar
El archivo de asignación de JAX-RPC Editor para modificar un archivo de asignación existentes o
para crear su
Los propios.
El archivo de asignación de JAX-RPC Editor es un editor de esquemas especializados-driven
que ayuda
Puede crear un archivo de asignación compatible con JSR-109 para J2EE 1.4 de servicios
web. El
Archivo de asignación estandariza las asignaciones de WSDL Java- y, en general, tienes que
Proporcionar un mapeo completo sólo cuando la asignación predeterminada reglas en JSR-
109 no son
Satisfecho.
Estas características están disponibles mientras usted está usando el archivo de asignación de
JAX-RPC Editor:
■ Mientras escribe, puede invocar código Insight pausando después de teclear el <
(Corchete de apertura), o pulsando Ctrl+espacio (si está utilizando la clave predeterminada.
Mapping). Code Insight abre una lista con los elementos válidos según el esquema.
■ Puede seleccionar Ver > Paleta de componentes para abrir la paleta de colores y seleccione
uno de
Las páginas disponibles en la lista desplegable.
■ Los elementos de un archivo de mapa se muestran jerárquicamente en
la ventana Estructura,
Que también muestra los errores de sintaxis XML encontrado como escribir y editar.
Puede
Haga doble clic en un elemento para editarlo o error en el archivo de asignación de JAX-
RPC Editor.
■ Puede hacer clic con el botón derecho sobre un elemento XML en el editor y seleccione
Buscar en
Estructura para ampliar la estructura de la ventana para mostrar el elemento y
selecciónelo.
Mientras se edita, puede hacer clic con el botón derecho en el archivo y elija Abrir
Sangría automática
XML guión correctamente los elem entos.
■ En un abrir el archivo de asignación de JAX-RPC ventana del editor, o en la ventana
Estructura
Con el servicio Web seleccionado en la aplicación Navegador, haga clic con el
botón secundario en una asignación
Archivo y elija Validar WSDL. La validación validará el comando WSDL
XML contra los esquemas registrados.

16.6 Crear servicios Web SOAP desde WSDL (de arriba abajo)
JDeveloper le permite desarrollar servicios web de arriba a abajo, es decir, comenzando con
el
WSDL. JDeveloper generará una implementación del servicio y su implementación

Desarrollo de Aplicaciones utilizando servicios Web. 16-


31
Creación de servicios web RESTful

Descriptores. Puede buscar un archivo WSDL en el sistema, o usar el servicio Web Buscar
Asistente para buscar un servicio web en un registro UDDI. Conexión en la paleta de recursos.

Para crear un servicio web SOAP desde WSDL (de arriba a abajo):
1. En la aplicación Navegador, seleccione el proyecto en el que desea crear el
Servicio web.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda la capa de negocios y seleccione Servicios Web. En los elementos
Lista, haga doble clic en Java desde WSDL del servicio Web para iniciar la creación de Java Web
Desde WSDL del servicio de asistente.
Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga clic
en Ayuda desde dentro
El asistente.
El servicio web SOAP se crea y la implementación de Java class está abierto
Automáticamente en el editor

16.7 La creación de servicios web RESTful


Representational State Transfer (REST) describe cualquier interfaz simple que transmite
Datos a través de una interfaz estandarizada (como HTTP) sin una mensajería adicionales
Capa, tales como el jabón. Resto proporciona un conjunto de reglas de diseño para la creación de
servicios de apátridas
Que son vistos como recursos o fuentes de información específica, y puede ser identificado
Por su singular URIs. Un cliente tiene acceso al recurso utilizando el URI, estandarizadas
Conjunto fijo de métodos, y una representación del recurso se devuelve. El cliente dice
Para transferir el estado con cada nuevo recurso de representación.
Cuando se utiliza el protocolo HTTP para acceder a recursos de descanso, el identificador del
recurso es
La URL del recurso y de la operación estándar a realizarse en ese recurso es
Uno de los métodos HTTP: GET, PUT, DELETE, POST, o la cabeza.
Las siguientes secciones describen cómo crear servicios web RESTful y clientes:
■ Section 16.7.1, "How to Add the Jersey JAX-RS Reference Implementation to Your
Project"
■ Section 16.7.2, "How to Create JAX-RS Web Services and Clients"

16.7.1 Cómo agregar el Jersey JAX-RS a su proyecto de implementación de referencia


Antes de poder crear servicios web RESTful en JDeveloper, necesitará descargar e
Agregar al proyecto el Jersey JAX-RS la implementación de referencia (RI). El jersey
JAX-RS Http://jersey.java.net RI está disponible en. Haga clic en Descargar para
obtener más
Información sobre el Jersey RI y descargar el archivo ZIP que contiene el correspondiente
Biblioteca de archivos JAR. Una vez descargado, debe agregar el Jersey RI a su proyecto.

Nota: El Jersey RI 1.1.5.1 (jersey-archive-1.1.5.1) versión o


Anterior es compatible con esta versión de JDeveloper.

Para agregar el Jersey JAX-RS RI a su proyecto:


1. Con el proyecto seleccionado en la aplicación Navegador, abra las propiedades del proyecto
El diálogo.
Para mostrar el cuadro de diálogo, haga doble clic en la carpeta de proyecto o seleccione Editar >
Propiedades.
2. Seleccione el nodo Classpath y bibliotecas.

16-32 Guía del usuario para Oracle JDeveloper


Creación de servicios web RESTful

3. Sobre las bibliotecas y Classpath página, haga clic en Agregar biblioteca.


4. En el diálogo Añadir biblioteca, haga clic en Nuevo.

5. En el cuadro de diálogo Crear biblioteca, escriba un nombre para la nueva biblioteca

(por ejemplo,
JAX-RS) y seleccione su ubicación.
6. Habilitar desplegadas por defecto.

Nota: Si no se selecciona esta casilla de verificación, podrá experimentar


errores
Durante el despliegue de sus servicios web RESTful y clientes.

7. Seleccione la ruta de la clase y haga clic en Agregar entrada.

8. En el cuadro de diálogo Seleccionar ruta de entrada, desplácese hasta el directorio

lib de la Jersey archive.


Por ejemplo, c:\mylibraries\jersey-archive-1.1.5.1\lib.
9. Seleccione todos los archivos jar en el directorio lib y haga clic en Seleccionar.

Nota: Si está desarrollando servicios web RESTful solamente (es decir,


No están desarrollando clientes RESTful), usted no tiene que incluir el
Jersey-client-1.1.5.1.jar. Del mismo modo, si está desarrollando web RESTful
Sólo clientes del servicio, usted no tiene que incluir el
Jersey-server-1.1.5.1.jar.

10. Si ha descargado los archivos de código fuente, puede definir la ruta de origen para

que apunte a la
Archivos fuente (similar a la forma en que se define la ruta de la clase en el anterior
Pasos).
11. En el cuadro de diálogo Crear biblioteca, haga clic en Aceptar.

12. En el diálogo Añadir biblioteca, haga clic en Aceptar.

13. En la página de Bibliotecas y Classpath, si haya finalizado, haga clic en Aceptar .

Una vez que haya agregado el Jersey JAX-RS RI a su proyecto, entonces puede crear JAX-RS.
Servicios web y clientes.

16.7.2 en Cómo crear servicios web JAX-RS y clientes


Después de haber agregado el Jersey JAX-RS RI a su proyecto, puede empezar a crear
Servicios web JAX-RS y clientes utilizando JDeveloper. Todo el código fuente de Java
estándar
Las características del editor trabajará con el JAX-RS llamadas, como code insight, importar
Asistencia, y así sucesivamente.
Para obtener más información acerca de JAX-RS y muestras, puede resultarle útil para
revisar
El Jersey RI documentación en: http://wikis.sun.com/display/Jersey/Main.
Una vez que crea tus servicios web RESTful, puede probarlos con HTTP
Analizador. Para obtener más información,
consulte Section 16.13.4, "How to Examine Web Services
using the HTTP Analyzer".
Nota: Si experimenta errores durante el proceso de implementación de su
Servicios web RESTful y clientes, asegúrese de que ha seleccionado la
Casilla de verificación Implementado por defecto al añadir el Jersey JAX-RS RI
Su proyecto.

Desarrollo de Aplicaciones utilizando servicios Web. 16-

33
Creación de servicios web RESTful

Un simple ejemplo Hello World


Example 16–1 Proporciona un ejemplo muy sencillo de una servicios web RESTful:

Ejemplo 16-1 servicios web RESTful


Ejemplos de paquete.helloworld.

Importar javax.ws.rs.GET;
Importar javax.ws.rs.Path.
Importar javax.ws.rs.produce;

// Especifica la ruta de acceso al servicio RESTful


@Path("/helloworld")
Public Class helloWorld {

// Especifica que el método procesa peticiones HTTP GET


@Obtenga
@Path("sayHello")
@Produce("text/plain")
Cadena pública sayHello() {
Volver "Hello World!".
}
}

Example 16–2 Proporciona un descanso simple cliente que llama al servicio web RESTful
Previamente definido. Este ejemplo utiliza las clases que son proporcionados por el Jersey JAX-RS RI
Concretamente; no forman parte del estándar de JAX-RS.

Ejemplo 16-2 cliente RESTful


Ejemplos de paquete.helloworld.client.

Importar com.sun.jersey.api.client.Client.
Importar com.sun.jersey.api.client.WebResource;

Public Class helloWorldClient {


HelloWorldClient público() {
Super();
}

Public static void main(String[] args) {


El cliente c = Cliente.create();
WebResource recursos = c.resource(
"Http://localhost:7101/RESTfulService-Project1-context-root/
Jersey/helloWorld");
Respuesta cadena = resource.get(String.class);
}
}

Sobre el archivo web.xml.


JDeveloper no añade automáticamente la clase servlet en el archivo web.xml. En su lugar,
Se le pedirá que confirme si desea agregarlo cuando llame a JAX-RS.
Método a partir de su código. Por ejemplo, consulte Figure 16–1.

16-34 Guía del usuario para Oracle JDeveloper


Gestión WSDLs

Figura 16-1 mensaje para confirmar la actualización

Nota: ¿Por qué es el archivo web.xml no se actualizan automáticamente? En el


En el futuro, cuando se implementa un contenedor Java EE 6.0, una actualización de
la
Web.xml no será necesario. Por lo tanto, esta se configura como un opcional
La actividad.

Para actualizar el web.xml:


Para actualizar el web.xml, seleccione Configurar web.xml para Jersey JAX-RS como servicios
web
Siguiente:
<?xml version="1.0" encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
Http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
Version="2.5" xmlns="http://java.sun.com/xml/ns/javaee">
<servlet>
<servlet-name>jersey</servlet-name>
<servlet-class>
Com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<cargar en el inicio>1</carga en el inicio>
</servlet>
<servlet-mapping>
<servlet-name>jersey</servlet-name>
<url-patrón>/jersey/*</patrón de URL>
</servlet-mapping>
</web-app>

16.8 Administrar WSDLs


JDeveloper proporciona un número de maneras que usted puede administrar WSDLs para
un servicio web
Como se describe en las siguientes secciones:
■ Section 16.8.1, "How to Create WSDL Documents"
■ Section 16.8.2, "How to Add a WSDL to a Web Service Project"
■ Section 16.8.3, "How to Display the WSDL for a Web Service"
■ Section 16.8.4, "How to Save a WSDL to Your Local Directory"

16.8.1 Cómo crear documentos WSDL


Puede crear un documento WSDL, por ejemplo, para crear un servicio web de arriba a abajo.

Para crear un archivo WSDL:


1. En el Application Navigator, seleccione el proyecto que contiene la clase Java o EJB
A partir de la cual desea crear un servicio web.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda la capa de negocios y seleccione Servicios Web. En

los elementos
Lista, haga doble clic en el documento WSDL para abrir el cuadro de diálogo Crear
documento WSDL.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


35
Gestión WSDLs

Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga clic
en Ayuda desde dentro
El cuadro de diálogo.

16.8.2 Cómo agregar un WSDL para un proyecto de servicio Web


Puede generar un archivo WSDL para un servicio Web y agregarlo al proyecto utilizando el
Los procedimientos descritos a continuación. El archivo WSDL es generada automáticamente y se
agrega a
El WEB-INF/wsdl directorio para aplicaciones Web y para el META-INF/wsdl
Directorio para aplicaciones EJB dentro del proyecto. Además, el @WebService
La anotación se actualiza con el atributo wsdlLocation para hacer referencia a la ubicación de la
WSDL local. Por ejemplo:
@WebService(wsdlLocation="WEB-INF/wsdl/CreditRatingService.wsdl")

Nota: Si ya existe un archivo WSDL EN EL WEB-INF/wsdl o


META-INF/wsdl directorio, se le solicitará si desea o no
Sobrescribir el archivo WSDL.

Para agregar un archivo WSDL para un proyecto de servicio web:


Aplicación en el navegador, haga clic con el botón secundario en el servicio web para la que
desea agregar un
WSDL y seleccione Generar WSDL y agregar al proyecto desde el menú contextual. El
WSDL es generado automáticamente y agregado al proyecto en el WEB-INF/wsdl
Directorio.

16.8.3 Cómo mostrar el WSDL para un servicio Web.


Puede mostrar el WSDL para un servicio web. El archivo WSDL es generada basada en la
Anotaciones definidas en el servicio web a un directorio temporal y se muestran.

Para mostrar el WSDL para un proyecto de servicio web:


Aplicación en el navegador, haga clic con el botón secundario en el servicio web para la que
desea
Mostrar el WSDL y seleccione Mostrar WSDL para las anotaciones del servicio Web
Menú contextual.
El WSDL es generado en un directorio temporal y se muestran.

16.8.4 Cómo guardar un WSDL a su directorio local


Al ver una remota WSDL para un servicio web, puede guardar el WSDL a su local
Directorio.

Nota: Si desea usar el WSDL dentro de un proyecto de servicio web


Usted necesita copiar a una ubicación que es accesible por el proyecto
(Por ejemplo, directorio WEB-INF/wsdl para aplicaciones Web y
META-INF/wsdl para aplicaciones EJB) y actualizar el @WebService
La anotación para hacer referencia a la ubicación del WSDL.

Para guardar un archivo WSDL en el directorio local:


1. Mostrar el archivo WSDL del servicio web.
2. Elija Herramientas > Copiar localmente WSDL.
16-36 Guía del usuario para Oracle JDeveloper
Uso de directivas con servicios Web.

3. En el cuadro de diálogo Seleccionar destino de WSDL, desplácese a la ubicación que


desee
Para guardar el archivo WSDL, o introduzca la ubicación del directorio en el cuadro de texto
Nombre y haga clic en
Seleccione.
El WSDL se guarda en la ubicación especificada.

16.9 Uso de directivas con servicios Web.


Esta sección describe cómo usar las directivas con servicios web creados en JDeveloper.
Puede utilizar los siguientes tipos de directivas:
■ Oracle Web Service Manager (WSM) Oracle-fijar políticas sólo políticas de seguridad
A servicios web JAX-WS.
■ Políticas de servicio web Oracle WebLogic a adjuntar a web JAX-WS o JAX-RPC
Los servicios.
No se pueden mezclar los dos tipos de directivas en el mismo servicio web, por lo que
debería
Decidir cuál usar en la etapa de planificación. Una vez que haya agregado las políticas de un
tipo A
El servicio web, no puede cambiar a otro tipo sin eliminar las políticas
Que están conectados actualmente. Por ejemplo, si tiene configurado Oracle políticas WSM
Y más tarde decide que desea utilizar Oracle WebLogic web políticas de servicio, debe
Eliminar el Oracle WSM políticas antes de que usted pueda fijar el servicio web Oracle WebLogic
Las políticas.
Las siguientes secciones describen cómo utilizar políticas con servicios web:
■ Section 16.9.1, "What You May Need to Know About Oracle WSM Policies"
■ Section 16.9.2, "What You May Need to Know About Oracle WebLogic Web Service
Policies"
■ Section 16.9.3, "How to Attach Policies to Web Services"
■ Section 16.9.4, "How to Attach Oracle WSM Policies to Web Service Clients"
■ Section 16.9.5, "How to Invoke Web Services Secured Using WebLogic Web Service
Policies"
■ Section 16.9.6, "How to Edit and Remove Policies from Web Services"
■ Section 16.9.7, "How to Use Custom Web Service Policies"
■ Section 16.9.8, "How to Use a Different Oracle WSM Policy Store"

Antes de empezar:
Un examen detallado de todas las tareas que se deben realizar para
utilizar directivas está fuera del
El alcance de esta guía, pero en general los pasos que debe realizar son:
1. Decidir sobre las políticas que va a utilizar. Para obtener más información, consulte la

sección "Determinación de
Que las políticas de seguridad de uso" en el Oracle Fusion Middleware y seguridad
Guía del administrador de servicios Web.
2. Fijar las políticas para una clase o un servicio. Para obtener más información,

consulte Section 16.9.3,


"How to Attach Policies to Web Services".
3. Configurar un servidor con la clave correcta u otra información que almacena las
directivas
La necesidad de trabajar, e implementar el servicio web en el servidor. Para obtener más
información, consulte
"Las políticas de configuración" en la seguridad de Oracle Fusion Middleware y del
administrador
Guía para servicios Web.
4. Probar el servicio web para asegurarse de que las políticas funcionan como se espera. Para

obtener más
Información, consulte Section 16.11.1, "How to Test Web Services in a Browser".

Desarrollo de Aplicaciones utilizando servicios Web. 16-


37
Uso de directivas con servicios Web.

16.9.1 qué tienes que saber sobre Oracle políticas WSM


Oracle WSM políticas pueden ser conectados a servicios web JAX-WS en el puerto.
Oracle JDeveloper soporta actualmente WSM sólo de políticas de seguridad.
JDeveloper está preconfigurado para utilizar el almacén de políticas establecido en la ubicación
predeterminada en la WS
Política de página en el cuadro de diálogo Preferencias:
■ Menú Herramientas > Preferencias > Tienda Política WS
O
■ Menú de aplicaciones > Propiedades de la aplicación > Tienda Política WS
Puede especificar la ubicación del almacén de otra política para utilizar Oracle personalizado de su
organización
WSM políticas. Para obtener más información Section 16.9.8, "How to Use a Different Oracle
WSM Policy Store".
Para obtener más información acerca de Oracle WSM, consulte las políticas de Oracle Fusion
Middleware
La seguridad y la Guía del administrador de servicios Web.

Anotaciones de política
Puede asociar una única política mediante la
Weblogic.wsee.jws.jaxws.owsm.SecurityPolicy anotación en la clase Java,
Por ejemplo:
@SecurityPolicy(uri = "oracle/WSS11_message_protection_service_policy")

Puede adjuntar varias políticas como un compuesto usando @SecurityPolicies conteniendo un


Número de @SecurityPolicy elementos, por ejemplo:
@SecurityPolicies( {
@SecurityPolicy(uri = "oracle/WSS_http_Token_service_policy"),
@SecurityPolicy(uri = "oracle/WSS_oam_Token_service_policy")
})

Nota: Para ver una lista de pólizas vigentes, haga clic en Ctrl+Alt+Entrar para
Invocar el código de la función de ayuda.

16.9.2 lo que necesita saber acerca de Oracle WebLogic Web políticas de servicio
Oracle WebLogic web políticas de servicio pueden ser conectados a JAX-WS y JAX-RPC web
Servicios en el puerto o el nivel de operaciones. Con Oracle WebLogic web políticas de servicio es
Puede especificar la orientación de las políticas de uso, es decir, para ser aplicados en la entrada
(Solicitud) o mensaje (respuesta) mensaje saliente, o ambos.
Puede configurar JDeveloper para utilizar su empresa Oracle WebLogic web personalizado
Políticas de servicio. Para obtener más información,
consulte Section 16.9.7, "How to Use Custom Web
Service Policies".
Para obtener más información, consulte la fijación de Oracle Fusion Middleware WebLogic Web Services
Para Oracle WebLogic Server.

Anotaciones de política
Puede asociar una única política mediante la weblogic.jws.Policy anotación en el
Clase Java, por ejemplo:
@Política(uri = "política:Pcsm1.2-2007-Https-UsernameToken-Plain.xml").
16-38 Guía del usuario para Oracle JDeveloper
Uso de directivas con servicios Web.

Puede adjuntar varias políticas como un compuesto usando @Las políticas que
contienen un
Número de @ elementos de directivas, por ejemplo:
@Políticas( {
@Política(uri = "política:Pcsm Https-Basic1.2-2007-auth.xml"),
@Política(uri = "política:Pcsm1.2-2007-Https-UsernameToken-Plain.xml").
})

Nota: Para ver una lista de pólizas vigentes, haga clic en Ctrl+Alt+Entrar para
Invocar el código de la función de ayuda.

16.9.3 Cómo fijar políticas para servicios Web.


JDeveloper permite adjuntar Web Oracle Oracle Service Manager (WSM) o directivas
Oracle WebLogic web políticas de servicio para los servicios web.
Después de adjuntar una directiva a un servicio web, es necesario configurar las políticas.
Para obtener más
Información, consulte "Configuración de políticas" en la seguridad de Oracle Fusion Middleware
y
Guía del administrador de servicios Web.
Usted puede fijar las políticas para los servicios web por:
■ La selección de las políticas para fijar en el asistente de servicio web al crear un nuevo sitio
web
El servicio o en el editor de servicio web al actualizar un servicio web que ya
Existe.
■ Agregar la directiva anotaciones directamente en la clase de Java; el código Insight
característica puede
Ayudarle. Para obtener más información, consulte Section 16.2.7, "How to Work with Web
Services Code Insight".
■ Utilice el Inspector de propiedades.

Para fijar políticas en el servicio web asistente o editor:


En el asistente para crear servicios Web en Java o servicio web editor, vaya a la
configuración
Página Directivas. Para más información en cualquier momento, presione F1 o haga clic
en Ayuda desde dentro de la
El diálogo.
Al fijar políticas WSM de Oracle, puede ver más información acerca de la política
Y sus afirmaciones como la siguiente:
■ Haga clic en la casilla de verificación Mostrar descripciones para mostrar una descripción
de cada uno de los
Las políticas.
■ Haga clic en Ver para revisar la política aserciones en el fichero de política.
■ Haga clic en la casilla de verificación Mostrar directivas seleccionadas para mostrar sólo
aquellas políticas que son
Actualmente seleccionado.

Para fijar la política anotaciones en la clase Java:


1. Abra la clase de servicio web en el editor de código fuente.
2. Puede utilizar el código Insight para ayudarle.

Comience a escribir la anotación, por ejemplo, @Directivas. Cuando se pausa, o haga


clic en
Ctrl+Mayús+Espacio, aparecerá una ventana emergente que le permite elegir la
entrada correcta
Para completar la declaración.
Para obtener más información sobre el uso de anotaciones de política, consulte el
apartado "Actualización del archivo JWS con
@Política y @Políticas Anotaciones" y "SecurityPolicy y SecurityPolicies

Desarrollo de Aplicaciones utilizando servicios Web. 16-


39
Uso de directivas con servicios Web.

Anotaciones" en Oracle Fusion Middleware Proteger servicios web de Oracle WebLogic


WebLogic Server.

Para fijar políticas en el Inspector de propiedades:


1. Con la clase de servicio web en el editor de código fuente abierto, elija Ver > Inmobiliaria
Inspector para abrir el Inspector de propiedades.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde dentro
de la propiedad
Inspector.
2. Con el cursor en la clase pública o @WebService línea de la clase, navegar
El nodo de extensiones de Servicios Web donde puede elegir usar Oracle WSM
Las políticas o directivas de servicios web Oracle WebLogic.
3. Seleccione Secure con OWSM políticas o fijar con WLS Directivas.

El Inspector de propiedades se actualiza para mostrar las opciones para seleccionar una o
varias
Políticas para el tipo de política seleccionada (Oracle WSM o WLS).
4. Haga clic en ... Para adjuntar varias políticas de la propiedad Edit: varias directivas, diálogo
O seleccione una política única de la única lista de directivas.
Cuando se utiliza la propiedad Edit: varias directivas para el cuadro de diálogo Adjuntar varios
Oracle WSM archivos de política, haga clic en Ver para revisar la política afirmaciones en la política
Archivo.
No puede utilizar ambos tipos de política en el mismo servicio web. Si elige el
Tipo incorrecto, eliminar las líneas que contienen las declaraciones políticas de la JAX-WS.
La clase, de modo que usted puede elegir de nuevo.

16.9.4 Cómo Conectar Oracle WSM políticas para clientes de servicio Web.
JDeveloper permite adjuntar Oracle Web Service Manager (WSM) de Oracle para web
Los clientes del servicio.
Después de adjuntar un Oracle WSM política a un cliente de servicio web, necesita configurar
Las políticas. Para obtener más información, consulte "Configuración de políticas" en el Oracle Fusion
Seguridad de middleware y la Guía del administrador de servicios Web.

Nota: Para obtener información acerca de la actualización de aplicaciones cliente para


invocar
Los servicios web que utilizan WebLogic web políticas de servicio, consulte el apartado
"Actualización de un
Aplicación cliente para invocar un servicio Web" en Message-Secured
Oracle Fusion Middleware Proteger servicios web de Oracle WebLogic
WebLogic Server.

Puede adjuntar Oracle WSM políticas para clientes de servicios web por:
■ Selección del Oracle WSM políticas para fijar en la creación de servicios Web y Cliente
Asistente de proxy cuando se crea un nuevo servicio web client o en el Cliente de Servicios
Web
Y editor de proxy cuando se actualiza un cliente de servicios web que ya existe. En el
Crear un servicio web proxy de cliente y el asistente o el editor, vaya a la página de la Directiva.
■ Cuando acople Oracle WSM políticas, puede ver más información acerca de
Política y sus afirmaciones como la siguiente:
- Haga clic en la casilla de verificación Mostrar descripciones para mostrar una descripción
de cada uno de los
Las políticas.
- Haga clic en Ver para revisar la política aserciones en el fichero de política.

16-40 Guía del usuario para Oracle JDeveloper


Uso de directivas con servicios Web.

- Haga clic en la casilla de verificación Mostrar directivas seleccionadas para mostrar


sólo aquellas políticas que
Actualmente seleccionadas.
- Haga clic en el Mostrar sólo los clientes compatibles las políticas de selección para
checkbox
Ver las directivas que son compatibles con el servicio web asociado.
Para más información en cualquier momento, presione F1 o haga clic
en Ayuda desde dentro de la
El diálogo.
■ Manualmente mediante
Weblogic.wsee.jws.jaxws.owsm.SecurityPolicyFeature clase para adjuntar
Una sola política o
Weblogic.wsee.jws.jaxws.owsm.SecurityPoliciesFeature adjuntar
Varias directivas.
Para obtener más información, consulte la fijación de Oracle Fusion Middleware WebLogic
Web
Los servicios de Oracle WebLogic Server.

16.9.5 Cómo invocar servicios Web seguras usando WebLogic Web políticas de servicio
Al crear o editar un cliente de servicios web a partir de un WSDL que anuncia un WebLogic
Políticas de servicio web, puede configurar las credenciales para invocar el servicio web.

Para configurar las credenciales para un cliente de servicios web que llama a un servicio web.
Asegurado con WebLogic web políticas de servicio:
1. Realice una de las siguientes tareas:
■ Crear un cliente de servicio web. Para obtener más información,
consulte Section 16.4.1, "How to
Create the Client and Proxy Classes".
■ Editar un cliente de servicio web. Para obtener más información,
consulte Section 16.4.6, "How to
Manage the Web Service Clients".
2. Vaya a la página de credenciales de Selección del asistente.

3. Seleccione un conjunto de credenciales existente de la lista desplegable o haga clic

en Nuevo para definir una


Nuevo conjunto de credenciales.
Si necesita ayuda para completar el asistente, presione F1 o haga clic en Ayuda desde
el asistente.
4. Complete el asistente.

La clase de cliente se actualiza para incluir métodos para establecer las credenciales del
cliente. Una vez
Agregado, puede modificar los valores de credenciales, según sea necesario.
A continuación se proporciona un ejemplo del código que se genera y se incluyó en el
Clase de cliente:
@Generado("Oracle JDeveloper")
Public static void setPortCredentialProviderList(
Mapa<String, Object> requestContext) arroja excepción
{
// Valores utilizados de preferencia: TestCredential credenciales
Cadena username = "weblogic";
Contraseña cadena = "weblogic1";
Cadena clientKeyStore = "/C:/temp/ClientIdentity.jks";
Cadena = "ClientKey clientKeyStorePassword";
Cadena clientKeyAlias = "identidad".
Cadena = "ClientKey clientKeyPassword";
Cadena serverKeyStore = "/C:/temp/ServerIdentity.jks";
Cadena = "serverKeyStorePassword ServerKey";
Cadena serverKeyAlias = "identidad".
List<CredentialProvider> credList = new ArrayList<CredentialProvider>();

Desarrollo de Aplicaciones utilizando servicios Web. 16-

41
Uso de directivas con servicios Web.

// Agregar los proveedores de credenciales necesarias a la lista


CredList.add(getUNTCredentialProvider(nombre de usuario, contraseña);
CredList.add(getBSTCredentialProvider(clientKeyStore, clientKeyStorePassword,
ClientKeyPassword serverKeyStore clientKeyAlias,,,
ServerKeyStorePassword, serverKeyAlias, requestContext);
CredList.add(getSAMLTrustCredentialProvider();
RequestContext.put(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credList);
}

Para obtener información sobre cómo programar el cliente de servicio web para invocar un
servicio web.
Que se protege con WebLogic web políticas de servicio, consulte el apartado "Actualización de un
cliente
Aplicación para invocar un servicio Web Message-Secured" en Oracle Fusion Middleware
Proteger servicios web WebLogic de Oracle WebLogic Server.

16.9.6 Cómo editar y eliminar directivas de servicios Web.


Puede editar las políticas y eliminarlos totalmente de servicios web con cualquiera de los
Siguiente:
■ Editor del servicio Web
■ Editor de código fuente
■ Inspector de propiedades

Para cambiar o quitar las directivas mediante el servicio web editor:


1. Haga clic con el botón secundario en el servicio web en la aplicación del navegador y
seleccione Servicio Web
Propiedades.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda en el cuadro
de diálogo.
2. Vaya a la página de directivas de configuración, donde puede cambiar las políticas para el
Tipo de políticas seleccionado, cambie a usar otro tipo de políticas (por ejemplo,
Desde Oracle WSM políticas para Oracle WebLogic directivas de servicios web) o elija No
Las políticas. Los servicios web se modifica cuando se aleja de esta página de
El editor.

Para cambiar o quitar las directivas mediante anotaciones en la clase Java:


■ Abra la clase de servicio web en el editor de código fuente, donde el código es característica de
Insight
A su disposición para ayudarle. Para obtener más información,
consulte Section 16.2.7, "How to Work with
Web Services Code Insight".Añadir o quitar las anotaciones, según se requiera.

Para cambiar o quitar políticas utilizando el inspector de propiedades:


1. Con el servicio web JAX-WS clase abierta en el editor de código fuente, elija Ver >
Inspector de propiedades para abrir el Inspector de propiedades.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde dentro
de la propiedad
Inspector.
2. Con el cursor en la clase pública o @WebService línea de la clase, navegar
El nodo de extensiones de Servicios Web:
■ Para cambiar varias directivas, haga clic en ... Para abrir las Propiedades de edición: Varios
Diálogo de políticas.
■ Para cambiar una política única, elimine el nombre de la única política lista
Y elija otro.

16-42 Guía del usuario para Oracle JDeveloper


Uso de directivas con servicios Web.

■ Para cambiar de un tipo de política a otra, eliminar todas las directivas de modo que
Puede empezar de nuevo.

16.9.7 Cómo utilizar directivas de servicios web personalizados


Puede utilizar directivas personalizadas desde dentro de JDeveloper. El proceso es distinto
basado en
Si usted está utilizando Custom Web Oracle Oracle Service Manager (WSM) o directivas
Oracle WebLogic web políticas de servicio, como se describe en las siguientes secciones:
■ Section 16.9.7.1, "Using Custom Oracle WSM Policies"
■ Section 16.9.7.2, "Using Custom Oracle WebLogic Web Service Policies"

16.9.7.1 utilizando Oracle WSM políticas personalizadas


Use custom Web Oracle Oracle Service Manager (WSM) políticas, realice uno de los
Siguientes pasos:
■ Agregar una directiva personalizada en la directiva predeterminada la ubicación
del almacén en:
JDEV_user_
HOME\system11.1.1.2.x.x.x\DefaultDomain\oracle\Store\las GMD Si
No establecido,
JDEV_USER_home por defecto es C:\Documents and
Settings\user-dir\Application Data\JDeveloper.
Dentro de este directorio, las políticas deben ser incluidos mediante uno de los
siguientes
Estructuras de directorio:
- Oracle WSM políticas predefinidas: owsm/políticas/oracle/policy_file
- Las directivas de usuario personalizados: owsm/políticas/policy_file

Nota: Al exportar archivos de política desde el repositorio de Oracle WSM


Para uso en JDeveloper, esta estructura de directorios no se mantiene. Usted
Debe asegurarse de que cuando se añade la política exportada a la JDeveloper
Entorno en el que se utiliza la estructura de directorios necesaria señaló
Anteriormente. De lo contrario, las políticas no estarán disponibles en el JDeveloper
Medio ambiente. Para obtener más información sobre cómo exportar directivas
desde la
Oracle WSM repositorio, consulte "Descripción de los diferentes mecanismos
Para la importación y exportación de políticas" en el Oracle Fusion Middleware
La seguridad y la Guía del administrador de servicios Web.

■ Especificar un almacén de directivas diferentes. Fro más información,

consulte Section 16.9.7.2, "Using


Custom Oracle WebLogic Web Service Policies".
Si usted decide usar un almacén de directivas en un servidor de aplicaciones
remotas, puede importar
Oracle personalizadas WSM políticas para el repositorio de MDS en la aplicación remota
Servidor usando Fusion Middleware WLST o Control.
Para obtener más información acerca de la importación de Oracle para las políticas de
MDS en el WSM
Servidor de aplicaciones remotas, consulte "Descripción de los diferentes mecanismos para
Importación y Exportación de políticas" en la seguridad de Oracle Fusion Middleware y
Guía del administrador de servicios Web.
Para obtener más información acerca de la creación de directivas personalizadas, consulte
"Creación de objetos personalizados
Las aserciones" en la Guía de extensibilidad para Oracle Web Services Manager.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


43
Uso de directivas con servicios Web.

16.9.7.2 utilizando Custom Oracle WebLogic Directivas de servicios Web


Use custom Oracle WebLogic directivas de servicios web, realice una de las siguientes
Pasos:
■ Coloque la directiva personalizada jar en el classpath y habilitar el servidor WebLogic Server
Propiedad.wsee weblogic.policy.LoadFromClassPathEnabled en true.
■ Coloque el tarro de política personalizada en WEB-INF/políticas (aplicación Web) o
META-INF/políticas (EJB).
■ Coloque el archivo XML de directivas personalizadas en WEB-INF (aplicación Web) o META-INF
(EJB).
Para acceder a las políticas:
■ Cuando se utiliza la anotación @Política, asegúrese de agregar el prefijo de política; por
Ejemplo, política:midirectiva.xml.
■ Haga clic en el botón Agregar políticas personalizadas en la página Configurar directivas de Java
Servicio Web Editor y seleccione los archivos de política personalizada utilizando el seleccione
Personalizado.
Cuadro de diálogo de archivos de política.
Para obtener más información acerca de la creación de directivas personalizadas, consulte
"Creación de objetos personalizados
Las aserciones" en la Guía de extensibilidad para Oracle Web Services Manager.

16.9.8 Cómo utilizar otra tienda política WSM Oracle


Oracle Web Service Manager (WSM) Oracle tienda política se instala como parte de
JDeveloper. Puede utilizar una política distinta, almacenar, por ejemplo, para utilizar una política
compartida
Tienda. Puede utilizar un almacén de directivas que se encuentra disponible en el almacén de archivos
local o en un equipo remoto
Servidor de aplicaciones.

Para especificar una política diferente, la ubicación del almacén:


1. Elija Herramientas > Preferencias para abrir el cuadro de diálogo de preferencias, y vaya a la
WS página de tienda política.
Para más información en cualquier momento, presione F1 o haga clic en Ayuda desde dentro
de la
Cuadro de diálogo de preferencias.
2. Para especificar un almacén de directivas que se encuentra en el almacén de archivos locales, haga clic

en Archivo y entrar en la tienda


Ubicación de la tienda política de anulación en el cuadro de texto Ubicación, o haga clic
en Examinar para
Busque su ubicación.
3. Para configurar un almacén de directivas en un servidor de aplicaciones remoto, haga clic en Servidor

de aplicaciones
Conexión y seleccione una aplicación servidora remota conexión desde el menú desplegable
Lista.
Para agregar una aplicación remota nueva conexión de servidor, haga clic en Nuevo.

Nota: El servidor de aplicaciones remotas que usted seleccione debe ser


Configurado con el Oracle WSM Policy Manager. Para comprobar que el
Oracle WSM Policy Manager se ha configurado correctamente, utilice el
URL: http://<host>:<port>/wsm-pm/validator. Introduzca el
Nombre de usuario y la contraseña para el servidor cuando se le solicite. Si Oracle
WSM Policy Manager está en funcionamiento, haga una lista de los predefinidos
Las políticas se muestra con descripciones. Para obtener más información acerca de
La solución Oracle WSM Policy Manager, consulte "Diagnóstico
Problemas de la seguridad de Oracle Fusion Middleware y del administrador
Guía para servicios Web.

16-44 Guía del usuario para Oracle JDeveloper


Probar y depurar servicios Web

16.10 Edición y eliminación de servicios Web.


Puede editar o eliminar un servicio web que ha creado en JDeveloper, por ejemplo
Para cambiar el método de exposición o la ubicación de un archivo.

Para editar un servicio web:


1. Aplicación en el navegador, haga clic con el botón derecho en el contenedor de
servicios web y elija
Propiedades. La reentrada se muestra el asistente para servicios web.
2. Realice los cambios en el servicio web. Haga clic en Aceptar. Archivos del servicio web
Regenerado.
Para obtener ayuda detallada sobre cómo completar el asistente, presione F1 o haga
clic en Ayuda desde dentro
El asistente.
Después de editar los archivos del servicio web, debe redistribuir el servicio web. Para
obtener más
Información, consulte Section 16.12, "Deploying Web Services".
Cuando edite un servicio web, el archivo WSDL generado previamente se sobrescribe, y
Los cambios realizados se perderán. Si ya ha implementado la web
Servicio y editarlo, debe volver a implementarlo.
Cuando edite un servicio web de PL/SQL, asegúrese de que la conexión de la base de datos
está presente.
De lo contrario, recibirá un mensaje de error. Si se ha eliminado la base de datos
Conexión, crear una nueva con el mismo nombre que el original.

Para eliminar un servicio web:


■ Aplicación en el navegador, haga clic con el botón derecho en el contenedor de
servicios web y elija
Eliminar servicio Web. Eliminar el cuadro de diálogo Servicio Web que enumera los
archivos que serán
Eliminados es mostrada. Haga clic en Aceptar.
Los archivos se borran y cualquier referencia al servicio web.xml se quitan.
Cuando se elimina un servicio web desde JDeveloper, el contenedor y el servicio web
Los archivos que contiene un archivo WSDL (y posiblemente algunas interfaces) se eliminan.
Las entradas para
El servicio web en web.xml son retirados, aunque el archivo no se elimina. El
Implementar el archivo WebServices.es invariable, ya que pueden ser utilizadas para
otros servicios web.

16.11 Probar y depurar servicios Web


Desarrollador proporciona un número de maneras que usted puede probar los servicios
web. Puede utilizar el
Depurador, que permite depurar servicios Web que se crea localmente, en el
WebLogic Server integrado, y de forma remota, en Oracle WebLogic Server. También puede
Ejecutar un servicio web implementado en WebLogic Server integrado en un navegado r
para comprobar que
Devuelve lo que usted espera.
Además de los temas que se describen en esta sección, puede utilizar HTTP Analyzer
Examinar el contenido de los servicios web a través de HTTP, similar al examen de otro
paquete
Información. Para obtener más información,
consulte Section 16.13.4, "How to Examine Web Services
using the HTTP Analyzer".
Las siguientes secciones describen cómo probar y depurar servicios web:
■ Section 16.11.1, "How to Test Web Services in a Browser"
■ Section 16.11.2, "How to Debug Web Services"

Desarrollo de Aplicaciones utilizando servicios Web. 16-


45
Probar y depurar servicios Web

16.11.1 cómo probar los servicios Web en un navegador


Una vez que se han creado e implementado un servicio web, puede comprobar que devuelve lo que
Usted puede esperar al ejecutarlo en el navegador.
El proceso que se utiliza para probar los servicios web depende de si está probando
Oracle WebLogic web services o servicios web de infraestructura, tales como ADF Business
Los componentes.
■ Pruebas de servicios web Java EE WebLogic en un navegador
■ Probar la infraestructura Oracle servicios web en un navegador

Para probar WebLogic de servicios web Java EE en un navegador:


1. Abra la siguiente dirección URL en un explorador: http://IP_address:port/wls_utc
2. Introduzca la URL de WSDL y haga clic en Prueba.

Por ejemplo: http://IP_


Dirección:puerto/Project1-contexto-root/MyWebService1?WSDL
El navegador muestra una página sencilla que enumera las operaciones disponibles en el
Servicio.
3. Introduzca los valores de cada parámetro y haga clic en el botón nombre de operación
Revise los detalles de la solicitud.

Probar la infraestructura Oracle Servicios Web en un navegador


Para Oracle la infraestructura de servicios web, como ADF Business Components, puede
Probar los servicios web en un explorador implementadas en:
■ WebLogic Server integrado
■ Oracle WebLogic Server.

Para probar un servicio implementado integrado de WebLogic Server:


1. Cuando se implementa el servicio web para la infraestructura de Oracle WebLogic integrado
Servidor, examinar el contenido de la ventana de registro. Busque la línea que contiene el
Siguiente:
Utilice el siguiente contexto root(s) para probar tu web
La(s) aplicación(es): http://IP_
Dirección:puerto/Project1-contexto-root/MyWebService1
2. Copiar y pegar la dirección URL en el navegador. El navegador muestra una página sencilla

que
Enumera las operaciones disponibles en el servicio.
3. Introduzca un parámetro y haga clic en Intro. El resultado del servicio web se muestran.

Para probar un servicio implementado en Oracle WebLogic Server:


1. Cuando se implementa el servicio web infraestructura de Oracle para Oracle WebLogic
Servidor, examinar el contenido de la ventana de registro. Busque la línea que dice:
La aplicación se puede acceder a ubicación: http://IP_
Dirección:puerto/Project1-contexto-root
Esta URL sólo muestra el contexto raíz para el servicio web.
2. Copia la URL y pegarlo en el explorador, y agregar el nombre del servicio web
El extremo de dar la ubicación completa del servicio:
Http://IP_address:port/Project1-context-root/MyWebService1
Entre 16-46 Guía del usuario para Oracle JDeveloper
Probar y depurar servicios Web

El navegador muestra una página sencilla que enumera las operaciones disponibles en
el
Servicio.
3. Introduzca un parámetro y haga clic en Intro. El mensaje SOAP que contiene el

parámetro
Usted entró al servicio web se muestran.
4. Haga clic en Invocar. El resultado del servicio web se muestran.

16.11.2 cómo depurar servicios Web


Las herramientas de depuración le permiten depurar servicios web creados mediante el
servicio web
Los asistentes. Esto es similar a la depuración de programas Java; puede depurar un
servicio web.
Localmente o de forma remota mediante la ejecución de un cliente contra el servicio en
modo de depuración. Establecer
Los puntos de interrupción en el cliente, que es el proxy para el servicio web, para investigar
la
La funcionalidad del servicio.
Aunque puede depurar un servicio web de PL/SQL, lo que está depurando es Java
Clase generada por JDeveloper para envolver el PL/SQL para su implementación como un
servicio web.
Por lo tanto, la manera correcta de asegurarse de que un servicio web de PL/SQL se ejecuta
como se espera es
Depurar el PL/SQL antes de crear un servicio web a partir de ella. Para obtener más información,
consulte
Section 29.3, "Debugging PL/SQL Programs and Java Stored Procedures".
Puede usar el analizador Http para examinar y supervisar la petición y la respuesta HTTP
Los paquetes. Actúa como un proxy entre el código en JDeveloper y el recurso HTTP que el
Se comunica con el código, y te ayuda a depurar su aplicación en términos de
Tráfico HTTP enviados y recibidos. Para obtener más información,
consulte Section 16.13.4, "How to
Examine Web Services using the HTTP Analyzer".
JDeveloper permite depurar un servicio web que se ejecuta en el Sistema Integrado de
WebLogic
Servidor, de forma local o un servicio web que se implementa de forma remota.

Depurar servicios Web localmente


Una vez que el servicio web se ejecuta en el servidor WebLogic Server integrado, puede crear
un proxy
Cliente para el servicio web. Este cliente contiene métodos para ejecutar contra cada
expuestos
Método del servicio web, y usted puede añadir su propio código y establecer puntos de
interrupción para
Examinar cómo se ejecuta el servicio web.
Puede depurar rápidamente un servicio web creado en JDeveloper por depuración
localmente.
Hay dos maneras de hacerlo:
■ Colocando puntos de interrupción en la clase de servicio web y, a continuación,
ejecuta un cliente proxy
Contra ella. Esto le permite depurar la clase de servicio.
■ Colocando puntos de interrupción en el cliente.
Antes de depurar localmente un servicio web, debe desactivar el proxy.
Recuerde desactivar la opción de volver a la configuración de proxy cuando termine de
depurar.

Para depurar un servicio web local:


1. En primer lugar, desactive la configuración de proxy. Elija Herramientas > Preferenciasy
seleccione Web
Navegador y Proxy.
2. Deseleccione Usar servidor proxy http.

3. Ejecutar el servicio web en modo de depuración. En el navegador, haga clic con el

botón secundario en el servicio web


Contenedor y elija Depurar.
El Sistema Integrado de WebLogic Server se inicia en modo de depuración, y el servicio
web es
Desplegado en él. Los resultados se muestran en la ventana de registro.

Desarrollo de Aplicaciones utilizando servicios Web. 16-


47
Implementar servicios Web

4. Crear un cliente de servicios web, como se describe en "Creating Web Service Clients" on
page 16-14.
Un contenedor de proxy se genera y se muestran en el navegador, con una
clase Java
Llama serviceSoapHttpPortClient_web.java muestra en la fuente
Editor.
5. En el editor de código fuente, Navigator // Agregar su propio código aquí, y entrar
Algo de código.
6. Si se depura el cliente al servicio web, agregue uno o más puntos de interrupción,
Haga clic con el botón derecho del ratón y elija Depurar.
Como alternativa, si se han establecido puntos de interrupción en la clase de servicio web,
elija
Depurar o Ejecutar desde el menú contextual.
El depurador funciona como para cualquier clase Java. Para obtener más información,
consulte Chapter 19,
"Running and Debugging Java Programs".

La depuración remota de Servicios Web


JDeveloper permite depurar un servicio web que se implementa de forma remota.
El servicio web podría estar ejecutándose en Oracle WebLogic Server en la máquina local, o
Podría estar ejecutándose en un servicio ubicado en una máquina remota. En cualquier caso,
usted
Necesitará una conexión al servidor y el servidor debe estar ejecutándose en modo de depuración.
Cuando depurar remotamente un servicio web, tiene que iniciar el servidor en modo de
depuración,
Implementar el servicio web. A continuación, puede crear un cliente para el servicio y establecer
Los puntos de interrupción y ejecutar el cliente en modo de depuración.

Para depurar un servicio web de forma remota:


1. Ejecutar el servidor remoto en modo de depuración.
2. Implementar el servicio web. Para obtener más información,

consulte Section 16.12, "Deploying Web


Services".
3. Crear un cliente para el servicio web.

4. En el editor de código fuente, vaya a // Agregar su propio código aquí, e introduzca

algunos
El código.
5. Agregar uno o más puntos de interrupción, haga clic con el botón derecho del ratón y

elija Depurar.
El depurador funciona como para cualquier clase Java. Para obtener más información,
consulte Chapter 19,
"Running and Debugging Java Programs".

16.12 implementar servicios Web


JDeveloper proporciona herramientas que ayudan a crear y desplegar servicios web en Oracle
WebLogic Server, donde se ejecutan dentro de un contenedor Java EE. Usted puede:
■ Implementar servicios web integrado de WebLogic Server. Ver Section 16.12.1, "How to
Deploy Web Services to Integrated WebLogic Server".
■ Implementar servicios web en Oracle WebLogic Server. Ver Section 16.12.2, "How to
Deploy Web Services to Oracle WebLogic Server".
■ Implementar servicios web en un archivo. Para obtener más información,
consulte Section 9.4.1,
"Deploying to a Java JAR".
■ Anular la implementación de un servicio web.
Ver Section 16.12.3, "How to Undeploy Web Services".

16-48 Guía del usuario para Oracle JDeveloper


Implementar servicios Web

Además, puede definir un dominio WebLogic Server diferente para ser integrados
WebLogic Server para ejecutar servicios web. Para obtener más información,
consulte Section 9.2,
"Running Java EE Applications in the Integrated Application Server".

16.12.1 cómo implementar servicios Web integrado de WebLogic Server.


Puede implementar servicios web generados en JDeveloper integrado de WebLogic Server.

Para implementar un servicio web integrado de WebLogic Server:


1. Aplicación en el navegador, haga clic con el botón secundario en el proyecto que
contiene el servicio web, y
Elija Implementar > Servicios Web.
La primera vez que inicie el servidor WebLogic integrado por ejecutar o depurar un
Aplicación o servicio web, aparecerá un cuadro de diálogo donde puede introducir una
contraseña para
La ID de administrador en el dominio predeterminado. Cuando hace clic en Aceptar, el
valor predeterminado
Dominio es creado. Usted sólo tendrá que hacerlo una vez.
2. En el cuadro de diálogo Implementar servicios Web, en la página de acción de

despliegue, seleccione Implementar


A Application Server y haga clic en Siguiente.
3. En la página Seleccionar servidor, seleccione y haga clic en Siguiente para

IntegratedWebLogicServer
Ver la página de resumen o terminar de implementar los servicios web.

16.12.2 cómo implementar servicios Web en Oracle WebLogic Server


Puede implementar un servicio web generados en JDeveloper de Oracle WebLogic Server.
Cuando utiliza uno de los asistentes para crear servicios Web para generar los archivos para
su
Servicio web Java EE, el asistente crea automáticamente todos los archivos que necesita,
Incluyendo una implementación perfil denominado WebServices.deploy. El
WebServices.implementar archivo es creado a nivel de proyecto. El perfil de
implementación
Contiene un archivo WAR y un archivo EAR.

Nota: Si va a implementar un servicio web de PL/SQL, debe crear


Una oreja, que es un perfil de implantación a nivel de aplicación, y
Implementar el archivo EAR. La conexión a la base de datos contenía información
En el oído, aunque la contraseña se utiliza direccionamiento indirecto, por lo que
también tienen que
Establecer una fuente de datos JDBC de Oracle WebLogic Server.

Para implementar un servicio web:


■ En el navegador, haga clic con el botón secundario en el proyecto que contiene el
servicio web y elija
Implementar en > Conexión. En la lista de conexiones disponibles elija el
Conexión al servidor de aplicación que especificó cuando creó la web
Servicio.

Para implementar un servicio web de PL/SQL:


1. Crear una aplicación a nivel de perfil de implementación del oído y agregar el servicio web.
2. Implementar el oído para la conexión con el servidor de la aplicación de Oracle

WebLogic Server.
3. Establecer la conexión a la base de datos detalles sobre Oracle WebLogic Server siguiendo el
Información acerca de la implementación de oídos para Oracle WebLogic Server.
Para obtener más información, consulte Section 9.4.1, "Deploying to a Java JAR".

Desarrollo de Aplicaciones utilizando servicios Web. 16-

49
Supervisión y Análisis de servicios Web.

Para examinar el contenido de un perfil de implementación de servicios web:


1. Para examinar el contenido de un perfil de implementación de servicios web:
2. Elija el archivo Grupos > WEB-INF/classes > Filtros nodo para mostrar una lista de
Los archivos .java y . archivos WSDL para el servicio web.

16.12.3 Cómo anular la implementación de servicios Web.


Si se implementa el servicio web integrado de WebLogic Server no necesita
Para anular como el servidor integrado se restablece automáticamente a la nueva aplicación y el proyecto
Siempre que se inicia.
Si se implementa el servicio web a un servidor mediante un servidor de aplicaciones.
Conexión, puede anular la implementación desde la paleta de recursos.

Para anular un servicio web:


1. En el servidor de aplicaciones Navigator, seleccione la conexión con el servidor de la
aplicación que
Han estado utilizando y ampliar servicios Web.
2. Haga clic en application-nombre_proyecto_ws-name y seleccione Anular.

16.13 vigilancia y análisis de servicios Web.


Puede analizar los servicios web en un número de maneras, por ejemplo, para comprobar si éstos
Conforme a WS-I Basic Profile 1.1, o para investigar el contenido de los paquetes SOAP.
La Organización Services-Interoperability Web (WS-I) estaba formado por Oracle y
Otros líderes de la industria para promover la interoperabilidad de las tecnologías de servicios web
A través de una variedad de plataformas, sistemas operativos y lenguajes de programación.
JDeveloper proporciona herramientas que le permiten comprobar la interoperabilidad de servicios
web por
Verificar que los servicios se ajusten a la WS-I Basic Profile 1.1. Para obtener más información
Acerca de WS-I, consulte el sitio web de la Organización Services-Interoperability Web (WS-I)
En Http://www.ws-i.org.
A fin de supervisar un servicio web contra el WS-I Basic Profile, o analizar el archivo de
registro
Resultado de la supervisión un servicio, debe haber descargado un WS-I compatible
Analizador.
Usted puede analizar un servicio web de conformidad a los estándares WS-I. El servicio puede
Ser uno que haya creado que se enumeran en la aplicación Navegador, o puede ser un web
Servicio que usted haya localizado con un registro UDDI. que aparece en el recurso
Paleta. Como alternativa, puede crear un cliente y clases de proxy para acceder a un desplegado
Servicio web y usar el analizador HTTP para crear un archivo de registro que puede utilizar para
Analizar si el servicio web se ajusta a los estándares WS-I.
Para poder utilizar un analizador compatible con WS-I para analizar un servicio web, necesita
Descargar uno a su máquina y registrar con JDeveloper.

Para descargar y registrar un analizador de WS-I:


1. Descargar e instalar un analizador de WS-I Http://www.ws-i.org.
2. En JDeveloper elija Herramientas > Preferencias y seleccione Herramientas de prueba de WS-I.

3. Introduzca los detalles de donde el WS-I Analyzer es compatible instalado.

Para obtener ayuda sobre el uso de este cuadro de diálogo, presione F1 o haga clic
en Ayuda desde dentro de la
El diálogo.
Las siguientes secciones describen cómo supervisar y analizar los servicios web:

16-50 Guía del usuario para Oracle JDeveloper


Supervisión y Análisis de servicios Web.

■ Section 16.13.1, "How to Analyze Web Services in the Navigator"


■ Section 16.13.2, "How to Create and Analyze Web Service Logs"
■ Section 16.13.3, "How to Analyze Web Services Running in the Integrated Server"
■ Section 16.13.4, "How to Examine Web Services using the HTTP Analyzer"

16.13.1 cómo analizar los Servicios Web en el navegador


Se puede generar un informe de un servicio web que aparece en la aplicación Navigator
O que le han situado con un registro UDDI y que aparece en el recurso
Paleta para ver si se conforma con WS-I Basic Profile 1.1 normas. Antes
Puede hacer esto debe haber descargado un WS-I analizador compatible a su máquina
Y registrado con JDeveloper.
Las piezas de la WS-I Basic Profile que verificar el contenido de los mensajes enviados entre
una
Servicio web y un cliente no puede utilizarse hasta que el cliente se ejecuta contra el servicio.
Cuando
Invocar desde el navegador, el analizador de WS-I sólo puede analizar la descripción del
Servicio en su documento WSDL.

Para analizar un servicio web:


1. Con el servicio Web seleccionado en el navegador, seleccione WS-I Analizar WSDL desde
El menú de contexto.
2. Analizar WS-I se muestra el asistente para servicios Web.

Para obtener ayuda sobre el uso del asistente, presione F1 o lamer la Ayuda desde
dentro de la
Asistente.
3. Una vez que se ha ejecutado el asistente, un informe del análisis llamado wsi-
report.html es
Muestra en JDeveloper. El informe puede tardar unos instantes en aparecer,
Dependiendo de si está analizando un servicio web local o uno implementado
Otros lugares en la Web.

16.13.2 cómo crear y analizar los registros de servicios Web


Puede usar el analizador Http para producir un registro de la ejecución de un cliente de
servicio web.
A continuación, puede utilizar un analizador compatible con WS-I que haya descargado y
Registrado con JDeveloper para verificar si el servicio web cumple con el estándar WS-I
Las normas.
Porque se ejecuta el analizador contra un cliente para el servicio web, descubrimiento
Descripción y mensajes del servicio son reportados.

Nota: Si está trabajando dentro de un firewall, asegúrese de que el servidor


proxy
Excepciones de servidor no incluyen la dirección IP de la máquina
Que el servicio web se está ejecutando.

Para analizar y crear un servicio web:


1. Crear un cliente para el servicio web que desea analizar.
■ Ya sea para un servicio web externo.
O
■ Para un servicio web que ha creado e implementado en Oracle WebLogic
Crear un cliente, servidor o proxy de mangueta.
O

Desarrollo de Aplicaciones utilizando servicios Web. 16-


51
Supervisión y Análisis de servicios Web.

Para un servicio web que acaba de crear en JDeveloper, asegurar que la web

El servicio se está ejecutando en el servidor incrustado (embedded) seleccionando la


opción Ejecutar desde la web
Servicio de menú contextual del contenedor. En el navegador Web, seleccione Generar
Servicio de Proxy del servicio web del contenedor del menú contextual. Necesita
Asegúrese de que el extremo de servicio web en el WSDL es exactamente el mismo que
La variable _endPoint en el proxy generado.
2. Iniciar el analizador Http. Elija Ver > Analizador HTTP, y haga clic en el monitor.
El botón de inicio.

3. Ejecutar el cliente. O bien:


■ Seleccione Ejecutar en el menú de contexto del cliente en el editor de código fuente.
O
■ Seleccione Ejecutar en el menú de contexto del cliente en el navegador.
4. Una vez que haya recibido la respuesta que espera del servicio web, detener la
Analizador http haciendo clic en el botón Detener.

5. Haga clic en el botón Analizador WS-I para iniciar el Asistente para analizar WS-I y siga
las
Las instrucciones en el asistente. El mensaje registra los progresos y los resultados
Se muestran en el analizador Http.

16.13.2.1 lo que necesita saber acerca de la realización de un análisis de una web


Servicio
Hay un número de razones por las que puede encontrar usted tiene problemas cuando
Realizar un análisis de un servicio web. Algunos de estos están fuera del alcance de la
JDeveloper documentación, pero hay dos problemas que podrían venir a través de:
■ When the Message section of the wsi-report.html is missing all inputs
■ When the Discovery section of the wsi-report.html is missing all inputs

Cuando la sección de mensajes de la wsi-report.html faltan todos los insumos


Esto puede ocurrir cuando el WSDL para un servicio web externo tiene un extremo que
Contiene el nombre de la máquina en mayúsculas o minúsculas, y el cliente generado por
JDeveloper tiene el _endPoint variable con el nombre de la máquina en minúsculas. Esto es
Similar al caso examinado en Section 16.13.3, "How to Analyze Web Services
Running in the Integrated Server".
La solución es importar el WSDL en JDeveloper para que se enumeran en el
Navigator y, a continuación, edite el archivo WSDL, de manera que el nombre de la máquina es
minúscula. A continuación, puede
Generar el cliente (y asociar las clases de proxy) y ejecutarlo con el analizador Http
Ejecutando.

Para importar el archivo WSDL en el navegador:


1. Crear un nuevo documento WSDL aceptar los valores predeterminados.
2. Abra el documento WSDL en un navegador. Ver el origen del documento, y
Copie el código fuente XML de WSDL.
16-52 Guía del usuario para Oracle JDeveloper
Supervisión y Análisis de servicios Web.

3. Reemplazar el contenido del documento WSDL que acaba de crear con el origen
Desde el documento WSDL del servicio web que desea utilizar.

Cuando la sección Discovery del wsi-report.html faltan todos los insumos


La sección Discovery de WSI-report.html informes sobre la REGDATA artefactos que son
Los servicios web usan puede ubicar en un registro UDDI. Si ha creado un informe de un
Servicio web que no han localizado con un registro UDDI, entonces todos los insumos en
Esta sección del informe estará ausente.

16.13.3 para analizar cómo los servicios Web se ejecuta en el servidor integrado
El analizador compatible con WS-I se correlaciona los mensajes en el archivo de registro
con un conjunto de
Las aserciones estándar y, en particular, el jabón:dirección subelemento del servicio
Elemento en el documento WSDL debe coincidir exactamente con el especificado en el WSI-
log.xml
La messageEntry receiverHostAndPort senderHostAndPort o, de lo contrario el
Los mensajes no serán analizados para WS-I la compatibilidad.

16.13.3.1 cambiando la dirección de extremo


Cuando el servicio web se ejecuta en el Servidor Integrado (eligiendo Ejecutar desde la web
Menú contextual del servicio), y se crea el registro ejecutando el analizador Http mientras
Ejecutando un cliente generada contra el servicio web, es posible que necesite cambiar la
web
En el extremo de servicio WSDL o la variable _endPoint en el cliente generados
Antes de crear el archivo de registro del cliente que se ejecuta.

Para asegurarse de que el extremo de servicio web es el mismo que el de la variable _endPoint en
El servidor proxy:
1. Editar el documento WSDL del servicio web utilizando uno de los siguientes
métodos:
■ Haga doble clic en el contenedor de servicios web en el navegador, vaya al extremo
Página del cuadro de diálogo Editar servicio Web y editar el extremo de servicio Web.
■ Seleccione el contenedor de servicios web en el navegador y haga doble clic en el
archivo WSDL
El documento en la ventana de estructura. Desplácese hasta el jabón:dirección
Subelemento y editar el endpoint.
2. Cambiar el extremo de servicio web a uno de los siguientes:
■ Dirección_IP:puerto_integrados_No (el número de puerto predeterminado
integrado
8988)
■ Hostname (minúsculas)
3. JAX-RPC para servicios web, abra el archivo .java EmbeddedStub
Haga doble clic en ella y vaya a la variable _endPoint. Después de asegurar la
Extremo de servicio web es el mismo que el de la variable _endPoint en el proxy puede
Crear y analizar los registros de servicio web. Para obtener más información,
consulte Section 16.13.2,
"How to Create and Analyze Web Service Logs".

16.13.3.2 cambiando la dirección de extremo sin modificar el archivo WSDL (JAX-WS.


Solamente)
Para servicios web JAX-WS, puede cambiar la dirección de extremo sin modificar
El WSDL, como se muestra en el ejemplo siguiente:
Importar java.net.URI;
Importar java.net.URL;
Import java.util.map;
Importar javax.xml.ws.BindingProvider;

Desarrollo de Aplicaciones utilizando servicios Web. 16-


53
Supervisión y Análisis de servicios Web.

Importar javax.xml.ws.WebServiceRef;
Importar project2.proxy.Hello;
Importar project2.proxy.HelloService;

Public Class HelloPortClient


{
@WebServiceRef
Private static HelloService helloService;

Public static void main(String[] args) {


HelloService = new HelloService();
Hola hola = HelloService.getHelloPort();
SetEndpointAddress(Hola, "http://some.new.addr/endpoint");
Hola.sayHello("Bob");
}

Public static void setEndpointAddress(Object port, cadena nuevadirección) {


Puerto assert BindingProvider instanceof :
"No parece ser un puerto válido";
Afirman nuevadirección !=null :"No parece ser una dirección válida".

//
Bp = (BindingProvider BindingProvider)puerto;
Mapa <String, Object> contexto = bp.getRequestContext();
Objeto = contexto oldAddress.get(
BindingProvider.endpoint_ADDRESS_property);
Context.put(
BindingProvider.endpoint_ADDRESS_propiedad, Nuevadirección);
}
}

16.13.4 cómo examinar los servicios Web utilizando el analizador HTTP


Puede usar el analizador Http para examinar el tráfico de red de un cliente que se conecta
A un servicio web. Si desea más información, consulte Section 8.3, "Monitoring HTTP Using the
HTTP Analyzer". Le permite:
■ Observe el contenido exacto de la solicitud y la respuesta de los paquetes TCP de tu web
Servicio.
■ Editar un paquete de solicitud, reenviar el paquete, y ver el contenido de la respuesta
Paquete.
Puede utilizar los resultados para depurar un local o remotamente, servicio Web implementado.

Nota: Para poder utilizar el analizador HTTP, puede que necesite modificar
La configuración de proxy. Para obtener más información, consulte Section 16.2.1, "How to
Use Proxy Settings and JDeveloper".

Examinar los paquetes enviados y recibidos por el cliente a un servicio web:


1. Crear el servicio web.
2. Ejecutar el servicio web integrado en el servidor WebLogic haciendo clic con el botón

secundario en el
El contenedor de servicios web en el navegador y elija Ejecutar web_service.
O
16-24 Guía del usuario para Oracle JDeveloper
Supervisión y Análisis de servicios Web.

Implementar y ejecutar el servicio web en Oracle WebLogic Server. Para obtener más
información,
Ver Section 16.12, "Deploying Web Services".
3. Iniciar el analizador Http seleccionando Ver > Analizador HTTP. Se abre en su propia
Ventana en JDeveloper.
4. Ejecutar el analizador Http haciendo clic en Start HTTP Analyzer.

5. Ejecutar el proxy de cliente para el servicio web. El paquete de solicitud/respuesta


pares son
Enumerados en el analizador Http.
6. Para examinar el contenido de un par de solicitud/respuesta resaltarlo en la ficha Historial
Y, a continuación, haga clic en la ficha Datos.
7. Puede desplazarse rápidamente de un par a la anterior o la siguiente haciendo clic en el

botón arriba
Siguiente mensaje anterior mensaje y botones.
Desarrollo de Aplicaciones utilizando servicios Web. 16-
55
Supervisión y Análisis de servicios Web.

16-56 Guía del usuario para Oracle JDeveloper


Parte IV
Parte IV En el desarrollo de aplicaciones
Java.

Esta parte describe cómo desarrollar aplicaciones Java con Oracle JDeveloper.
JDeveloper le permite construir y montar los applets de Java y aplicaciones cliente
Utilizando JavaBeans, interactivos, basados en el escritorio aplicaciones GUI con Swing y
Los componentes de AWT. También puede crear y ejecutar aplicaciones cliente
Java con Java Web
Iniciar dentro del JDeveloper IDE.
■ Chapter 17, "Getting Started with Developing Java Applications"
Este capítulo describe las herramientas y funciones que JDeveloper proporciona
para ayudarle
Desarrollar aplicaciones Java. Estos incluyen el Editor de código fuente de Java, los iconos
de la barra de herramientas, y
Código de Insight.
■ Chapter 18, "Programming in Java"
Este capítulo describe cómo crear aplicaciones Java. Se explica cómo definir
Clases en un diagrama. Los miembros de la clase, la herencia y la composición de las
relaciones
Son todos derivados directamente desde el código fuente de Java para las clases
■ Chapter 19, "Running and Debugging Java Programs"
Este capítulo describe cómo ejecutar y depurar programas Java. JDeveloper ofrece
Varias técnicas para vigilar y controlar la forma de ejecutar programas Java. Cuando
Ejecutar programas Java, JDeveloper mantiene un seguimiento de los procesos que se
ejecutan y
Depurado, o perfil.
■ Chapter 20, "Implementing Java Swing User Interfaces"
Este capítulo describe cómo desarrollar interfaces de Java Swing. Explica el
Las tareas fundamentales que puede realizar como se trabaja con los componentes y el
JDeveloper
Herramientas de diseño de la interfaz de usuario para crear una interfaz de
usuario.
17
17 Introducción con el desarrollo de Java
Aplicaciones

Este capítulo proporciona una descripción general de las herramientas y funciones que
JDeveloper proporciona
Para ayudarle a desarrollar aplicaciones Java.
Este capítulo incluye las siguientes secciones:
■ Section 17.1, "About Developing Java Applications"
■ Section 17.2, "About the Java Source Editor"
■ Section 17.3, "Understanding Java Source Editor Features"
■ Section 17.4, "Setting Preferences for the Java Source Editor"
■ Section 17.5, "Using Toolbar Options"
■ Section 17.6, "Using the Quick Outline Window"
■ Section 17.7, "About the Java UI Visual Editor"

17.1 sobre el desarrollo de aplicaciones Java.


JDeveloper le permite construir y montar los applets de Java y aplicaciones cliente
Utilizando JavaBeans, interactivos, basados en el escritorio aplicaciones GUI con Swing y
Los componentes de AWT. También puede crear y ejecutar aplicaciones cliente
Java con Java Web
Iniciar dentro del JDeveloper IDE.
JDeveloper proporciona recursos para editar, optimizar, ejecutar y depurar Java
Código:
■ Edición de archivos de código fuente de Java - El Editor de código fuente admite varios edición
consciente de Java
Características. Para obtener más información, consulte Section 18.3, "Editing Java Code".
■ Construcción de Apache Ant - Compilar proyectos utilizando la marca y reconstruir los
comandos,
O Apache Ant. Para obtener más información,
consulte Section 18.6, "Building Java Projects".
■Running programas Java - seguir la pista de los procesos que se están ejecutando, depurado, o
Se ha creado un perfil. Para obtener más información,
consulte Chapter 19, "Running and Debugging Java
Programs"
■ Depurar programas Java - Herramientas de depuración local y remota. Para obtener más
Información, consulte Section 19.6, "About the Debugger"
■ Java Beans componentes - Componentes JavaBeans Technology permite implementar
Su propio marco para la recuperación de datos, la persistencia y la manipulación de
Java
Los objetos. Para obtener más información,
consulte Section 18.7, "Working with JavaBeans".

Introducción al desarrollo de aplicaciones Java. 17-1


Acerca del Editor de código fuente de Java

Refactorización proyectos Java - una colección de operaciones de refactorización que automatizado


Modificar la estructura de los códigos sin alterar el comportamiento del programa. Para
obtener más información,
Ver Section 18.8, "Refactoring Java Projects".
■ Optimizar el rendimiento de la aplicación - herramientas para analizar la calidad y
Rendimiento de tu código Java. Para obtener más información, consulte Section 18.9,
"Optimizing Application Performance".
■ Clases Java : herramientas de modelado para crear visualmente las interfaces y clases Java, o
Ver gráficamente interfaces y clases Java existente. Para obtener más información, consulte
Section 18.11, "Modeling Java Classes".
■ Las pruebas unitarias para JUnit - Herramientas para escribir y ejecutar pruebas que verifican que el código
Java, usando
El open source JUnit framework. Para obtener más información, consulte Section 18.12, "Unit
Testing with JUnit".

17.2 sobre el Editor de código fuente de Java


El Editor de código fuente de Java muestra archivos de código fuente de Java, y facilita la edición
de código Java.
El editor de código fuente de Java es una forma especializada de la fuente genérica Editor que
JDeveloper proporciona para editar código fuente a través de varias tecnologías, incluidos
JSP, XML y HTML.
Además de las funciones específicas de Java del Editor de código fuente de Java, también
puede utilizar
El conjunto de características comunes que JDeveloper proporciona para mejorar la codificación en
todos
Dominios. Estas características están disponibles a través del menú contextual o el menú Source.
Al hacer doble clic en un nodo en la aplicación Navegador abre o trae el valor predeterminado
Editor para el primer plano. Cuando un archivo está abierto en el Editor de código fuente, su
correspondiente
Los elementos se muestran jerárquicamente en la ventana de estructura. Al hacer doble clic en un
nodo
En la ventana Estructura cambia el foco a la definición de ese elemento en el origen
Editor.
Puede personalizar el comportamiento del Editor de código fuente Java especificando preferencias
en
El cuadro de diálogo de preferencias.

17.3 Comprender las características del Editor de código fuente de Java


El Editor de código fuente de Java proporciona funciones para habilitar la navegación más fácil y
rápido
A través de código.

17.3.1 Usando código Insight


Con código Java Insight, puede filtrar información que no es probable que sea tan útil
(Como paquetes de nivel superior, importado de las clases, los métodos de objeto
predeterminado, obsoleta
Artículos) y enfatizar la información que usted querrá centrarse en variables locales,
Los miembros declaradas localmente, métodos sobrecargados).
Puede configurar miembro Insight, la aplicación específica de Java de código Insight
Conclusión insight, y usted puede elegir mostrar los miembros descartados o no en el código
Parámetro de Insight Insight ventana.
Estados Insight le proporciona una lista de qué instancia y miembros estáticos (campos,
Métodos, clases internas) son accesibles desde un determinado contexto de la instrucción. Por
ejemplo, TI
Le indica qué métodos se puede llamar desde cualquier método dado.
Puede utilizar código Insight para acelerar el proceso de escritura de código. Insight tiene código
Dos variedades: finalización y parámetro de Insight Insight. Puede habilitar o deshabilitar

17-2 Guía del usuario para Oracle JDeveloper


Comprender las características del Editor de código
fuente de Java

Cada uno de forma independiente y el retardo en segundos para cada que aparezca cuando el
cursor está
Pausa en un punto de inserción correspondiente.
Para invocar la finalización tras escribir el período de separación o, en el mapa de teclado por
defecto, pulse
Ctrl+Espacio. Para invocar el parámetro insight, pausa después de escribir una abertura
(la izquierda)
Paréntesis o, en el mapa de teclado por defecto, pulse Ctrl+Mayús+Espacio. Para salir de
cualquier tipo de
Insight en cualquier momento, presione la tecla Esc. Tenga en cuenta que si cambia su
keymapping, estos
Los aceleradores de teclado puede cambiar. Puede hacer clic en QuickDoc, situado en la
parte inferior
Derecho de la terminación insight lista, para mostrar el Javadoc para la seleccionada
actualmente
Elemento
Tras un método ha sido completado por la finalización insight, el editor de código fuente
Rellena automáticamente los parámetros basados en el código del método. Puede tab
entre
Estos parámetros y editarlos manualmente o utilizando el parámetro insight.él editor de código
fuente
Agregará automáticamente una importación si sólo puede encontrar u na
coincidencia exacta para solucionar un
Referencia a una clase. Puede establecer las preferencias para esta función en el cuadro de
diálogo de preferencias.
Para cambiar el código de Insight o configuración para ver o cambiar los aceleradores del principal
Elegir el menú Herramientas > Preferencias para abrir el cuadro de diálogo Preferencias y, a
continuación, desplácese a
La página apropiada. Para obtener más información, consulte Section 17.4.1, "How to Set Code
Insight Options for the Java Source Editor"

17.3.1.1 la adición de anotaciones para el código Java


Utilice el código Insight característica para agregar rápidamente anotaciones para el código
Java. Un
La anotación se utiliza para asociar la información con un elemento de programa. Las
anotaciones pueden
Utilizarse en clases, campos, métodos, parámetros, variables locales, constructores,
Las enumeraciones y paquetes. Para agregar anotaciones en el código Java: declarar el
Anotación, cree una función y, a continuación, agregue sus anotaciones.
Cuando comience a agregar una anotación, miembro Insight (Ctrl-espacio) muestra una lista
de
Opciones (campos, miembros, clases) basados en el contexto de la instrucción. El parámetro
Insight
(Ctrl-mayús-Espacio) se muestra información acerca de la anotación, como el nombre de
la
Los elementos del tipo de anotación, los valores predeterminados y los valores creados.
También
Resalta el elemento actualmente bajo el cursor en la anotación.
Para obtener más información,
consulte Section 18.5, "How to Customize Javadoc Options for the
Java Source Editor."

17.3.2 Usando código Peek


Puede mantener presionada la tecla Mayús y, a continuación, sitúe el puntero sobre una
variable o método para mostrar su
Definición en una ventana flotante. Esta característica hace que sea cómodo para ver
rápidamente el código
Sin mover el cursor hacia el foco de su código actual.

17.3.3 utilizando desplazamiento Consejos


Al arrastrar la barra de desplazamiento vertical, una punta pequeña ventana aparece
junto a la barra,
Revelar los métodos que son visibles o parcialmente visibles en la pantalla. Esto le permite
Ver más fácilmente qué métodos están a la vista mientras se desplaza rápidamente. También
puede ver el
El nombre del método cuyo principio no está inmediatamente a la vista.

17.3.4 Búsqueda incrementalmente


Para realizar una búsqueda incremental, desde el menú principal seleccione Buscar >
Búsqueda Buscar incremental
Avance o Buscar, luego mencremental Buscar hacia atrás. En el cuadro de diálogo que
aparece,
Comience a escribir. A medida que escribe, el cursor salta a la siguiente instancia de esa particular

Introducción al desarrollo de aplicaciones Java. 17-3


Comprender las características del Editor de código fuente de Java

La combinación de letras, ya sea hacia adelante o hacia atrás. La búsqueda no admite


Los comodines.

17.3.5 Usar Teclas de método abreviado


Teclas de método abreviado, o aceleradores, son combinaciones de teclas que puede utilizar para
desplazarse o
Para realizar determinadas operaciones utilizando el teclado en lugar del ratón. Puede seleccionar
Desde una gran variedad de mapeos predefinidos o definir sus propios aceleradores.
Para ver o cambiar los aceleradores existentes, definir nuevos aceleradores, o para cargar el preset
Keymaps, desde el menú principal seleccione Herramientas y, a continuación, Preferencias to abra las
preferencias
Cuadro de diálogo y, a continuación, vaya a la página de teclas de método abreviado. Para ver o
cambiar los aceleradores de
El editor, seleccione Editor de código en la lista Categoría.
Tenga en cuenta que bloquear comentar es indicada por la línea de alternar los comentarios. Se define
en el
Mapa de teclado por defecto como Ctrl-Mayús-Slash o Ctrl-Slash.

17.3.6 Bookmarking
Mientras el código de marcadores:
■ Puede ver una lista de todos los marcadores que se han creado en la ventana Marcadores. Este
La ventana aparece cuando se hace clic en el icono Ir a marcador. Esta ventana también
Muestra el número de línea y el nombre del método que contiene el marcador.
■ Puede crear marcadores numerados usando el atajo de teclado
Ctrl-mayús-número. Puede desplazarse rápidamente al marcador con Ctrl-number.

17.3.7 mostrando código fuente Java


Para desplazarse a la fuente para cualquier identificador en un archivo Java abierto, haga clic con el botón
derecho del ratón en el
Identificador que desea examinar y elija Ir a declaración. Alternativamente, usted
Mantenga presionada la tecla Ctrl y haga clic en un identificador para navegar hasta su origen. Si el
Fuente no está disponible, JDeveloper será de ingeniería inversa en el archivo de clase.
Usted puede hojear importado las clases e interfaces, miembro de campos y métodos, y
Las variables locales. Si estás navegando por un método o un constructor, esta invocación
Búsqueda declaración resolverá los tipos a fin de determinar el método correcto o
Invocación de constructores.
Por ejemplo, el código de ejemplo 17-1 revoca la declaración búsqueda en SetText. Ella
Abre el código fuente de javax.swing.JButton, con el método SetText()
Muestra.

Ejemplo 17-1 revocando la Declaración Buscar


Importar javax.swing.JButton
...
JButton b1 = new JButton();
...
B1.SetText: ('OK');

Si el identificador no puede ser navegado o si no hay nada en que la posición del cursor,
este
El comando Buscar del menú contextual se desactivará. Si JDeveloper es
No se pudo localizar la ubicación apropiada para saltar o si el identificador no puede ser
Navegado debido a las restricciones de acceso (por ejemplo, miembros privados), el código fuente
Java
La barra de estado del Editor mostrará un mensaje indicándolo.

17-4 Guía del usuario para Oracle JDeveloper


Configuración de preferencias para el Editor de código
fuente de Java

17.3.8 Usando plantillas de código.


Las plantillas de código son secciones de código escrito previamente que puede ser
convenientemente insertado en
Archivo de origen para evitar escribirlo manualmente. Las plantillas pueden modificar de forma
inteligente el
Inserta el código para adaptarlo a su entorno de código y las importaciones requeridas por
las plantillas de código
Importar automáticamente. Puede utilizar accesos directos para acelerar la selección de los
Plantilla necesaria.
Al presionar Ctrl+Entrar en cualquier parte del archivo de origen muestra una lista de las
plantillas de código que
Puede seleccionar. Las plantillas incluidas en esta lista son contextuales y sólo aquellos
Adecuado para la ubicación actual se ofrecen. Puede hacer clic en la parte inferior QuickDoc
Esquina derecha de esta lista para ver la estructura de la plantilla de código seleccionado.
Si estuviera utilizando la plantilla existente para el bucle for, por ejemplo, tendría que
escribir
Y luego (en el valor predeterminado de keymapping) presione Ctrl+Intro. La plantilla sería
entonces
Se llena de la siguiente manera:
For (;;)

Una lista completa de todas las plantillas de código está disponible en la


Ay u d a d e l E d i t o r d e c ó d i g o .
Para editar o crear plantillas de código, o para ver o cambiar los aceleradores del principal
Elegir el menú Herramientas > Preferencias para abrir el cuadro de diálogo Preferencias y, a
continuación, desplácese a
La página apropiada.
Para obtener más información, consulte Section 18.3.9, "How to Use Code Templates."

17.4 Configuración de preferencias para el Editor de código fuente de Java


Puede personalizar el comportamiento del Editor de código fuente de Java utilizando el
cuadro de diálogo de preferencias.
También puede utilizar el cuadro de diálogo de Preferencias para especificar la configuración
de la fuente general
Entorno de edición.

17.4.1 Cómo establecer el código Insight opciones para el Editor de código fuente de Java
Puede configurar diferentes opciones de Insight para crear el comportamiento que desee.

Para configurar las opciones de Code Insight tal como se aplica a Java:
1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo de Preferencias, expanda el nodo Editor de código.
3. Expanda el nodo y seleccione código Java Insight.

4. En la página de Java Insight, establezca las opciones que desee.

5. Haga clic en Aceptar.

17.4.2 Cómo Establecer comentario y Brace-Matching opciones para el Editor de código fuente de
Java
JDeveloper permite establecer comentario y opciones de coincidencia de llaves para Java
Editor de código fuente.

Para configurar las opciones de Java comentario y coincidencia de llaves en el editor de código
fuente:
1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo de Preferencias, expanda el nodo Editor de código.

3. Seleccione el nodo de pantalla.

Introducción al desarrollo de aplicaciones Java. 17-5


Uso de las opciones de herramientas

4. En la página de visualización, activar o desactivar el relleno automático de llaves y el retardo


Tiempo.
5. Haga clic en Aceptar.

6. Abrir el cuadro de diálogo de Preferencias, expanda el nodo Editor de código y seleccione Java
Nodo.
7. En la página de Java, establezca los atributos para comentarios y coincidencia de llaves para

crear el
El comportamiento que usted desea.
8. Haga clic en Aceptar.

Tenga en cuenta que bloquear comentar es una función del acelerador. En el mapa de teclado por
defecto, use
Ctrl+Mayús+/ o Ctrl+/ -bloque de comentario de código Java.

17.4.3 Cómo habilitar la importación automática Asistencia para el Editor de código fuente de Java
Puede ver la ayuda que le permite organizar las declaraciones de importación en Java
Editor de código fuente.

Para que la asistencia para agregar automáticamente las declaraciones de importación:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo de Preferencias, expanda el nodo Editor de código.

3. Expanda el nodo de Java y seleccionar las importaciones.

4. En la página de importación, seleccione Habilitar Auto-Popup para importar Asistencia.

5. Haga clic en Aceptar.

17.4.4 Cómo configurar las opciones de clasificación de la declaración de importación para el Editor de
código fuente de Java
Puede establecer las opciones para ordenar las declaraciones de importación en el Editor de código
fuente de Java.

Para configurar las opciones para ordenar las declaraciones de importación:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo de Preferencias, expanda el nodo Editor de código.

3. Expanda el nodo de Java y seleccionar las importaciones.

4. En la página Importaciones, establecer los atributos para crear el comportamiento que desea

cuando
Ordenar las declaraciones de importación en el editor.
5. Haga clic en Aceptar.

17.5 Usando las opciones de la barra de herramientas


El Editor de código fuente de Java muestra archivos de código fuente de Java, y facilita la edición
de código Java.
Iconos que realizan diversas funciones están situados en la parte superior del Editor de código
fuente de Java, como
Descrito en Table 17–1.
17-6 Guía del usuario para Oracle JDeveloper
Mediante la ventana de esquema rápido

Tabla 17-1 Las opciones de la barra de herramientas


Icono Nombre Descripción

Reseña rápida Haga clic para mostrar el árbol de los


disponibles
Campos y métodos de la clase actual y
Sus superclases.
Al hacer clic en este icono aparece la reseña rápida
Ventana (para obtener más información,
consulte Section 17.6,
"Using the Quick Outline Window"). Este
Ventana justo encima de las carrozas y contiene un
código
Árbol de los métodos disponibles y los campos del
La clase actual y sus superclases. Puede
Instantáneamente, empiece a escribir en un campo de
filtro para reducir el
Elementos visibles, permitiendo una rápida y fácil
selección
Para la navegación hasta el lugar deseado
Código de relieve Haga clic para resaltar todas las instancias del
código
Componente que el cursor se encuentra actualmente.
Borrar todo el resaltado Haga clic en para borrar todo el resaltado.
Generar descriptores de acceso Haga clic aquí para insertar métodos get y set
en una clase,
Utilizando el cuadro de diálogo Generar descriptores de
acceso.
Los métodos de reemplazo Haga clic en anular los métodos heredados de la
clase
En foco.
Implementar interfaces Haga clic aquí para modificar una clase de destino
para implementar uno
O más interfaces, o para hacer una interfaz destino
Ampliar una o más interfaces utilizando el
Implementar la interfaz de diálogo.
Formatear Haga clic aquí para aplicar formato de origen a su
código.
Surround Haga clic aquí para rodear el bloque seleccionado
actualmente de
El texto en el Editor de código fuente de Java con una
codificación
Construir, mediante el diálogo con sonido envolvente.
Alternar marcador Haga clic aquí para insertar o quitar un marcador en
la línea
De código actualmente en foco.
Ir al marcador siguiente Haga clic para colocar el cursor en el siguiente
marcador.
Ir al marcador anterior haga clic para colocar el cursor en el anterior
Marcador.
Mostrar el elemento Haga clic aquí para ver sólo un elemento particular
seleccionado en la
Sólo Editor. Puede utilizar esta característica para centrarse
firmemente
En un método, la clase, la clase interna, o campo
Declaración. Un mensaje en la parte inferior del archivo
Recuerda que el mostrar el elemento seleccionado
Modo está actualmente activo.
Coloración de bloque Haga clic en para activar el bloque de colorear.
Puede utilizar esta
Característica a destacar los bloques de código para mejor
La legibilidad. Preferencias de color se puede ajustar
mediante
El cuadro de diálogo de preferencias.

17.6 Usando la Ventana de esquema rápido


Al hacer clic en el icono de la barra de herramientas Esquema rápido directamente a la
derecha del campo Buscar trae arriba
La ventana de esquema rápido se muestra en la figura 17-1. Esta ventana flota justo por
encima de la
Código y contiene un árbol de los métodos disponibles y los campos de la clase actual y su
Superclases. Inmediatamente puede empezar a escribir en un campo de filtro para reducir
los elementos visibles,
Permitiendo una rápida y fácil selección para la navegación hasta el lugar deseado.

Introducción al desarrollo de aplicaciones Java. 17-7


Sobre Java UI Editor Visual

Figura 17-1 Ventana Esquema rápido

Table 17–2 Muestra los iconos y opciones disponibles.

Tabla 17-2 Iconos de la barra de herramientas rápida


Icono Nombre Descripción
Mostrar métodos Haga clic aquí para mostrar los métodos y constructores. El
El valor predeterminado es, campos, métodos y miembros estáticos
todos
Muestra.
Mostrar campos Haga clic para mostrar los campos. El valor predeterminado es
métodos,
Campos y aparecen todos los miembros estáticos.
Mostrar miembros estáticos Haga clic en para mostrar los miembros estáticos. El valor
predeterminado es
Los métodos, campos y aparecen todos los miembros estáticos.
Mostrar sólo los miembros públicos Haga clic en para mostrar sólo los miembros públicos.
El valor predeterminado
Valor está desactivada.
Mostrar miembro heredado Haga clic en para mostrar sólo los miembros heredados.
Ordenar alfabéticamente Haga clic para ordenar alfabéticamente los miembros de clase.
El
El valor predeterminado es deseleccionado.
Ordenar por tipo Haga clic para ordenar los miembros de la clase, primero por
tipo (en este
Orden: constructores, métodos, campos, clases internas),
Y después alfabéticamente dentro de esas categorías. El
El valor predeterminado está seleccionado.
Haga clic en la flecha hacia abajo situada junto a Ordenar
alfabéticamente
Ver la opción.
Ordenar por Access Haga clic para ordenar los miembros de clase primera por
modificador de acceso,
Y después alfabéticamente dentro de esas categorías. El
El valor predeterminado es deseleccionado.
Haga clic en la flecha hacia abajo situada junto a Ordenar
alfabéticamente
Ver la opción

17.7 sobre Java UI Editor Visual


Java UI Editor visual muestra los componentes visuales de una interfaz de usuario de edición
Modo. Nota: puede utilizar el Editor visual para Java Swing/AWT aplicaciones únicamente.
Cuando un editor visual de Java está abierta, sus elementos correspondientes se muestran
En la ventana Estructura jerárquicamente. Si el Inspector de propiedades está abierta, seleccionar
Elementos de la ventana de estructura o Java Editor Visual cambia la selección.
En el Inspector.

17-8 Guía del usuario para Oracle JDeveloper


Sobre Java UI Editor Visual

Java Editor visual muestra una jerarquía de la GUI. Si estos son los elementos de un menú,
la jerarquía
Se muestra en una moda; si estos son elementos nonmenu, aparece en otro. El
Modo de presentación varía según el tipo de edición que se dedican en difiere. Para
Si desea más información, consulte Section 18.2.9, "How to View the Hierarchy of a Class or
Interface."
Cuando el nodo seleccionado en el navegador, su estructura GUI también se muestra en la
Ventana de estructura. Todos los elementos de la GUI nonmenu para este objeto aparecen
bajo un nodo denominado
Interfaz de usuario. Los elementos de menú aparecen en un menú denominado nodo.
No aparecen los elementos de la GUI
Debajo de un nodo denominado Otros. Una vez abierto el Editor visual para Java
Objeto en el navegador para cambiar entre la visualización de elementos de la GUI y nonmenu
Los elementos del menú, sólo hay que hacer clic en un nodo por debajo de estos UI o nodos
en el menú
Ventana de estructura.
Debido a que la visualización en el Editor Visual de Java está arraigada en la GUI de jerarquía,
cuando
Haga clic en un nodo (para todos los objetos GUI) en la ventana Estructura lo que se
carga en el editor
Es la representación visual del nodo raíz y todos sus descendientes: toda la
La jerarquía se abre, independientemente del nodo de la jerarquía seleccionada. Qué
Muestra en el editor refleja la jerarquía de GUI completa; el elemento es pecífico
seleccionado
En la pantalla refleje el nodo específico seleccionado en la ventana. Selecciones en el
Ventana de estructura y el Editor Visual de Java se mantienen sincronizados.
Si usted tiene un huérfano en la ventana Estructura de nodo, dicho nodo y sus
descendientes
Comprenden toda la jerarquía, con el huérfano es la raíz de la jerarquía. Java
Esto se reflejará en pantalla de IU. Si hubiera un control, por ejemplo, que no
estaba afiliado,
Y ha seleccionado el nodo de ese control, el control y los descendientes
Ahora aparecen en el editor, sin un contenedor. Cualquier cambio que realice a dicho
control,
Sin embargo, resultará en el código generado.
Haga clic con el botón derecho del ratón en cualquier parte dentro del Editor Visual de Java
para traer un contexto
Menú de comandos. Los menús contextuales difieren, dependiendo de si usted
Editar nonmenu o elementos de menú y los comandos disponibles dentro del contexto
Menú dependen del objeto seleccionado.

17.7.1 Componentes AWT y Swing de Java


Utilizar Swing y AWT componentes JavaBeans para ensamblar la interfaz de usuario (IU)
para un
Aplicación o applet Java. Construir la interfaz de usuario en el Editor Visual Java
seleccionando
JavaBeans desde la paleta de componentes, tales como botones, campos de texto, listas,
diálogos y
Los menús. A continuación, puede establecer los valores de las propiedades del componente
y adjuntar el evento-handler
Código para los eventos de componente. Herramientas para diseñar visualmente y el Programa de
las clases de Java para
Producir nuevo compuesto o complejo de componentes.
Para obtener más información, consulte Section 20.1, "About Implementing Java Swing User
Interfaces."

Introducción al desarrollo de aplicaciones Java. 17-9


Sobre Java UI Editor Visual

17-10 Guía del usuario para Oracle JDeveloper


18
Programación en Java
18

En este capítulo se describe cómo utilizar las herramientas y características


proporcionadas por JDeveloper a
Crear aplicaciones Java. Se explica cómo definir clases en un diagrama. Los miembros de la
clase,
La herencia, la composición y las relaciones son todas derivadas directamente de la fuente
de Java
Código para esas clases.
Este capítulo incluye las siguientes secciones:
■ Section 18.1, "About Programming in Java"
■ Section 18.2, "Navigating in Java Code"
■ Section 18.3, "Editing Java Code"
■ Section 18.4, "Adding Documentation Comments"
■ Section 18.5, "How to Customize Javadoc Options for the Java Source Editor"
■ Section 18.6, "Building Java Projects"
■ Section 18.7, "Working with JavaBeans"
■ Section 18.8, "Refactoring Java Projects"
■ Section 18.9, "Optimizing Application Performance"
■ Section 18.10, "Profiling a Project"
■ Section 18.11, "Modeling Java Classes"
■ Section 18.12, "Unit Testing with JUnit"

18.1 sobre la programación en Java


JDeveloper le permite construir y montar los applets de Java y aplicaciones cliente
Utilizando JavaBeans, interactivos, basados en el escritorio aplicaciones GUI con Swing y
Los componentes de AWT. También puede crear y ejecutar aplicaciones cliente
Java con Java Web
Iniciar dentro del JDeveloper IDE.
JDeveloper proporciona recursos para realizar las siguientes tareas en el dominio de Java:
■ Clases Java : herramientas de modelado para crear visualmente las interfaces y clases Java, o
Ver gráficamente interfaces y clases Java existente.
■ Edición de archivos de código fuente de Java - El Editor de código fuente admite varios edición
consciente de Java
Características.
■ Refactorización proyectos Java - una colección de operaciones de refactorización que automatizado
Modificar la estructura de los códigos sin alterar el comportamiento del programa.
Programación en Java 18-1
Navegando en código Java

■ Construcción de Apache Ant - Compilar proyectos utilizando la marca y reconstruir los


comandos,
O Apache Ant.
■ Ejecutar programas Java - seguir la pista de los procesos que se están ejecutando, depurado, o
Se ha creado un perfil.
■ Depurar programas Java - Herramientas de depuración local y remota.
■ Optimizar el rendimiento de la aplicación - herramientas para analizar la calidad y
Rendimiento de tu código Java.
■ Pruebas unitarias con Junit - Herramientas para escribir y ejecutar pruebas que verifican que el código Java,
usando
El open source JUnit framework.

18.2 navegando en código Java


JDeveloper soporta características consciente de Java para localizar y mover al código fuente
Para sus proyectos las clases e interfaces, y sus miembros.

18.2.1 Cómo explorar las clases o interfaces


Mientras trabajaba en JDeveloper, puede buscar elementos de Java directamente desde la
interfaz de usuario o
Directamente desde un archivo abierto en el Editor de código fuente de Java.

Para buscar un elemento Java directamente desde la interfaz de usuario:


1. Desde el menú principal, elija Ir > Ir a Java Tipo. O bien, puede usar el
Atajo de teclado, Ctrl-minus.
2. En el cuadro de diálogo Ir a Java escriba, escriba el nombre del tipo de Java que desea
Localizar. Cuando se empieza a introducir texto en este campo, una lista de entidades Java
matching
El texto se muestra.
3. Haga doble clic en una entidad en la lista para abrirlo en el editor de código fuente.

Para buscar una clase o interfaz para un archivo abierto en el editor:


1. Con el archivo abierto en el editor, asegúrese de que el editor tiene el foco.
2. Seleccione el nombre de la clase o interfaz en el archivo de origen, haga clic con el botón derecho del

ratón y seleccione Ir a
Declaración.
El archivo de código fuente se abre en el Editor de código fuente de Java.

18.2.2 Cómo localizar la declaración de una variable, clase o método


Cuando se trabaja en el Editor de código fuente de Java, puede localizar rápidamente la declaración
de cualquier
Identificador.

Para desplazarse a la declaración de un elemento de código:


■ Haga clic con el botón derecho del ratón sobre el elemento de código y elija Ir a declaración,
o
■ Pulse la tecla Control y haga clic con el botón izquierdo del ratón sobre el elemento de código.
El código fuente de dicho elemento se abre, con la línea en la que se declara
Resaltado.
18.2.3 Cómo encontrar los usos de una clase o interfaz
Mientras se trabaja en el Editor de código fuente de Java, puede localizar r ápidamente las
referencias a una clase o
Interfaz y sus miembros. De forma predeterminada, usos en el proyecto actual y su dependencia

18-2 Guía del usuario para Oracle JDeveloper


Navegando en código Java

Los proyectos serán notificados. Puede ampliar la búsqueda a las bibliotecas si los archivos de
origen
Las bibliotecas son accesibles.
El comando Buscar usos también pueden aplicarse a los distintos métodos y campos, y
A las variables locales y parámetros.

Para encontrar los usos de una clase:


1. Seleccione la clase o interfaz en una de las siguientes maneras:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o la estructura de la ventana, seleccione la clase o interfaz.
2. Invoque el comando mediante una de las siguientes maneras:
■ Elija Buscar > Buscar usos.
■ Haga clic con el botón derecho del ratón y elija Buscar usos.
■ Presione Ctrl+Alt+U.
Los usos delobjeto <> diálogo abrirá
3. En el cuadro Buscar, seleccione los tipos de referencias que la búsqueda devolverá.

4. En el cuadro Dónde definir las áreas adicionales opcionales que desee buscar.

5. La salida directa de la búsqueda: seleccione Nueva ficha para dirigir la salida a un nuevo
Registro de usos. Si no está seleccionada, el resultado de la búsqueda anterior para usos, si
alguna,
Ser descartado.
6. Haga clic en Aceptar.

Se iniciará la búsqueda y los resultados se mostrarán en el registro de usos


Ventana.

18.2.4 Cómo encontrar los usos de un método


Mientras se trabaja en el Editor de código fuente de Java, puede localizar rápidamente las
referencias a un
Método.
La búsqueda mostrará las aplicaciones del método a las instancias de la clase o interfaz
Para los que se define el método y también para las instancias de sus subclases o
Las subinterfaces, si los hubiere, que heredan el método.
El comando Buscar usos también puede aplicarse a clases e interfaces, campos y
Las variables locales y parámetros.

Para encontrar los usos de un método:


1. Seleccione el método de una de las siguientes maneras:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En el panel Estructura, seleccione el campo.
2. Invoque el comando en una de las siguientes maneras:
■ Elija Buscar > Buscar usos.
■ Haga clic con el botón derecho del ratón y elija Buscar usos.
■ Presione Ctrl+Alt+U.
Los usos del método se muestra el cuadro de diálogo <>. Este cuadro de diálogo
proporciona varias opciones
Que puede especificar para la búsqueda de usos.

Programación en Java 18-3


Navegando en código Java

■ Especifique las opciones en el cuadro de diálogo y haga clic en Aceptar para iniciar la
búsqueda.

18.2.5 Cómo encontrar los usos de un campo


Mientras se trabaja en el Editor de código fuente de Java, puede localizar rápidamente las
referencias a un campo.
La búsqueda mostrará las referencias al campo en las instancias de la clase o interfaz
Que el campo está definido y también para las instancias de sus subclases o subinterfaces, si
Cualquier, que heredan el campo.
El comando Buscar usos también puede aplicarse a clases e interfaces, métodos y
A las variables locales y parámetros.

Para encontrar los usos de un campo:


1. Seleccione el campo en una de las siguientes maneras:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En el panel Estructura, seleccione el campo.
2. Invoque el comando en una de las siguientes maneras:
■ Elija Buscar > Buscar usos.
■ Haga clic con el botón derecho del ratón y elija Buscar usos.
■ Presione Ctrl+Alt+U.
3. Completar los usos delobjeto <> cuadro de diálogo y haga clic en Aceptar. Puede especificar opciones para
Ampliar la búsqueda a otras áreas, definir el alcance de la búsqueda y, opcionalmente,
Especificar que los resultados se muestren en una nueva pestaña en la ventana de registro.
Se iniciará la búsqueda y los resultados se mostrarán en los usos de
<Objeto> Ventana de registro.

18.2.6 Cómo encontrar los usos de un parámetro o una variable local


Mientras se trabaja en el Editor de código fuente de Java, puede localizar rápidamente las
referencias a un local
Una variable o un parámetro en el cuerpo de un método.
El comando Buscar usos también puede aplicarse a clases e interfaces, métodos y
Los campos.

Para encontrar los usos de un parámetro o una variable local:


1. Seleccione el nombre de la variable o parámetro en el Editor de código fuente de Java.
2. Invoque el comando en una de las siguientes maneras:
■ Elija Buscar > Buscar usos.
■ Haga clic con el botón derecho del ratón y elija Buscar usos.
■ Presione Ctrl+Alt+U.
Se iniciará la búsqueda y los resultados se mostrarán en el registro de usos
Ventana.

18.2.7 Cómo encontrar definiciones de método invalidado


Mientras se trabaja en el Editor de código fuente de Java, puede fácilmente identificar los
métodos que reemplazan
Las definiciones de la superclase. Definiciones primordiales están marcados con
las anulaciones flecha arriba
Icono en el margen del Editor de código fuente de Java.

18-4 Guía del usuario para Oracle JDeveloper


Navegando en código Java

Para ver la definición de un método invalidado, haga clic en el icono de margen Overrides.
Si navega a la anulación, a continuación, haga clic en el botón Atrás de la barra de
herramientas Principal para volver a la
Vista anterior.

18.2.8 Cómo encontrar las declaraciones del método implementado


Mientras se trabaja en el Editor de código fuente de Java, puede fácilmente identificar los
métodos que reemplazan
Las definiciones de la superclase. Definiciones primordiales están marcados con
los implementos abajo
El icono de la flecha en el margen del Editor de código fuente de Java.
Para ver la definición de un método invalidado, haga clic en el icono de margen implementos.
Si navega a la anulación, a continuación, haga clic en el botón Atrás de la barra de
herramientas Principal para volver a la
Vista anterior.

18.2.9 Cómo ver la jerarquía de una clase o interfaz


Mientras se trabaja en el Editor de código fuente de Java, puede examinar la jerarquía de
subtipos
Y los supertipos de una clase o interfaz. La jerarquía ventana muestra la jerarquía de
Las clases seleccionadas o interfaz.

Para ver la jerarquía de una clase o interfaz en el Editor de código fuente de Java:
1. Seleccione la clase o interfaz y, a continuación, haga clic con el botón derecho del ratón y
elegir el tipo Jerarquía o
Elija Navegar > Tipo Jerarquía.
Se abrirá la ventana de la jerarquía (si no está ya abierto) y el árbol de cualquiera
Subtipos o supertipos será mostrado.
2. Para alternar la visualización entre subtipos y supertipos, haga clic en el subtipo
Jerarquía o jerarquía supertipo botón.

Para abrir una jerarquía inicialmente en el Editor Visual de Java:


1. Seleccione un nodo en el navegador.
2. Haga clic con el botón derecho del ratón y elija Editar, o usar el menú Ver.

Toda la interfaz gráfica de la jerarquía para este nodo se muestra en el editor. El


método de
Presentación depende de si esta jerarquía consta de elementos de menú o nonmenu.

18.2.10 paso a paso a través de los miembros de una clase


Puede utilizar los aceleradores de teclado al paso de un miembro a otro en una clase
Definición en un editor de código fuente de Java:
■ Con el paso a la siguiente definición o declaración de miembro en la fuente actual de Java
Vista, pulse , o bien elija Alt-Down Navegar > Ir al siguiente miembro.
■ Con el paso del miembro anterior definición o declaración en el actual código fuente Java
Vista, pulse , o bien elija Alt-Up navegar, entonces vaya al miembro anterior.
Estos código adicional-stepping comandos también están definidos, pero no están asignadas
Aceleradores predeterminados:
■ Ir a la siguiente clase
■ Ir al siguiente campo
■ Ir al siguiente método
■ Ir a la clase anterior

Programación en Java 18-5


Edición de código Java

■ Ir al campo anterior
■ Vaya al método anterior
Estos comandos se encuentran en la categoría de navegar por la página de teclas de método
abreviado de la
Cuadro de diálogo de preferencias. Puede agregar o cambiar los aceleradores.

18.3 Edición de código Java


JDeveloper proporciona muchas funciones de edición consciente de Java que puede utilizar para
mejorar su
La productividad. Como una alternativa a la edición de texto, también puede utilizar el Editor
Visual de Java
Cuando el desarrollo de interfaces gráficas de usuario. El Editor de código fuente y el Editor visual
son
Sincronizados; un cambio en uno se refleja inmediatamente en el otro. La edición Java
Aumentar las características de edición de origen genérico características que admiten la codificación
en cualquier
La tecnología.

18.3.1 Edición de código con el Editor Visual de Java


El Editor visual de Java muestra los componentes visuales de una interfaz de usuario de edición
Modo.
Cuando un editor visual de Java está abierta, sus elementos correspondientes se muestran
En la ventana Estructura jerárquicamente. Si el Inspector de propiedades está abierta, seleccionar
Elementos de la ventana de estructura o Java Editor Visual cambia la selección.
En el Inspector.
Java Editor visual muestra una jerarquía de la GUI. Si estos son los elementos de un menú, la
jerarquía
Se muestra en una moda; si estos son elementos nonmenu, aparece en otro. El
Modo de presentación varía según el tipo de edición que se dedican en difiere.
Para abrir una jerarquía inicialmente en el Editor Visual de Java, sólo tienes que seleccionar un nodo
El navegador y, a continuación, haga clic con el botón derecho del ratón y elija Editar, o usar el menú
Ver. Toda la
Jerarquía de la GUI este nodo se muestra en el editor. El método de visualización
depende
Sobre si esta jerarquía se compone de elementos de menú o nonmenu.
Cuando el nodo seleccionado en el navegador, su estructura GUI también se muestra en la
Ventana de estructura. Todos los elementos de la GUI nonmenu para este objeto aparecen bajo un
nodo denominado
Interfaz de usuario. Los elementos de menú aparecen en un menú denominado nodo. No
aparecen los elementos de la GUI
Debajo de un nodo denominado Otros. Una vez abierto el Editor Visual de Java para un objeto
En el navegador, para conmutar entre la visualización de elementos de la interfaz gráfica de
usuario y menú nonmenu
Elementos, sólo hay que hacer clic en un nodo por debajo de estos UI o nodos en el menú
Ventana de estructura.
Debido a que la visualización en el Editor Visual de Java está arraigada en la GUI de jerarquía, cuando
Haga clic en un nodo (para todos los objetos GUI) en la ventana Estructura lo que se carga en el
editor
Es la representación visual del nodo raíz y todos sus descendientes: toda la
La jerarquía se abre, independientemente del nodo de la jerarquía seleccionada. Qué
Muestra en el editor refleja la jerarquía de GUI completa; el elemento específico seleccionado
En la pantalla refleje el nodo específico seleccionado en la ventana. Selecciones en el
Ventana de estructura y el Editor Visual de Java se mantienen sincronizados.
Si usted tiene un huérfano en la ventana Estructura de nodo, dicho nodo y sus
descendientes
Comprenden toda la jerarquía, con el huérfano es la raíz de la jerarquía. Java
Esto se reflejará en pantalla de IU. Si hubiera un control, por ejemplo, que no estaba
afiliado,
Y ha seleccionado el nodo de ese control, el control y los descendientes
Ahora aparecen en el editor, sin un contenedor. Cualquier cambio que realice a dicho control,
Sin embargo, resultará en el código generado.

18-6 Guía del usuario para Oracle JDeveloper


Edición de código Java

Haga clic con el botón derecho del ratón en cualquier parte dentro del Editor Visual de Java
para traer un contexto
Menú de comandos. Los menús contextuales difieren, dependiendo de si usted
Editar nonmenu o elementos de menú y los comandos disponibles dentro del contexto
Menú dependen del objeto seleccionado.

18.3.2 Abrir el Editor Visual de Java


Haga clic con el botón secundario en el archivo java en el navegador que desea modificar y
elija Abrir >
Haga clic en la ficha Diseño.
El código fuente es accesible en el Editor de código (haga clic con el botón secundario en el
archivo en el navegador
Y seleccione Abrir para ver el código fuente) de modo que puede ver y editar el código fuente
En paralelo con el diseño de la IU. Los cambios realizados en el Editor Visual de Java o
Inspector de propiedades se reflejan inmediatamente en el código fuente, y viceversa.
La barra de herramientas del Editor Visual de Java le permite trabajar fácilmente con los
componentes y duplicados
Comandos que puede elegir en el menú contextual mostrado en un
Los componentes seleccionados. Entre las operaciones de componentes incluidos son:
■ Limitaciones de peso del componente para especificar la posición de anclaje, relleno, el
relleno y el margen.
■ Alineación de posición rápidamente elementos relativos a la una de la otra.
■ Orden-Z para cambiar la secuencia de los componentes apilados.

18.3.3 Conocer Java Editor Visual clases proxy


JDeveloper es una aplicación ligera (JFC). Como tal, utilizando heavyweight (AWT)
Controles directamente en el Editor Visual de Java no funcionarán como se espera. De gramaje
extra
Ocultar siempre componentes componentes ligeros, incluyendo el ligero
Entorno JDeveloper (incluido el Editor de código y modeladores de UML).
El Editor visual de Java incluye un mecanismo proxy para registrar los proxies ligero
Para representar controles pesados para la instanciación de Java en el editor visual. Por defecto
JDeveloper incluye proxies ligero para todos los controles estándar de AWT.

18.3.4 Registrar un Editor Visual Java proxy para componentes personalizados.


JDeveloper soporta ligero opiniones de componentes pesados que registre
Para utilizar el Editor Visual de Java.

Para registrar la clase proxy:


Agregar una definición de clave-valor
para oracle.jdevimpl.uieditor.UIEditorAddin
En la sección deDesarrolladores J\lib\Addins.xml , como se muestra en
la Example 18–1.

Ejemplo 18-1 Definición de clave-valor


<property>
<key>PREFIX.class_name</clave>
<valor>PROXY_class_name</valor>
</propiedad>
Donde:
■ Prefijo es jdeveloper.concreteProxy
■ CLASS_NAME es el nombre de clase completo del componente pesado para
Que se está registrando un proxy

Programación en Java 18-7


Edición de código Java

■ PROXY_class_name es el nombre de clase totalmente cualificado de la clase proxy


para
Registrarse
Por ejemplo; si se va a registrar un hipotético componente pesado
Aplicación jdeveloper.concreteProxy.java.awt.Component utilizando
La clase proxy oracle.jdevimpl.uieditor.proxy.Component, la propiedad
Agregar tendría el aspecto Example 18–2.

Ejemplo 18-2 Componente pesado


<property>
<key>jdeveloper.concreteProxy.java.awt.Component</key>
<valor>oracle.jdevimpl.uieditor.proxy.Component</value>
</propiedad>

Para que el Editor Visual de Java clase proxy para estar disponible dentro del IDE, así que
Que aparezca puede ser añadido a la paleta de componentes, la clase de proxy debe ser
Añadido a la IDEClasspath como directiva en JDeveloper\bin\jdev.conf . Para
Ejemplo:
<myUiProxies AddJavaLibFile.jar>
Donde myUiProxies.jar contiene el archivo de clase compilado para el Editor Visual de Java
Aplicación de proxy.

18.3.5 Cómo crear una nueva clase de Java


Antes de crear una nueva clase, tenga en cuenta que primero debe crear una aplicación y un proyecto.
Tan pronto como se cree la clase, se agrega al proyecto activo.

Para crear una clase nueva y agregarlo a un proyecto:


1. En el Application Navigator, seleccione el proyecto que desee agregar a la clase.
2. Haga clic con el botón derecho del ratón y seleccione Nuevo.

3. En la nueva galería, en la categoría General, seleccione Java.

4. Bajo Elementos, seleccione la clase.

5. En el cuadro de diálogo Crear clases Java, introduzca el nombre de la clase, el nombre del

paquete, y el
Superclase que la nueva clase se extienda. Seleccionar los atributos como sea necesario.
6. Haga clic en Aceptar.

La nueva clase aparece en el proyecto activo.

18.3.6 Cómo crear una nueva interfaz Java


Antes de crear una nueva interfaz, tenga en cuenta que primero debe crear una aplicación y un
Proyecto. Tan pronto como se cree la interfaz, se agrega al proyecto activo.

Para crear una nueva interfaz y agregarlo a un proyecto:


1. En el Application Navigator, seleccione el proyecto que desee agregar a la clase.
2. Haga clic con el botón derecho del ratón y seleccione Nuevo.
3. En la nueva galería, en la categoría General, seleccione Java.

4. Bajo Elementos, seleccione la interfaz.

5. En el cuadro de diálogo Interfaz Java Crear, introduzca el nombre de la interfaz, el nombre

del paquete,
Y la superclase de la clase nueva se extienda. Seleccionar los atributos como sea necesario.
18-8 Guía del usuario para Oracle JDeveloper
Edición de código Java

6. Haga clic en Aceptar.


La nueva clase aparece en el proyecto activo.

18.3.7 Cómo implementar una interfaz Java


En el editor de código fuente, puede agregar rápidamente el código del marco para
modificar una clase de destino
Implementar una interfaz o hacer una interfaz destino extender otra interfaz.
Una de implementos o cláusula extends se añade a la declaración de la clase de destino
o
Interfaz, y una declaración de importación se agrega al archivo. Si el destino es una clase,
ramal
Las definiciones de los métodos del interfaz implementada se anexan a la clase o
Cuerpo de la interfaz.

Para implementar una interfaz:


1. Abra un archivo de código fuente de Java.
2. Desde el menú principal, seleccione Origen > Implementar interfaz.

3. En la ficha Búsqueda o jerarquía, localizar la clase que implementará la interfaz


Y seleccionar los nombres de las interfaces que se lleven a cabo.
4. Si desea que los comentarios de la documentación de los métodos para ser

reemplazado
Incluido, seleccione Copiar Javadoc.
5. Haga clic en Aceptar.

18.3.8 Cómo reemplazar métodos


En el editor de código fuente, puede agregar rápidamente las definiciones de
mangueta a una clase para anular
Métodos heredados de las superclases.

Para reemplazar los métodos:


1. Abra un archivo de código fuente de Java.
2. Desde el menú principal, seleccione Origen > Métodos de reemplazo.

3. En la lista de métodos de selección, los métodos que se van a omitir.

La lista muestra los métodos heredados de todas las superclases. Los métodos
abstractos son
Se muestra en negrita.
4. Si desea que los comentarios de la documentación de los métodos para ser

reemplazado
Incluido, seleccione Copiar Javadoc.
5. Haga clic en Aceptar.

Las definiciones de método stub se agregan a la clase.


6. Editar definiciones de la mangueta.

18.3.9 Cómo utilizar plantillas de código.


JDeveloper proporciona plantillas de código predefinidos que puede utilizar. Plantillas de
código.
Le ayudan a escribir código más rápidamente y eficientemente mediante la inserción de
texto para comúnmente
Declaraciones utilizadas. Por ejemplo, el "iterar una lista" (itli) Inserta la plantilla
Siguiente código:
(Int i = 0; i < desconocido.size(); i++) {
Objeto objeto = (Objeto) unknown.get(i);
}

Programación en Java 18-9


Edición de código Java

Nota: Si la plantilla contiene las variables, las variables son


Resaltado. Puede editar cada variable para completar la plantilla.
Al presionar la tecla Tab mueve el caret a la siguiente variable de plantilla.

Además de las plantillas proporcionadas por JDeveloper, también puede definir su propio
Plantillas de código en el Editor de código, plantillas de código de página del cuadro de diálogo
Preferencias.

Para evocar una plantilla de código definida:


1. En el archivo abierto en el editor, coloque el cursor en el punto donde la plantilla se
Insertado.
2. Escriba el método abreviado de teclado asociado con la plantilla y, a continuación,

presione Ctrl+Intro.
El código tal como se define en la plantilla se inserta en el archivo de origen. Importar
Las declaraciones necesarias para la plantilla, si los hubiere, se insertan en la parte superior del
archivo.

Nota: Ctrl+Intro del acelerador es asignado en el mapa de teclado por defecto.


Puede asignar una alternativa.

18.3.10 utilizando plantillas de código predefinido


Esta sección enumera las plantillas de código predefinidos. El atajo y el código que el
Presenta la plantilla se muestran para cada uno.

Iterador Array
Ai
(Int $i$ = 0; $i$ <$ $array.length; $i$++).
{
Tipo $$$ $var =$ $array[$i$].
$end$
}

Controlador de eventos de acción de datos


Daev
Public void en$end$(PageLifecycleContext ctx)
{
}

Bucle for
Para
Para ($end$ ; ; )
{
}

Instrucción if.
Si
Si ($end$)
{
}
18-10 Guía del usuario para Oracle JDeveloper
Edición de código Java

Si else
El ife
Si ($end$)
{

} Else
{

Bucle basado en enteros


Fori
(Int $i$ = 0; $i$ < $lim $$$; i++).
{
$end$
}

Bucle basado en enteros


Forn

Int $n$ = $lim$;


(Int $i$ = 0; $i$ < $n$; $i$++).
{
$end$
}

Instanceof + cast
Cpoi
Si ($var$$ $type instanceof)
{
Tipo $$$$ = fundidas ($tipo$$ $var);
$end$
}

Crear una instancia de un módulo de aplicaciones BC4J


Bc4jclient

Cadena amDef = "test.TestModule";


Cadena config = "TestModuleLocal";
Am = ApplicationModule
Configuración.,amDef createRootApplicationModule(config);
Vo ViewObject = am.findViewObject("TestView");
$end$// Trabajar con su appmodule y ver objeto aquí
Configuración.releaseRootApplicationModule(am,true);

Iterar sobre array


Itar

(Int $i$ = 0; $i$ <$ $array.length; $i$++).


{
Tipo $$$ $var =$ $array[$i$].
$end$
}

Programación en Java 18-11


Edición de código Java

Iterar una colección.


Itco

Para(iterador iter $$ = $Col$.iterator();$$.iter hasNext();)

{
Tipo $$$ $var = ($tipo$) $$ iter.next();
$end$
}

Iterar una lista


Itli
(Int $i$ = 0; $i $$$ < lista.size(); $i$++).
{
Tipo $$$ $var = ($$) de tipo lista $$.get($i$);
$end$
}

Iterar sobre las claves de mapa


Itmk

Iterador iter $$ = $$.mapa keySet().iterator();


Si bien ($iter$.hasNext())
{
Tipo $$$ $var = ($tipo$) $$ iter.next();
$end$
}

Iterar sobre valores de mapa


Itmv

Iterador iter $$ = $$ mapa.values().iterator();


Si bien ($iter$.hasNext())
{
Tipo $$$ $var = ($tipo$) $$ iter.next();
$end$
}

La conexión JDBC.
Conn

Conexión público estático getConnection() throws SQLException


{
Username String = "$end$Scott".
Contraseña cadena = "Tigre".
Cadena thinConn = "jdbc:oracle:delgado:@localhost:1521:orcl";
Driver d = new OracleDriver();
Conexión conn =
DriverManager.getConnection(thinConn,Nombre de usuario,contraseña);
Conn.setAutoCommit(false);
Volver conn;
}

18-12 Guía del usuario para Oracle JDeveloper


Edición de código Java

Lista array
Ltoar

Tipo $$$ $var = nuevo $$$lista typeelem[$.size()];


$var = ($$$) de tipo lista $$.ToArray($var$);
$end$

Método main
Principales

Public static void main(String[] args)


{
$end$
}

Out.println()
Outp

Out.println($end$);

ArrayList privado
Pral

ArrayList privada _$end$ = new ArrayList();

Boolean privado
Prb

Boolean privado _$end$;

HashMap privado
Prhm

HashMap privada _$end$ = new HashMap();

Private int
Pri

Int privado _$end$;

Cadena privada
Prs

Cadena privada _$end$;

Public static final


Pusf

Programación en Java 18-13


Edición de código Java

Public static final $end$;

Public static boolean final


Pusfb

Public static boolean final $end$;

Public static final int


Pusfi
Public static final int $end$;

Public static string final


Pusfs

Public static string final $end$;

Iterador matriz inversa


Ritar

(Int $i$$ = $array.length; --$i$ >= 0 ;)


{
Tipo $$$ $var =$ $array[$i$].
$end$
}

Invierta la iteración sobre una lista


Ritli

(Int $i$ = $$ lista.size(); --$i$ >= 0 ; )


{
Tipo $$$ $var = ($$) de tipo lista $$.get($i$);
$end$
}

System.err.println
Sep
System.err.println($end$);

System.out.println
Sop

System.out.println($end$);

Instrucción switch
Sw

Interruptor ($end$)
{
Case XXX:
{
}

18-14 Guía del usuario para Oracle JDeveloper


Edición de código Java

Break;
Por defecto;
{
}
Break;
}

Instrucción Try
Pruebe

Pruebe
{
$end$
} Catch (Exception ex)
{
Ex.printStackTrace();
} Finalmente
{
}

Insertar una etiqueta


Tag

<$tag$>
$end$
</$tag$>

While
Wh

Si bien ($end$)
{

18.3.11 Cómo ampliar o reducir el texto seleccionado


Puede utilizar la opción de Ampliar/Reducir Selección sucesivamente para ampliar o reducir
una
Bloque de código seleccionado, sobre la base de la sintaxis Java.

Para expandir el código seleccionado:


1. Con el archivo abierto en el editor, asegúrese de que el editor tiene el foco.
2. Coloque el cursor en el punto donde desea ampliar la selección o seleccione un
Parte del código.
3. Desde el menú principal, seleccione Origen > Expandir selección, o pulse
Ctrl+Mayús+iguales.
La selección se amplía para incluir la unidad lógica más pequeña que contiene el
elemento
Previamente seleccionado o en la que el cursor antes residían.
Con cada aplicación sucesiva de la opción, la selección se expande para incluir el
El próximo paso lógico en la jerarquía de Java, basado en el punto de partida, hasta que toda
la
Archivo seleccionado. Por ejemplo: el nombre del método, la llamada al método calificado,
asignación
Definición, y así sucesivamente.

Programación en Java 18-15


Edición de código Java

Utilice la opción de selección de angosto (o presione Ctrl+Mayús+menos) para reducir


sucesivamente
Código seleccionado en la misma forma.

18.3.12 Cómo código envolvente con construcciones de codificación


Usted puede fácilmente surround declaraciones de Java y bloques con construcciones de
codificación en Java
Editor de código fuente.

Para rodear un bloque de código con un constructo:


1. Con el archivo abierto en el editor, haga clic con el botón derecho del ratón dentro de una
instrucción, o seleccione un bloque de
Código y seleccione Surround. Alternativamente, puede hacer clic en el sonido envolvente ({ })
icono
La barra de herramientas del Editor de código fuente.

Nota: Este icono sólo se activa cuando el código seleccionado es una válida
Bloque de código a los que la rodean con característica puede aplicarse.

2. En el cuadro de diálogo, seleccione Surround con el constructo de codificación.

18.3.13 Añadir una sentencia import


Puede agregar las declaraciones de importación necesarios mientras se trabaja en el Editor de
código fuente de Java. Si, como
Se está escribiendo en el Editor de código fuente, puede introducir una referencia a una clase
que no ha
Ha importado, una escarpada línea aparecerá debajo de ella. Se abrirá una ventana emergente que muestra
que una
Es necesario importar, dando el nombre completo de la clase. JDeveloper se
Agregar automáticamente una importación si sólo puede encontrar una coincidencia exacta para
solucionar un
Referencia a una clase.
JDeveloper agregará automáticamente una importación si sólo puede encontrar una coincidencia
exacta para un
Referencia a una clase sin resolver. Si la asistencia de importación coincide con más de uno
Posible coincidencia, entonces aparece una lista emergente que muestra todas las posibles
coincidencias de la clase
Ruta. A continuación, el usuario puede elegir el apropiado de importación y la declaración de
importación es
Agrega automáticamente.
La importación emergente de asistencia puede activarse en cualquier momento
presionando Alt+Intro.
El código basado en encuadernación ayuda puede utilizarse para agregar una declaración de
importación. Si el editor
No reconoce una clase, una bombilla aparece en la cuneta cuando la línea está resaltada
Y diversas opciones de importación son mostrados.
Para configurar o desactivar la asistencia de importación, puede definir opciones de la declaración de
importación
Editor de código fuente de Java.
18.3.14 Cómo organizar las declaraciones de importación
Las declaraciones de importación se pueden organizar fácilmente en el Editor de código fuente de
Java. Configurar las opciones de
Organizar las importaciones a su gusto en el diálogo de preferencias. Las siguientes opciones están
Siempre:
■ Ordenar y agrupar las declaraciones de importación alfabéticamente por nombre de paquete y
clase.
■ Reducir las importaciones mediante la sustitución de importaciones de tipo -on-demand
declaraciones de paquetes
Con un solo tipo de declaraciones de importación para clases individuales.
■ Ampliar las importaciones mediante la sustitución de dos o más de un solo tipo de
declaraciones de importación
Clases de un paquete común con un único tipo-import-on-demand declaración
Para el paquete.
■ Retire las declaraciones de importación para clases que no son de referencia.

18-16 Guía del usuario para Oracle JDeveloper


Agregar comentarios de documentación

Puede configurar o desactivar organizar opciones de importación. Para obtener más


información, consulte
Section 17.4.3, "How to Enable Automatic Import Assistance for the Java Source
Editor."

Para organizar las declaraciones de importación de un archivo de código fuente:


Con el archivo abierto en el editor, haga clic con el botón derecho del ratón y
elija Organizar las importaciones.

18.4 Añadir comentarios de documentación


Puede utilizar JDeveloper de comandos de edición para crear y mantener la documentación
Comentarios.

18.4.1 Cómo agregar comentarios de documentación


Puede agregar comentarios de documentación para los archivos de código fuente en el
Editor de código fuente de Java.

Para agregar comentarios de documentación en un archivo de código fuente:


■ Coloque el cursor justo encima de la declaración de la clase, campo o método para ser
Documentado, escriba el comienzo de un comentario de documentación (/**), y
pulse Intro.
■ Con el elemento de código seleccionado en la estructura de la ventana, haga clic con el
botón derecho del ratón y seleccione
Agregar comentarios Javadoc.
Una plantilla para el comentario de documentación será insertado en el
archivo. Agregar
Información a la plantilla para describir el elemento.

18.4.2 Cómo editar comentarios de documentación


Puede personalizar el uso de etiquetas de comentarios de documentación en el editor de
código Java.
Puede definir etiquetas personalizadas y elegir qué etiquetas se incluirán automáticamente
Cuando se crea un comentario de documentación. Estas opciones se aplican a todos los
proyectos.

Para definir una etiqueta personalizada:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo Preferencias, seleccione el Editor de código Java > > página

Javadoc.
3. Haga clic en Agregar. Una etiqueta con el nombre predeterminado nueva se

agregará a la lista.
4. En el cuadro Propiedades de etiqueta, cambie el nombre de la etiqueta y el resto de
propiedades.
5. Cuando haya terminado, haga clic en Aceptar.

18.4.3 Cómo actualizar comentarios de documentación


Puede actualizar comentarios de documentación en el Editor de código fuente de Java.
Para actualizar comentarios de documentación en un archivo de código fuente:
1. En la ventana Estructura, coloque el cursor sobre el elemento para el cual los
comentarios están
Para actualizarse.
2. Haga clic con el botón derecho del ratón y elija Agregar comentarios Javadoc.

Etiquetas se agregan o se quitan de los comentarios de la documentación para reflejar


Los cambios realizados en el elemento. Agregar descripciones a las nuevas etiquetas.

Programación en Java 18-17


Cómo personalizar las opciones de Javadoc para el Editor de código fuente de Java

18.4.4 Cómo auditar Comentarios de documentación


Puede validar los comentarios de documentación en los archivos de código fuente. El informe de
auditoría
Errores de formato y faltan etiquetas o extrañas.

Para comprobar la documentación de comentarios en un archivo de código fuente:


1. En la aplicación Navegador, seleccione el archivo que se va a comprobar.
2. Desde el menú principal, elija Generar > Auditoría <archivo>.

3. En el cuadro de diálogo, seleccione Auditoría Javadoc Perfil reglas desde la lista desplegable.

4. Si desea configurar la auditoría, para elegir qué tipos de errores para buscar o
Ignorar, haga clic en Editar.
Se abre el cuadro de diálogo Perfil de Auditoría.
5. Haga clic en Ejecutar.

Los resultados de la auditoría aparecen en la ventana de registro.

18.5 Cómo personalizar opciones de Javadoc para el Editor de código fuente de Java
Puede agregar nuevas etiquetas Javadoc y personalizar algunos de los atributos de las etiquetas
existentes.
A la hora de crear etiquetas personalizadas, puede asociar la etiqueta con el código de elementos,
lo definen como
Requerida o no asignarle un valor predeterminado, y darles un orden en la lista de etiquetas.

Para personalizar las opciones de Javadoc en el Editor de código fuente de Java:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo de Preferencias, expanda el nodo Editor de código.

3. Expanda el nodo y seleccione Java Javadoc.

4. En la página de Javadoc, seleccione un elemento en la lista de etiquetas para ver sus atributos

mostrados a
El derecho. Las etiquetas que aparecen en negrita son personalizables.
5. Para agregar una etiqueta, haga clic en Agregar y rellene la información.
6. Para cambiar la posición de una etiqueta en la lista de etiquetas, seleccione la etiqueta y haga clic en la

flecha hacia arriba o hacia abajo


Botón.
Para hacer esto sin utilizar el ratón, pulse la tecla Tab hasta el botón y pulse la barra espaciadora.
7. Para eliminar una etiqueta, selecciónelo en la lista de etiquetas y haga clic en Quitar.

8. Cuando haya terminado, haga clic en Aceptar.

18.5.1 Cómo agregar comentarios de documentación


Puede agregar comentarios de documentación para los archivos de código fuente en el Editor de
código fuente de Java.

Para agregar comentarios de documentación en un archivo de código fuente:


■ Coloque el cursor justo encima de la declaración de la clase, campo o método para ser
Documentado, escriba el comienzo de un comentario de documentación (/**), y pulse Intro.
■ Con el elemento de código seleccionado en la estructura de la ventana, haga clic con el botón
derecho del ratón y seleccione
Agregar comentarios Javadoc.
Una plantilla para el comentario de documentación será insertado en el
archivo. Agregar
Información a la plantilla para describir el elemento.

18-18 Guía del usuario para Oracle JDeveloper


Cómo personalizar las opciones de Javadoc para el Editor de código
fuente de Java

18.5.2 Cómo Establecer las propiedades de un proyecto Javadoc


Cada proyecto que cree lleva el JDeveloper valores predeterminados del proyecto o
aquellas que se han
Usted suministrado para todos los proyectos a través de los entornos de trabajo. También
puede reemplazar estos
Los valores predeterminados en la base de proyecto por proyecto. Establecer estas
propiedades es el mismo en ambos
Caso: sólo la ubicación y la aplicación de la información difiere.

Para establecer propiedades de Javadoc para un proyecto individual:


1. En Navigator, seleccione la aplicación del proyecto.
2. Desde el menú principal, elija Aplicación > Propiedades del proyecto, o haga clic con el

botón derecho del ratón y


Elija Propiedades del proyecto.
Se abre el cuadro de diálogo Project Properties.
3. Realizar cambios en las propiedades del proyecto, según sea necesario.

4. Cuando haya terminado, haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades

del proyecto.

18.5.3 Cómo ver Javadoc para un elemento de código usando Quick Javadoc
Cuando se trabaja en el Editor de código fuente de Java, puede acceder rápidamente a la
generada por javadoc
La documentación para los siguientes elementos: el código de una clase, interfaz o individual.
Miembro, mediante la rápida función de Javadoc.
La función Quick Javadoc busca la entidad seleccionada en la ruta de origen y muestra
El comentario Javadoc entró en una ventana emergente. Si no hay ningún comentario Javadoc
existe para
Ese elemento, un comentario Javadoc aparece vacía. El código fuente está disponible si
Uno de los siguientes se cumplan:

Para mostrar Javadoc para un elemento de código:


1. Seleccione el elemento de código.
2. Desde el menú principal, seleccione > fuente Javadoc rápido, o desde el editor,
Haga clic con el botón derecho del ratón y elija Javadoc rápido.
Una ventana emergente mostrando la documentación para que
aparezca el elemento. Haga clic en
Fuera de la ventana para cerrarla.
El Javadoc rápida característica está disponible cuando el código fuente seleccionado
cumple del
Los criterios siguientes:
■ Es sobre esta ruta de origen del proyecto.
■ Se encuentra en la ruta de origen de un proyecto que el proyecto actual depende.
■ Está disponible para una biblioteca asignado a este proyecto
■ Es una parte del JDK en uso.

18.5.4 Cómo previsualizar Comentarios de documentación


Puede obtener una vista previa de comentarios de documentación en los archivos de código
fuente, de la misma manera que
Ver Javadoc para un único elemento de origen.

Para mostrar los comentarios de documentación de una clase dada, miembro o llamada al método:
1. Seleccione el nombre del elemento de código.
2. Haga clic con el botón derecho del ratón y elija Javadoc rápido.

Aparecerá una ventana emergente que muestra el Javadoc para sólo


ese elemento aparece ahora. Desde
Esta ventana puede vincular a otros Javadoc como lo haría en un navegador.

Programación en Java 18-19


Construcción de proyectos Java

18.6 Construcción de proyectos Java


JDeveloper proporciona estas instalaciones para la construcción de proyectos:
■ Hacer la opción /rebuild.
■ Ant
■ Apache Maven

18.6.1 La construcción con hacer y reconstruir los mandos


El Hacer y reconstruir los comandos ejecutan operaciones estándar para la elaboración de
proyectos
En JDeveloper.
■ Hacer proyecto convierte todos los proyectos depende el proyecto (de forma recursiva) y, a
continuación,
Hace el proyecto.
■ Hacer proyecto sólo hace el proyecto pero no cualquiera de los proyectos depende.
■ Volver a generar Proyecto regenera todos los proyectos depende el proyecto (de forma
recursiva), y
A continuación regenera el proyecto.
■ Sólo el proyecto Rebuild reconstruye el proyecto pero no cualquiera de los proyectos
depende de

18.6.1.1 Compilar con make


Realizar operaciones de compilar archivos de código fuente que han cambiado desde su última
compilado,
O tener dependencias que han cambiado. Operaciones de regeneración, en contraste, compilar
Los archivos fuente incondicionalmente. Puede invocar a hacer sobre cada uno de los archivos de
código fuente, en
Conjuntos de trabajo, o en contenedores tales como paquetes, proyectos y áreas de trabajo.
Si desea compilar de forma más selectiva, puede agregar una horm iga buildfile a un
proyecto,
Definir objetivos adicionales y ejecutar Ant para realizar esos objetivos.
Usted cancela una compilación en curso haciendo clic en el icono de la generación Cancelar
Barra de herramientas principal. Al hacer clic en este icono, se imprime un mensaje de error a la
fila superior de
La ventana de registro del compilador.

Formas de hacer que el archivo fuente(s):


■ En una ventana del editor de código fuente del archivo, haga clic con el botón derecho
del ratón y elija Crear.
■ Seleccione uno o más proyectos en el navegador y haga clic en en la barra de herramientas.
■ Seleccione uno o más proyectos en el navegador y elija un elemento del
Menú generar.
■ Seleccione uno o más proyectos en el navegador, haga clic con el botón derecho del ratón y
seleccione Crear.

18.6.1.2 Compilar con reconstruir


Operaciones de regeneración de compilar todos los archivos de código fuente en un proyecto o
espacio de trabajo. A diferencia de hacer
Las operaciones, que recompile sólo los archivos de origen que hubiesen cambiado o
Las dependencias que han cambiado, reconstruir las operaciones no son condicionales.
Si desea compilar de forma más selectiva, puede agregar una hormiga buildfile a un
proyecto,
Definir objetivos adicionales y ejecutar Ant para realizar esos objetivos.
Usted cancela una compilación en curso haciendo clic en el icono de la generación Cancelar
Barra de herramientas principal. Al hacer clic en este icono, se imprime un mensaje de error a la
fila superior de
La ventana de registro del compilador.

18-20 Guía del usuario para Oracle JDeveloper


Construcción de proyectos
Java

Maneras de reconstruir los archivos fuente:


■ Seleccione uno o más archivos de código fuente en el navegador, haga clic con el botón
derecho y haga clic en Rebuild (para
Un archivo), o reconstruir seleccionada (para varios archivos).
■ Seleccione uno o más proyectos o áreas de trabajo en el navegador y haga clic en Rebuild
La barra de herramientas.
■ Seleccione uno o más proyectos o áreas de trabajo en el navegador y elija
una regeneración.
Elemento desde el menú Generar.
■ Seleccione uno o más proyectos o áreas de trabajo en el navegador, haga clic con el botón
derecho y elija
Reconstruir.

18.6.1.3 la comprensión la comprobación de dependencias


JDeveloper proporciona una rápida pero completa compilación mediante el análisis de las
dependencias mientras
Edificio. Resultados en menos de comprobación de dependencias innecesarias de compila
Archivos de origen interdependiente y, por ende, acelera el ciclo de compilación y edición.
Cuando se compila utilizando JDeveloper, cada vez que se realiza la comprobación de
dependencias
Compilar con make. Que utiliza un archivo de dependencia que se crea automáticamente
Dentro de JDeveloper.
Si se compila desde la línea de comandos, puede crear o utilizar un archivo de
dependencia por
Especificar los siguientes parámetros:
Javac -hacer <makedepfile>

18.6.1.4 Cómo configurar el proyecto para compilar


Para cada proyecto, puede configurar las opciones del compilador de Java en el proyecto
Propiedades. Por ejemplo, no desea que el compilador puede mostrar compiler
Mensajes como:

Ejemplo 18 3 Los mensajes del compilador


Nota: Algunos archivos de entrada usar unchecked o operaciones no seguras.
Nota: compilar con la opción -Xlint:desactivada para más detalles.

Para configurar las propiedades del proyecto para compilar:


1. Haga clic con el botón derecho en un proyecto en el navegador y elija Propiedades en el
proyecto
Menú contextual.
También puede hacer doble clic en un nodo de proyecto en la aplicación Navegador.
2. En el cuadro de diálogo Propiedades del proyecto, expanda el nodo del compilador.
3. Expanda el nodo javac.

4. Opcionalmente, expanda el nodo de advertencias.

Opcionalmente puede verificar aquí primero para ver qué opciones están activadas por
defecto.
Por ejemplo, si -Xlint:Todo está activado, todos -Xlint advertencias están
encendidos.
Si no desea mostrar la opción -Xlint:Desactivada mensaje mostrado en Figure 18–3,
Vaya a la vuelta Mensaje Individual fuera de la sección del cuadro de diálogo Propiedades del
proyecto. Este
Permite desactivar la visualización de mensajes Xlint específico, mientras continúa
Mostrar otros por defecto.
5. Ampliar opcionalmente la vuelta mensajes individuales fuera de nodo.

6. Compruebe la casilla de verificación desactivada -Xlint.

7. Cerrar todos los cuadros de diálogo y volver a compilar.

Programación en Java 18-21.


Construcción de proyectos Java

Nota: Si desea que todos los archivos de proyecto guarda automáticamente


Antes de compilar, especifíquelo en la página Entorno del
Cuadro de diálogo de preferencias.

18.6.1.5 Cómo especificar una codificación nativa para compilar


Puede especificar un esquema de codificación para controlar la forma en que el compilador
interpreta multibyte
Caracteres. Si no se especifica, el valor predeterminado de codificación nativa para el convertidor
La plataforma es utilizada.
Los caracteres de texto se representan usando diferentes esquemas de codificación. En Windows
Medio ambiente, estas son páginas de código, mientras que Java se refiere a ellos como
codificaciones originales.
Al mover los datos de un esquema de codificación a otro, la conversión debe
Hecho. Dado que cada sistema puede tener un conjunto diferente de caracteres extendidos,
conversión
Puede ser necesario para evitar la pérdida de datos.
La mayoría de los editores de texto, incluyendo el JDeveloper editor de código fuente, utilice la
codificación nativa de
La plataforma sobre la cual se ejecutan. Por ejemplo, la versión japonesa de Windows utiliza el Shift-JIS
Formato. Si el código fuente se ha codificado con Shift-JIS y compilarlo en
Un entorno Windows, debe especificar la codificación Shift-JIS para el compilador
Para leer la fuente correctamente.
JDeveloper admite los esquemas de codificación de caracteres incluido con tu actualmente
Instalar J2SE.

Para configurar la opción de codificación, realice una de las siguientes opciones:


1. Dentro de JDeveloper, seleccione Aplicación > Propiedades del proyecto. En el proyecto
Cuadro de diálogo de propiedades, seleccione el nodo del compilador.
2. En la línea de comandos, utilice el comando javac -con la opción de codificación
Seguido por el nombre de codificación.
3. Elija un nombre de codificación en una de las dos formas siguientes:

- Seleccione un nombre de la lista desplegable Codificación de caracteres.


- Seleccionar "default" desde la lista desplegable Codificación de caracteres para utilizar el
valor predeterminado
Codificación de su entorno.
El SDK de Java se enumeran en codificaciones soportadas
Http://download.oracle.com/javase/6/docs/technotes/guides/intl/
Encoding.doc.html

18.6.2 compilación de aplicaciones y proyectos


JDeveloper utiliza el compilador de Java (javac) para compilar el código fuente de Java
(archivos .java )
En código de bytes de Java (archivos .class ). El bytecode resultante es el código de máquina
para un
Java Virtual Machine (JVM). Compilar un archivo de código fuente de Java genera un archivo de
clase independiente
Para cada declaración de clase o interfaz. Cuando se ejecuta el programa Java resultantes en un
Plataforma en particular, su JVM ejecuta el bytecode que figura en los archivos de clase.
Javac compila el archivo Java especificado y los archivos importados a los que no tienen un
Archivo de clase correspondiente. A menos que se especifique (comprobación de dependencias con
el -hacer
Opción), el compilador compila todos los archivos Java de destino. Para obtener más información,
consulte
Section 18.6.1.3, "Understanding Dependency Checking."
Cuando se trabaja dentro de JDeveloper, el compilador usado es javac. Puede ajustar el compilador
Las opciones en las propiedades del proyecto > > opción de compilador.
Las siguientes opciones de línea de comandos son compatibles:

18-22 Guía del usuario para Oracle JDeveloper


Construcción de proyectos
Java

Ruta -classpath
La ruta utilizada para buscar clases. Se anula el CLASSPATH predeterminado o el
CLASSPATH
Variable de entorno. Los directorios están separados por punto y coma. Por ejemplo, para
buscar
Para la clase foo.java en el directorio myclasses, tendría que escribir lo siguiente:
Javac -classpath c:\mydir;c:\\myclasses jdeveloper foo.java (Windows)
Javac -classpath ~/mydir;/usr/jdeveloper/myclasses foo.java (UNIX).

Si está utilizando la plataforma Java 2 (el destino predeterminado es JDK 1.6),


entonces el sistema
Se antepone a la CLASSPATH CLASSPATH. Para el ejemplo anterior,
SYSTEMCLASSPATH tendría un aspecto similar al siguiente:

Windows
%JAVAHOME%\jre\lib\rt.jar; %JAVAHOME%\jre\lib\i18n.jar.
%JAVAHOME%\jre\lib\sunrsasign.jar.
%JAVAHOME%\jre\lib\jsse.jar; %JAVAHOME%\jre\lib\jce.jar.
%JAVAHOME%\jre\lib\charsets.jar.
%JAVAHOME%\jre\lib\classes; c:\mydir; c:\\myclasses jdeveloper

UNIX
$JAVA_HOME/lib/RT.jar.
$JAVA_HOME/lib/i18n.jar.
$JAVA_HOME/lib/sunrsasign.jar.
$JAVA_HOME/lib/jsse.jar.
$JAVA_HOME/lib/jce.jar.
$JAVA_HOME/lib/charsets.jar.
$JAVA_HOME/lib/classes.
~/mydir.
/Usr/jdeveloper/myclasses

Si JAVAHOME no está definido, el JDK definido por el SetJavaHome en


Jdev.conf será utilizado. Si no existe, entonces el JDK JAVAHOME en < jdev_
Instalar>/jdeveloper/JDK serán utilizados (si está presente).
Si el destino es JDK 1.6 (mediante -target 1.6), el sistema CLASSPATH es anexado a
El CLASSPATH. Para el ejemplo anterior sería similar a la siguiente:

Windows
C:\mydir;
C:\\myclasses jdeveloper
%JAVAHOME%\lib\classes.zip
%JAVAHOME%\classes

UNIX
~/mydir.
~/usr/jdeveloper/myclasses
$JAVAHOME/lib/classes.zip.
$JAVAHOME/clases

Para cambiar el sysclasspath SYSTEMCLASSPATH use la opción - u opción


-Bootclasspath.

-Sourcepath pathlist
Una lista separada por comas de las rutas usadas para localizar archivos
de Java requerido.

Programación en Java 18-23


Construcción de proyectos Java

-Sysclasspath pathlist
Una lista separada por comas de las rutas usadas para encontrar la clase de
sistema de archivos.

-Bootclasspath pathlist
Equivalente a -sysclasspath.

- Outdir d
El directorio raíz de la clase (destino) La jerarquía de archivos. Por ejemplo:
Javac -d C:\JDeveloper\myclasses JavaBean.java (Windows)
Javac -d ~/usr/jdeveloper/myclasses JavaBean.java (Unix).
Causas Los archivos de clase para las clases definidas en el archivo de código fuente .java JavaBean
para ser
Se guardará en el directorio C:\JDeveloper\myclasses\MyPackage, suponiendo que
JavaBean.java contiene la instrucción package MyPackage.
Los archivos Java se leen desde el SOURCEPATH y archivos de clase se escribe en el
Directorio de CLASSPATH. El directorio de destino puede ser parte de la ruta de clases. El
Destino predeterminado coincide con la estructura de paquete en los archivos de origen y
comienza a partir de
El directorio raíz del código fuente.

-La depreciación:auto
Detecta el uso de deprecated tipos, campos y métodos de la clase son
Definido en.

-Nombre de codificación
Puede especificar un nombre de Codificación nativa (o nombre de página de códigos) para controlar
cómo
Compilador interpreta los caracteres fuera del conjunto de caracteres ASCII. El valor
predeterminado es usar el
Por defecto Convertidor de codificación nativa para la plataforma. Para obtener más información,
consulte
Section 18.6.1.5, "How to Specify a Native Encoding for Compiling."
Por ejemplo,
Javac -codificación SJIS JavaBean.java
Compila JavaBean.Java y Java importadas directamente archivos que no tienen clase
Los archivos. Caracteres en todos los archivos de origen se interpreta como el conjunto de
caracteres Shift-JIS para
El japonés.

-Endorseddirs pathlist
Permite anular el valor predeterminado para java.suya.dirs, respaldó la predeterminada
Normas JDK clases proporcionadas por Sun. En pathlist, separe los nombres de ruta con
Punto y coma.

Classname -exclude(s)
Esta opción le permite especificar nombres de clase para excluir de su compilación. El
Compilador ignorará todas las llamadas a public static void los métodos de la clase especificada(s).
Esto es útil principalmente para los diagnósticos donde su no aplicación de producción
construir
Puede contener código que necesitan ser compilados en la producción oficial de construir. Más
De una clase pueden ser excluidos separándolas con un punto y coma o especificación
-Excluir más de una vez. Por ejemplo: -exclude;p1 p2;p3 p4 -exclude se
Excluir cuatro clases, p1, p2, p3 y P4.

18-24 Guía del usuario para Oracle JDeveloper


Construcción de proyectos
Java

Nota: Esta opción es también compatible con el JDeveloper IDE en el


Compilador - Página de opciones del cuadro de diálogo Propiedades del proyecto.

Example 18–4 Contiene un ejemplo de código que utiliza la opción -Exclude.

Ejemplo 18-4 -opción excluir


// Inicio de excludeTest.java
Public Class excludeTest
{
Public static void main(String argv[])

{
Diag.trace("Aplicación está a punto de comenzar");
System.out.println("Prueba Exitosa");
Diag.trace("Aplicación va a terminar");
}
}
Clase diag.
{
Static void trace(string msg)
{
System.out.println(msg);
}
}
// Fin de excludeTest.java

Cuando se compila la aplicación de ejemplo 18-4 sin la opción -Exclude, el


La salida es:
Está a punto de comenzar la aplicación
Prueba Exitosa
Está a punto de finalizar la aplicación

Cuando se compila con la opción -Exclude siguientes:


Diag excludeTest javac -exclude.java

La salida se convierte en:


Prueba Exitosa

Y exitosamente ignora todas las llamadas a diag.Trace.

-Extdirs pathlist
Una lista separada por comas de las trayectorias que anula la ubicación
donde el compilador
Busca las extensiones.

-G
Genera información de depuración en el archivo de clase. Se requiere acceso local
Variables y otra información mientras la depuración de la clase.

-G:Ninguno.
Obliga a que el compilador no genere información de depuración en el archivo de clase.

-G:origen,lines,vars
Genera información de depuración selectiva en el archivo de clase.
Programación en Java 18-25
Construcción de proyectos Java

-Help
-?
Muestra las opciones del compilador.

-Hacer depfilename
Utiliza el nombre de archivo de dependencia para la comprobación de dependencias. Si el archivo
especificado no es
Encontrados, será creado.

-Msglimit:#
Número máximo de errores y advertencias escritas para la salida. Utilice -1 para representar
ningún
Límite. El valor predeterminado es 1000.

-Noquiet
Muestra los nombres de archivo a medida que se compilan.

-Nowarn:<ID>
Cuando se especifica un argumento, suprime la advertencia asociados con la
Número introducido por el usuario.

-Nowarn:486
Suprime las declaraciones de importación no utilizados.

-Nowarn:487
Suprime parcialmente usada important declaraciones.
También puede utilizar -nowarn en combinación con -advierten:

-Nowarn -warn:487
A la salida de sólo avisos de alerta 487.

-Nowrite
Compila el programa sin emitir archivos de clase.

-P nombre_del_paquete(s)
Compila todos los archivos de código fuente encontrada en el paquete especificado(s)

-Reconstruir
Reconstruye los archivos especificados, independientemente de las dependencias. Reconstruir es
asumido, a menos que el
Se utiliza la opción -hacer.

-Recursenivel []
Indica al compilador que recursivamente en directorios desciende cuando la expansión del archivo
Especificaciones de nombre que contiene comodines.
Por ejemplo:
Javac -recurse foo/*java

Podría ser el equivalente a introducir:


Javac foo/bar/*java foo/cer/*java foo/CER/lee/*java

La opción [nivel] toma un argumento entero opcional que especifica el máximo


Nivel recursivo.
18-26 Guía del usuario para Oracle JDeveloper
Construcción de proyectos
Java

Por ejemplo:
Javac -recurse 1 foo/*java

Podría ser el equivalente a introducir:


Javac foo/bar/*java foo/cer/*java

Nota que foo/CER/lee/*java no estaría dentro del ámbito de la [nivel]


Variable.

-S sourcefile
Compila el archivo de código fuente especificado nombre(s).

-Fuente {1.1|1.2|1.3|1.4|1.5|1.6}
Por defecto, la fuente es compatible con J2SE 1.5, que permite a J2SE afirmaciones
en la
Código fuente. Puede introducir -source 1.4 si desea que el origen sea de compatibilidad J2SE
1.4.

-Strictfp
El compilador no obliga a utilizar para mayor precisión de punto flotante intermedia
Los cálculos.

-Target [1.1|1.2|1.3|1.4|1.5|1,6]
Si el destino se establece en 1.1, el compilador compila para JSDK 1.1. Si el destino se
establece en 1.2,
El compilador compila JSDK de Java 2 (1.2). Si el destino se establece en 1,3, el compilador
Compila para Java 2 v1.3 (J2SE 1.3). Si el destino se establece en 1,4, el compilador compila
para
Java 2 v1.4 (J2SE 1.4).
El destino predeterminado es JDK 6 (J2SE 1.6), coherente con los valores predeterminados
javac de Sun.

-Verbose
Esta opción da más información sobre la compilación, como los archivos de clase se
Cargados desde donde en el CLASSPATH. Obtendrá información sobre:
■ Los archivos de origen que están siendo recopilados
■ Las clases que están siendo cargados
■ Las clases que están siendo cargados

-Verbosepath
Esta opción muestra la ruta de origen y CLASSPATH valores utilizados por el
compilador.

-Advertencia:<id>
Esta opción le permite especificar las advertencias. Usted puede tener cualquier número
de advertencias en
Combinación con cualquier suprime las advertencias. Cuando se utiliza sin argumentos, todos
Se muestran advertencias. Dos advertencias útiles:

-Warn:486
Muestra la declaración de importación no utilizados
-Warn:487
Muestra utilizado parcialmente la declaración de importación.

Programación en Java 18-27


Construcción de proyectos Java

-Etiqueta etiqueta warningtag[,]


Una lista de las etiquetas de comentarios Javadoc. Si aparece la etiqueta de
origen ocurre en un comentario, una advertencia es
Salida. Utilice una coma para separar los nombres de las etiquetas.

18.6.2.1 compilar desde la línea de comandos.


Usted tiene dos maneras de compilar aplicaciones (áreas de trabajo) y proyectos:
■ Dentro de JDeveloper mediante las distintas opciones para generar y compilar el
Aplicación y los nodos de proyecto
■ Desde la línea de comandos mediante ojmake y ojdeploy.
Se pueden encontrar tanto en el jdeveloper/jdev/bin .
■ Ojmake puede utilizarse para aplicaciones y proyectos que no implican ninguna
La implementación, por ejemplo, implementación de proyectos con ningún perfil definido.
■ Ojdeploy puede manejar la construcción de cualquier aplicación y proyecto (incluyendo las que
Implican la implementación). Se puede considerar como un super-conjunto de ojmake.
Puede ver la ayuda de las herramientas simplemente ejecutando ojdeploy ojmake o sobre el
Línea de comandos. La ayuda se mostrará en la consola.

Nota: Cuando usted trabaja desde la línea de comandos, es posible utilizar


Javac para compilar los archivos Java, pero no es posible construir aplicaciones
Y proyectos por ejecutar Javac manualmente. Debe utilizar ojmake o
Ojdeploy.

18.6.3 Las solicitudes y los proyectos de limpieza


Puede limpiar su aplicación o proyecto utilizando el comando Limpiar. La ejecución de este
Comando limpia la salida y desplegar directorios en su proyecto o aplicación.
Ejecuta el comando Limpiar en una aplicación o proyecto elimina todos los archivos de clase,
todos
Copiar todos los archivos de recursos y archivos implementados. Usted puede hacer esto para
asegurarse de que no hay
Los archivos obsoletos de la producción e implementación de directorios. Por ejemplo, las clases se
renombran,
Mover o eliminar, y la clase obsoleta archivos pertenecientes a estas clases deben ser
Retirado. Asimismo, los recursos y las implementaciones también se renombran, movido o
eliminado,
Y sus copias obsoletas en el directorio de salida o del directorio de implementación deben ser
Retirado. La limpieza permite eliminar los artefactos de generación anterior y comenzar de nuevo.
Puede ejecutar el comando Limpiar en aplicaciones o proyectos.
Cuando limpie una aplicación:
■ El contenido de la salida y desplegar los directorios de cada uno de los proyectos
componentes
En la aplicación se eliminan.
■ Desplegar el contenido en el directorio de la aplicación se elimina.
Desplegar el contenido en el directorio de la aplicación se elimina.
Las siguientes condiciones deben cumplirse para que el comando clean para funcionar
correctamente:
■ El directorio de salida del proyecto para limpiarse, o de cada uno de los proyectos en la
Aplicación a limpiarse, debe especificarse.
■ La ubicación de salida debe ser especificado como un directorio y no un archivo.

18-28 Guía del usuario para Oracle JDeveloper


Construcción de proyectos
Java

18.6.3.1 cómo ejecutar el comando Limpiar


El comando Limpiar permite eliminar artefactos dejados por las generaciones anteriores en
Para iniciar un nuevo proceso de compilación.

Para limpiar un proyecto:


1. En la aplicación Navegador, seleccione el proyecto que se va a limpiar.
2. En el menú Build, seleccione Limpiar Proyecto.

3. En el cuadro de diálogo de proyecto de limpieza, haga clic en Sí.

Para limpiar una aplicación y todos sus proyectos:


1. En el Application Navigator, seleccione la aplicación que desea limpiar.
2. En el menú Build, seleccione Limpiar Todo.

3. En el cuadro de diálogo de la aplicación de limpieza, haga clic en Sí.

18.6.4 Cómo ejecutar Javadoc


Puede generar referencias de API y demás documentación directamente desde el navegador
En base a las propiedades establecidas para el proyecto en la página de Javadoc de las
preferencias
El diálogo. La documentación será generado por la utilidad javadoc desde el código y
Comentarios de documentación en sus archivos.

Para ejecutar Javadoc en un paquete, el archivo o el proyecto:


1. Seleccione el nodo correspondiente en el navegador.
2. Desde el menú principal y, a continuación, elija Generar Javadoc.

El Javadoc es generada en el fondo. La información y los resultados aparecen en la


Ventana de registro. Un enlace en la ventana de registro le permite agregar el archivo
index.html
Para el proyecto.

18.6.5 Construyendo con Apache Ant


Apache Ant es una herramienta de generación de funcionalidad similar a la utilidad MAKE
de UNIX. Utiliza Ant
Buildfiles en formato XML para describir y controlar el proceso utilizado para
construir un
Aplicación y sus componentes. Ant admite la compilación multiplataforma y es fácilmente
Extensible. Apache Ant es un producto de Apache Software Foundation. Para obtener más
Información, consulte el sitio web Http://ant.apache.org/index.html.
Una hormiga buildfile define objetivos y dependencias entre objetivos. Un
destino es una
Secuencia de tareas programáticas. Cuando la hormiga se ejecuta para hacer un destino, primero
hace otros
Los objetivos de los que depende, y luego ejecuta las tareas propias del destino.
Ant está integrado en JDeveloper. Ant buildfiles pueden agregarse o creado por
Los proyectos. Ant buildfiles pueden editarse con el Editor de código fuente XML. Puede
invocarse Ant
Desde la interfaz de usuario para realizar los objetivos definidos en buildfiles.

Maneras de ejecutar Ant buildfile objetivos:


■ Objetivos del proyecto buildfile. Un proyecto puede contener varias Ant buildfiles, pero
Uno puede ser designado como el proyecto buildfile. Puede configurar el ejecutar Ant
Proyecto icono en la barra de herramientas y menú desplegable para dar fácil acceso al
proyecto
Los objetivos buildfile.

Programación en Java 18-29


Construcción de proyectos Java

■ Desde el panel Estructura al editar una hormiga buildfile. Cuando una hormiga buildfile es
Abrir en un editor de código fuente XML, sus objetivos se enumeran en el panel Estructura. Puede
Seleccione estos y ejecutarlas.
■ Desde herramientas externas que usted defina. Utilice el asistente para crear la herramienta
externa para definir
Los elementos de menú y botones de barra de herramientas que hacen que la Ant objetivos.

18.6.5.1 Ejecutar Ant Proyecto Objetivos Buildfile


Puede invocar Ant desde JDeveloper del menú y la barra de herramientas principal para construir las
metas definidas
En el actual proyecto del proyecto buildfile.
Un proyecto puede contener varias Ant buildfiles, uno de los cuales puede ser
designado como el
Proyecto buildfile. Puede configurar la ejecución del proyecto de hormigas y de botón de la barra
de herramientas
Menú desplegable para acceder fácilmente al proyecto los objetivos buildfile.
Para seleccionar y configurar un proyecto del proyecto buildfile, vaya a las propiedades del proyecto Ant
Página (elija Aplicación > Propiedades del proyecto).

Maneras de ejecutar Ant sobre objetivos en el proyecto buildfile:


■ En la barra de herramientas, haga clic en Ejecutar Ant proyecto.
Ant hará el proyecto designado de destino predeterminado.
■ Desde el menú principal, elija Generar > Ejecutar Ant en proyecto.
Ant hará el proyecto designado de destino predeterminado.
■ Desde la barra de herramientas Ejecutar Ant proyecto menú desplegable, seleccione un
destino.

Utilizar la herramienta Ant 18.6.5.2 en el IDE


La Hormiga ventana Log muestra los mensajes específicos de la Ant. Algunas características de la
Ventana de registro de hormigas son:
■ Muestra los mensajes generados por una hormiga invocación para construir uno o más
destinos.
■ En la ventana de registro de hormigas, los mensajes generados por la Ant tareas están
vinculadas a la
Las definiciones de esas tareas en la hormiga buildfile, mientras que los errores de
compilación y
Las advertencias están vinculados al código fuente que los produjeron.
■ La codificación de color indica el nivel de salida de los mensajes.

18.6.6 Creación y ejecución con Apache Maven


Apache Maven es un software de gestión de proyectos y herramientas de comprensión. Maven
puede
Gestionar la generación de un proyecto, la presentación de informes y documentación de una pieza
central de
Información, project object model (POM). Usted puede construir el proyecto mediante su POM
Y un conjunto de plugins que son compartidos por todos los proyectos con Maven,
proporcionando un uniforme
Sistema de compilación.
Maven puede ampliarse mediante plugins para utilizar un número de otras herramientas de
desarrollo para
O el proceso de generación de informes. Para obtener más información acerca de Maven, consulte
Http://maven.apache.org/index.html.

18.6.6.1 comprender el modelo de objetos de Project


Project Object Model (POM) es un archivo XML que contiene información acerca de los
Proyecto y detalles de configuración utilizado por Maven para construir el proyecto. El archivo XML
Contiene la mayor parte de la información requerida para construir un proyecto. Configuración
La información que puede ser especificado en el POM incluye las dependencias del proyecto, el
Plugins o metas que pueden ser ejecutadas, y la creación de perfiles.

18-30 Guía del usuario para Oracle JDeveloper


Construcción de proyectos
Java

Para obtener más información acerca del modelo de objeto de proyectos Maven, véase:
Http://maven.apache.org/index.html

18.6.6.2 Cómo crear un modelo de objetos de Project


Usar opciones en la nueva galería de fotos:
■ Crear un nuevo Apache Maven POM
■ Crear un POM para la aplicación
■ Generar un Maven POM de un proyecto

Para crear un POM:


1. Elija Archivo > Nuevo para abrir la nueva galería.
2. En la lista Categorías, expanda General y seleccione Maven.

3. Seleccione una opción para crear un POM y haga clic en Aceptar.

18.6.6.3 Cómo crear un Maven POM de un proyecto


Puede crear un Maven POM basado en un proyecto existente que seleccione en la
Aplicación Navigator. Construir elementos será añadido para múltiples directorios de
origen.
Ajustes serán añadidas para el compilador de Java que haya especificado para el proyecto.

Para crear un Maven POM de un proyecto:


1. En el Application Navigator, seleccione el proyecto que desee crear el POM
A partir de.
2. Elija Archivo > Nuevo para abrir la nueva galería.

3. En la lista Categorías, expanda General y seleccione Maven.

4. Seleccione Generar una Maven POM de un proyecto.

5. Haga clic en Aceptar.

18.6.6.4 Cómo generar un modelo de objetos de Project desde una aplicación


Generar un nuevo modelo de objetos del proyecto (POM) para la aplicación seleccionada y
Opcionalmente, un nuevo POM para cada proyecto en la aplicación. Esto genera un nivel
superior
POM para la aplicación, y un POM para cada proyecto.

Para generar un POM desde una aplicación:


1. Seleccione Archivo y, a continuación, en Nuevo para abrir la nueva galería.
2. En la lista Categorías, expanda General y seleccione Maven.

3. Seleccione Crear un POM para la aplicación y haga clic en Aceptar.

18.6.6.5 Crear una plantilla Maven


Puede crear un:
■ Maven plantilla de aplicación que se compone de uno o más proyectos Maven.
Esto genera una aplicación, un modelo de objeto de proyectos de nivel superior
( archivo pom.xml) para
La aplicación, y un defecto pom.xml para cada proyecto.
■ La plantilla de proyecto de Maven.
Programación en Java 18-31
Construcción de proyectos Java

Esto genera un proyecto Java que incluye un proyecto predeterminado del modelo de
objetos y archivos
Configuración de Maven. El proyecto de modelo de objetos, se crea automáticamente el
archivo
Durante la creación del proyecto.

Para crear un proyecto con un defecto JDeveloper POM:


1. Seleccione Archivo y, a continuación, en Nuevo para abrir la nueva galería.
2. Seleccione todos los elementos.

3. Seleccione la aplicación o Maven Maven Project.

4. Haga clic en Aceptar.

18.6.6.6 Cómo ejecutar un proyecto Maven


Utilice la aplicación Navegador para localizar y ejecutar un proyecto Maven.

Para ejecutar un proyecto Maven:


1. En el navegador, localizar el proyecto que contiene el pom.xml que desea ejecutar.
El POM.xml se encuentra normalmente en la carpeta de recursos en el marco del proyecto.
2. Haga clic con el botón derecho en el pom.xml .

3. En el menú contextual, seleccione Ejecutar objetivo(s), a continuación, seleccione un

objetivo.
La lista de objetivos que se muestra en el menú de contexto se ajusta utilizando el Maven:
Objetivos
Cuadro de diálogo de propiedades.

18.6.6.7 Cómo cambiar la versión de Maven


En el cuadro de diálogo Propiedades del proyecto Maven, puede especificar qué versión de
Maven para utilizar.
Maven versión 2.0 y superior es compatible.

Para especificar la versión de Maven:


1. En el Application Navigator, localice el proyecto cuyas propiedades desea establecer.
2. Haga clic con el botón derecho del ratón en el nombre del proyecto.

3. Seleccione Propiedades del proyecto.

4. Seleccione Maven.

5. Introduzca la versión de Maven que desea utilizar en el campo Especificar la versión de

Maven.

18.6.6.8 Cómo configurar las propiedades del proyecto


Utilice los cuadros de diálogo de propiedades del proyecto Maven para especificar:
■ Qué versión utilizar Maven
■ Ubicación del archivo settings.xml
■ Ubicación de los pom.xml
■ Entradas classpath adicionales
■ Las dependencias
■ Las opciones que aparecen en la carrera objetivo(s) del menú contextual
■ Versión de Java
■ Variables de entorno
■ Repositorios Maven

18-32 Guía del usuario para Oracle JDeveloper


Trabajando con JavaBeans

■ Opciones de línea de comandos

Para establecer las propiedades de un proyecto Maven:


1. En el Application Navigator, localice el proyecto cuyas propiedades desea
establecer.
2. Haga clic con el botón derecho del ratón en el nombre del proyecto.

3. Seleccione Propiedades del proyecto.

4. Seleccione Maven.

5. Seleccione el nombre de un cuadro de diálogo de propiedades.

18.6.6.9 Cómo Establecer las preferencias de la ventana de registro


Puede definir los colores de los diversos el texto del mensaje que aparece en el registro de
mensajes cuando
Se ejecuta un proyecto Maven.

Para establecer las preferencias de Maven:


1. Seleccione Herramientas > Preferencias.
2. Seleccione Maven.

18.7 Trabajar con JavaBeans


JDeveloper viene con un conjunto de listas para usar en la paleta de componentes
JavaBeans. Usted
También puede complementar estas creando nuevos componentes JavaBeans usted mismo o
por
Instalación de terceros.
Tecnología de componentes JavaBeans permite implementar su propio marco de datos
La recuperación, la persistencia y la manipulación de los objetos Java. Puede usar
JavaBeans
Tecnología para crear componentes reutilizables de software para la creación de applets de
Java y Java
Las aplicaciones de cliente. En una aplicación Java EE, applets y aplicaciones clientes pueden
Comunicarse con los componentes de la capa de negocio, directa o indirectamente, a través
de la capa web.
Los componentes. Por ejemplo, un cliente que se ejecuta en un navegador se comuniquen con
el
Nivel de empresa a través de páginas JSP o servlets.
Aunque componentes JavaBeans no son consideradas componentes web en Java EE.
De acuerdo a la especificación Java EE, componentes JavaBeans se utilizan a menudo para
manejar
El flujo de datos entre los componentes de servidor y clientes de aplicaciones o applets en el
cliente.
Nivel, o entre los componentes de servidor y una base de datos en el back-end.
Para obtener más información sobre JavaBeans, por ejemplo, la noción básica de
JavaBeans y
Lo que hace un bean, consulte
Http://download.oracle.com/javase/tutorial/javabeans/. El tutorial
También contiene lecciones sobre cómo escribir un simple bean, propiedades de bean, la
manipulación de eventos
Y otros temas.
Utilizando JavaBeans en JDeveloper 18.7.1
JavaBeans Java son los bloques de construcción utilizados en el Editor Visual de Java para
construir un
Programa. Cada JavaBean representa un elemento de programa, como un objeto de interfaz
de usuario,
Un conocimiento de datos, o un sistema de control de planta. El programa se genera escogiendo
y
Conectar estos elementos.
A fin de acelerar el trabajo de diseño de la interfaz de usuario en el futuro, crear
componentes JavaBean
Como las barras de herramientas, barras de estado, grupos de casillas de verificación o
cuadros de diálogo que se pueden agregar a la
Paleta de componentes y reutilizar con ninguna (o sólo pequeñas modificaciones)

Programación en Java 18-33


Trabajando con JavaBeans

JDeveloper viene con un conjunto de listas para usar en la paleta de componentes JavaBeans. Usted
También puede complementar estas creando nuevos componentes JavaBeans usted mismo o por
Instalación de terceros.
Los JavaBeans son objetos en la verdadera programación orientada a objetos (OOP) sentido. Porque
Son verdaderos objetos, JDeveloper presentan los siguientes componentes:
■ Encapsulación de algún conjunto de datos y funciones de acceso a datos.
■ La herencia de los datos y el comportamiento de una superclase.
■ Polimorfismo, permitiéndoles funcionar indistintamente con otros objetos
Deriva de una superclase común.
Cada componente encapsula algunos de los elementos de un programa, como una ventana o
cuadro de diálogo
Caja, un campo de una base de datos, o un sistema temporizador. Los componentes visuales debe
en última instancia
Ampliar java.lang.Object o extender alguna otra clase que deriva de él
Como el paquete javax.swing.Panel. No visual de componentes JavaBeans no tienen esta
Requisito.
A ser reconocido y utilizado en JDeveloper, deben ajustarse a los componentes JavaBeans
La especificación.
Para ser útil en un programa, un JavaBean debe proporcionar los medios por los cuales puede ser
Manipular o interactuar con otros componentes. JavaBeans cumplen este requisito
La definición de propiedades, métodos y eventos.
Todos los componentes tienen propiedades, métodos y eventos incorpo rado. Algunas
de las
Propiedades, métodos y eventos que proporcionan los componentes son en realidad heredada de
Clases ancestro, lo cual significa que pueden compartir estos elementos con otros componentes. Para
Por ejemplo, todos los componentes de la interfaz de usuario de heredar una propiedad
denominada fondo que representa la
Color de fondo del componente. Cada componente puede también introducir su propio
Exclusivas propiedades, métodos y eventos. Por ejemplo, el componente Checkbox de giro
Tiene una propiedad denominada seleccionado que indica la presencia o no de este componente
Inicialmente aparece marcada.

18.7.2 Cómo crear un JavaBean


El primer paso en el desarrollo de un bean para su reutilización es crear la clase JavaBean.
Utilizando la
Crear Bean diálogo, usted puede crear un bean de nuevo vacío o extender una clase existente
Para cumplir con los requisitos del modelo de componentes JavaBeans.

Para crear un JavaBean:


1. En la aplicación Navegador, seleccione el proyecto que desea el bean para ser añadido.
2. Desde el menú principal, elija Archivo > Nuevo, o haga clic con el botón derecho del ratón y

seleccione Nuevo.
3. En la nueva galería, en las categorías de árbol, expanda General y seleccione Java.

4. En la lista de elementos, haga doble clic en Bean.


5. En el cuadro de diálogo Crear Bean, acepte los valores predeterminados, introduzca los

nuevos valores, o bien utilice el botón Examinar


Botones para desplazarse a un paquete existente y la superclase.
6. Haga clic en Aceptar.
18.7.3 Cómo crear una clase BeanInfo
La clase BeanInfo define un conjunto de métodos que permiten a los realizadores de frijol para
proporcionar
Información explícita acerca de sus granos. Especificando BeanInfo para un bean, componente

18-34 Guía del usuario para Oracle JDeveloper


Trabajando con JavaBeans

Puede ocultar los métodos, especificar un icono para la caja de herramientas, proporcionar
nombres descriptivos para
Propiedades, definir qué propiedades son propiedades enlazadas, y mucho más.
Cuando se crea un bean e instálelo en la paleta de componentes, en la mayoría de los casos
usted
Querrá sus propiedades y eventos aparezcan en JDeveloper del Inspector. Si has
seguido
Los JavaBeans y las convenciones de nomenclatura de diseño al crear el bean, todos los
Propiedades y eventos que se definen, además de todas las heredadas de las superclases,
aparecen
Automáticamente.
Sin embargo, usted no puede usar el JavaBeans diseño y convenciones de nomenclatura, o
puede
Tienen clases existentes que no se utilizan. Además, puede que no desee dar la
Usuario de su bean acceso a todas las propiedades en tiempo de diseño.
Para manejar estas situaciones, puede crear una clase BeanInfo que proporcionará explícito
Información acerca de un bean para JDeveloper, en lugar de tener JDeveloper derivar la
Información automática a través de la introspección. Puede crear esta clase extendiendo el
Clase SimpleBeanInfo.

Para crear una clase BeanInfo BeanInfo utilizando el cuadro de diálogo:


1. En la aplicación Navegador, seleccione el proyecto que desea el bean para ser
añadido.
2. Desde el menú principal, elija Archivo > Nuevo, o haga clic con el botón derecho del

ratón y seleccione Nuevo.


3. En la nueva galería, en las categorías de árbol, expanda General y seleccione Java.

4. En los artículos list, haga doble clic en BeanInfo.

5. En el cuadro de diálogo Crear BeanInfo, elija el bean desea crear un BeanInfo.


El diálogo generará la clase BeanInfo nombre del bean.
6. Acepte el nombre del paquete, o especificar un paquete diferente a la que la
BeanInfo debería agregarse.
7. Haga clic en Examinar para elegir una clase base distinta para el SimpleBeanInfo
BeanInfo que desea implementar.
8. Haga clic en Aceptar para agregar la nueva clase BeanInfo para su proyecto.

18.7.4 Cómo implementar un método Event-Handling


En el Editor Visual de Java, se puede ver un evento principalmente como método de
control de eventos
Que deben implementarse en la clase que contiene el componente. Por ejemplo,
Supongamos que desea colocar un botón denominado button1 en un recipiente
llamado Frame1.
Además, desea que ocurra algo cuando un usuario final haga clic en Button1.

Para aplicar el método de control de eventos


1. Seleccione button1 en el Frame1 Editor.
2. Vaya a la página de eventos del Inspector de propiedades.

3. Haga clic a la derecha de actionPerformed (actionPerformed es el evento


Generado cuando se pulsa un botón).
Esto crea una acción predeterminada el nombre del receptor, que puede editar.
4. Haga doble clic en el nombre para dirigir JDeveloper para crear el método apropiado y
Te llevan al cuerpo del método.
5. JDeveloper cambia a la vista Código fuente y Frame1 inserta un manejo de eventos
Método en Frame1 que se llama cuando se produce un evento.
Se llama al método button1_actionPerformed() por defecto. El cuerpo de
El método Inicialmente está vacía.

Programación en Java 18-35


Trabajando con JavaBeans

6. Agregar código en el método para responder a la pulsación del botón.


El usuario final ve todos los posibles eventos de button1 enumerados en la página de eventos
Del Inspector de propiedades. Cuando el componente de escritor, usted es responsable de la creación
La clase Component de tal manera que todos los eventos que genera aparecerá en la
Inspector de propiedades. Todo lo que el usuario final debe hacer para utilizar el bean es escribir
el código que
Rellenos en el método de control de eventos.

18.7.5 ¿Qué sucede cuando se crea un método Event-Handling


Detrás de las escenas, JDeveloper también genera código adicional en el marco
del archivo1.java
Para manejar los demás aspectos de escucha de eventos:
1. Se genera una clase interna anónima para la acción que implementa el adaptador
Interfaz ActionListener.
2. Crea una instancia de la clase Frame1.
3. Se registra a sí mismo como un agente de escucha para el evento button1 llamando
Button1.addActionListener().
Todo esto es visible en el código fuente, pero su principal tarea consist e en rellenar la
Método de control de eventos que la acción adaptador llama cuando se produce el evento.

18.7.6 Descripción adaptadores anónimo


El tipo particular de clase interior adaptadores de eventos que JDeveloper genera de forma
predeterminada
Son conocidos como anónimo adaptadores. Este estilo de adaptador evita la creación de un
Separar (named) clase de adaptador. El código resultante es compacto.
Example 18–5 Contiene el código que se genera para una acción que realiza el evento mediante un
Adaptador anónimo:

Ejemplo 18-5 código generado para una acción que realiza el evento mediante un anónimo
Adaptador
Button1.addActionListener(new java.awt.event.ActionAdapter()
Public void actionPerformed(ActionEvent e) {
Button1_actionPerformed(e);
}
}}

Button1_void actionPerformed(ActionEvent e) {
// El código para responder al evento va aquí
}

18.7.7 Descripción adaptadores de eventos estándar


Puede controlar cómo JDeveloper genera la clase de adaptador seleccionando la deseada
Opción del estilo de código de página del cuadro de diálogo Propiedades del proyecto. El evento
estándar
Los adaptadores sólo públicas- y el acceso de nivel de paquete, a diferencia de los adaptadores que
anónimo
Tienen acceso a todas las variables en el ámbito donde el adaptador se declara.
Example 18–6 Contiene el código que se genera para una acción que realiza el evento mediante un
Clase estándar:

Ejemplo 18-6 El código generado para una acción que realiza el evento mediante una clase estándar
// Registra el adaptador como un oyente de button1.
Button1.addActionListener(nuevo bastidor1_button1_actionAdapter(this);

18-36 Guía del usuario para Oracle JDeveloper


Trabajando con JavaBeans

...
// Definición de la clase de adaptador.
La clase Frame1_button1_actionAdapter extienda java.awt.event.ActionAdapter {
Fotograma 1 adaptee;

Frame1_button1_actionAdapter(Frame1) { adaptee
Este.adaptee = adaptee;
}
VoidactionPerformed pública(ActionEvent e) {
Adaptee.button1_actionPerformed(e);
}
}
Button1_void actionPerformed(ActionEvent e) {
// Código para responder al evento va aquí
}

18.7.8 Cómo Hacer adaptadores estándar predeterminado para tus proyectos


JDeveloper genera el código de ejemplo 18-5 utilizando una clase interna anónima.
Example 18–6 Contiene el código que se genera para una acción que realiza el evento
mediante un
Clase estándar. Dos formas de usar adaptadores proporcionan el código para manejar
Realiza la acción de eventos, pero el enfoque de adaptador anónimo es más compacto.

Hacer adaptadores estándar predeterminado para tus proyectos:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. Seleccione el nodo Visual Editor de Java.

3. En el caso de configuración de grupo, seleccione el adaptador estándar como una

opción de gestión de eventos.


4. Elija ACEPTAR.

Ahora JDeveloper generará adaptadores estándar (como opuesto a anónimos, interior


Las clases) para sus eventos.

18.7.9 Cómo seleccionar un adaptador Event-Handling


Al crear un bean para su reutilización, querrá definir sus eventos. Una vez que haya
Definió sus eventos, usted deseará seleccionar un adaptador de control de eventos.

Hacer adaptadores estándar predeterminado para tus proyectos:


1. Desde el menú principal, elija Herramientas > Preferencias.
2. En el cuadro de diálogo Preferencias, seleccione el nodo Visual Editor de Java.

3. En la página Editor de Visual Java, bajo Configuración del evento, seleccione el adaptador

estándar como
Una opción de gestión de eventos.
4. Haga clic en Aceptar.

Ahora JDeveloper generará adaptadores estándar (como opuesto a anónimos, interior


Las clases) para eventos.

18.7.10 Cómo crear un conjunto de eventos


JDeveloper proporciona la funcionalidad para crear un conjunto personalizado de eventos y
crear un
Interfaz EventListener y una clase EventObject en apoyo de esos acontecimientos.
Programación en Java 18-37
Trabajando con JavaBeans

Para crear un conjunto de eventos:


1. En la aplicación Navegador, seleccione el proyecto que desea el bean para ser añadido.
2. Desde el menú principal, elija Archivo > Nuevo, o haga clic con el botón derecho del ratón y

seleccione Nuevo.
3. En la nueva galería, en las categorías de árbol, expanda General y seleccione Java.

4. En los artículos list, haga doble clic en EventSet.

5. En el cuadro de diálogo Crear conjunto de eventos, en el campo Nombre, escriba el nombre

del evento.
6. Especificar los eventos que desea crear, editar o eliminar en el campo Notificaciones.

7. Haga clic en Aceptar para agregar el nuevo evento conjunto de clases para su proyecto.

18.7.11 Cómo crear un personalizador


Complejo de frijoles, JDeveloper le ofrece la opción de crear una customizer. Un
Customizer permite modificar la apariencia y comportamiento de un bean dentro de un
Application Builder para que satisfaga sus necesidades específicas. A veces, las propiedades son
Insuficiente para representar un bean's atributos configurables. Se utilizan Customizers
Instrucciones sofisticado donde sería necesario para cambiar un bean, y donde
Los editores de propiedades son demasiado primitivos para lograr la personalización del bean.
■ Un simple customizer puede editar todo el componente a la vez.
Generalmente una simple
Customizer presenta un panel o cuadro de diálogo que permite al usuario establecer muchas
propiedades en
El mismo paso.
■ Un complejo customizer proporciona una interfaz interactiva para el
usuario, componente
Guiar al usuario a través de los pasos para personalizar el componente.
Para un complejo personalizador, usted podría crear un asistente que pregunta al usuario acerca
de
Cómo el componente debe ser personalizado. Según las respuestas de los usuarios, el
Customizer modifica todas las propiedades del componente afectado. Siempre que un
personalizador
Genera un evento informando JDeveloper que algo sucedió, JDeveloper
Genera el código apropiado.

Para crear un personalizador:


1. En la aplicación Navegador, seleccione el proyecto que desea el bean para ser añadido.
2. Desde el menú principal, elija Archivo > Nuevo, o haga clic con el botón derecho del ratón y

seleccione Nuevo.
3. En la nueva galería, en las categorías de árbol, expanda General y seleccione Java.

4. En la lista de elementos, haga doble clic en Customizer.

5. En el cuadro de diálogo Personalizador de crear, en el campo Nombre, introduzca el


nombre de la
Customizer.
6. Si desea agregar el personalizador de un paquete distinto al predeterminado de paquete
Su proyecto, escriba el nombre del paquete en el campo Package o haga clic en Examinar
Paquetes.
7. Si desea que el personalizador para extender una clase distinta de la predeterminada,
introduzca la clase
En el campo Nombre se extiende o haga clic en Examinar las clases.
8. Haga clic en Aceptar para agregar el nuevo Personalizador clase a su proyecto.

18.7.12 Cómo hacer un componente capaz de disparar eventos


Cuando desarrolle un bean, usted debe pensar de todos los eventos que el bean debe ser
Capaz de generar.

18-38 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

Hacer un componente capaz de disparar eventos:


1. Determinar qué tipo de evento debe ser despedido, y:
■ Seleccione un conjunto de eventos apropiados existentes de la AWT o JFC, o
■ Crear un nuevo conjunto de eventos.
2. Crear métodos de registro de eventos para el componente.

3. Crear una notificación de evento/mecanismo de propagación para el evento:


Fire<>Evento yourEventName()
4. Llame al evento que se dispararon y llamar al mecanismo de notificación de

eventos de la llave
Puntos de su bean donde un evento de este tipo debe ser enviado.

18.8 Los proyectos de Java Refactorización


La refactorización es una técnica de edición que modifica la estructura de los códigos sin
alterar
El comportamiento del programa. Una operación de refactorización es una secuencia de
modificaciones sencillas que transforman un
Código del programa pero, tomados en conjunto, no cambie su comportamiento. Después de
cada refactorización
Funcionamiento el programa se compile y se ejecute correctamente. JDeveloper proporciona
una colección
Automatizada de operaciones de refactorización.
Utilizar la refactorización al modificar el código fuente de un programa para facilitar la
Mantener, ampliar o reutilización. Realizar la modificación como una serie de pasos de
refactorización.
Después de cada paso se puede reconstruir y revalidar el programa para garantizar que
no hay errores
Se han introducido.
Algunos ejemplos de simples operaciones de refactorización son:
■ Cambiar el nombre de un método. Esta operación busca los usos del método de destino
y, a continuación,
Permite a los usuarios decidir si se debe sustituir el nombre de cada ocurrencia.
■ Duplicación de una clase. La definición de la clase es replicado y todas las apariciones
de
El nombre de la clase en la definición replicados se sustituye por el nuevo nombre.
■ La introducción de un parámetro a un método. La definición del método es modificado
por el
Adición de un parámetro, y cada llamada de método se ha modificado para
proporcionar un argumento
Del tipo apropiado y valor.
JDeveloper proporciona también más sofisticadas operaciones de refactorización, tales
como:
■ La extracción de una interfaz de una clase mediante la derivación de declaraciones de
miembros de seleccionado
Los miembros de la clase.
■ Tirando de los miembros de una clase en una superclase o empujando hacia abajo
los miembros en un
Subclase moviendo las definiciones de miembro de una clase a otra.
■ La extracción de una clase sustituye a un conjunto de campos o métodos con un nuevo
objeto contenedor.
■ Introducir un campo, variable, parámetro o constante mediante la sustitución de un
seleccionado
Expresión con una referencia a un elemento nuevo construido a partir de la expresión.
■ Extraer un método sustituyendo destacó declaraciones consecutivas con una llamada a
Un nuevo método construidos a partir de las declaraciones.
■ Método de extracción de un objeto para crear un nuevo método a partir de un bloque
de código existente
(Similar al método de extracción), pero éste se mueve a una clase interna, recién
creada
Convertir todas las variables locales a campos de la clase.
■ La introducción de un objeto parameter sustituye a un conjunto de campos o métodos
con un nuevo
Objeto contenedor.

Programación en Java 18-39


Los proyectos de Java refactorización

Si los resultados de la operación de refactorización no son tan deseada, puede deshacer el


Refactorización como lo haría cualquier operación de edición, presionando Ctrl+Z.

18.8.1 la refactorización en diagramas de clase Java


Si se cambia de nombre o se mueve una clase mediante la funcionalidad de edición en un
diagrama, la
Código fuente de la clase será repartido de forma automática. Cambiar o mover un Java
En un diagrama de paquete refactorizar automáticamente el contenido de ese paquete.
Eliminar un campo, un método o una clase interna en un esquema se aplicará automáticamente la
Elimina de forma segura el patrón de refactorización. Para obtener más información,
consulte Section 18.8.4, "How to
Delete a Code Element".
Para aplicar un patrón de refactorización para una clase Java, interfaz, enum, o miembro de una
Diagrama, seleccione la clase o el miembro en el diagrama y elija el patrón de refactorización
Desde el menú de refactorización. Cuando un patrón de refactorización es aplicada de esta manera,
el
Se muestra el cuadro de diálogo apropiado, incluyendo la posibilidad de obtener una vista previa de
los resultados de la
La refactorización. Para obtener más información, consulte Section 18.8.6, "Refactoring Classes and
Interfaces."
Los siguientes patrones de refactorización están disponibles para las clases Java, interfaces y
Las enumeraciones en un diagrama de clase Java:
■ Renombrar
■ Mover (se aplica tanto a las simples y múltiples selecciones en el diagrama)
■ Duplicar
■ Extraer interfaz
■ Extraer superclase
Los siguientes patrones de refactorización están disponibles para los campos y métodos Java en
un
Diagrama de Clases Java:
■ Renombrar
■ Mover
■ Hacer estático
■ Tirar de miembros
■ Empuje hacia abajo los miembros
■ Cambiar de método (los métodos de Java solamente)

18.8.2 Cómo invocar una operación de refactorización


JDeveloper proporciona una amplia gama de operaciones de refactorización automatizados que
permiten
Para mejorar la calidad del código de tal manera que no altere el comportamiento externo del
El código, sin embargo mejora su estructura interna.

Para invocar una operación de refactorización:


1. Seleccione un elemento de programa en una ventana del editor de código fuente, o la estructura del
panel Navegador
Panel.
2. Haga clic con el botón derecho del ratón sobre el elemento de programa.

3. Seleccione una operación desde el menú de contexto.

4. También puede elegir refactorizar desde la barra de herramientas y seleccionar una operación de

refactorización
En la lista desplegable.

18-40 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

Menús contextuales de refactorización reflejan las operaciones que están disponibles en el


actual
Contexto. Esto es determinado por el elemento de origen que estaba en la posición del cursor
cuando
Haga clic con el botón secundario. Estas operaciones varían de elemento a elemento. Por lo
tanto, el
Menús contextuales de refactorización contener elementos diferentes dependiendo de dónde
en JDeveloper
Estás haciendo clic con el botón derecho del ratón para mostrar el menú.
Por ejemplo, puede mostrar diferentes menús contextuales contienen diferentes
refactorización
Operaciones haciendo clic con el botón derecho del ratón en:
■ La estructura menu
■ Al principio de la línea de un método
■ El tipo de devolución del método en el IDE
■ El nombre del método en el IDE
■ Un parámetro en la lista de parámetros del método en el IDE
Si los resultados de la operación de refactorización no son lo que usted desea, puede
deshacer el
Refactorización como lo haría cualquier operación de edición, presionando Ctrl+Z.

18.8.3 Cómo cambiar el nombre de un elemento de código


Mientras desarrolla su aplicación Java puedes renombrar fácilmente la definición y todos
Las referencias a un paquete, clase, interfaz, método, campo, parámetro o variable. Si
Deseo, en primer lugar puede generar una vista previa - una lista de los usos que
serán reemplazados. Utilice
La vista previa para inspeccionar y modificar o excluir los usos seleccionados, antes de causar el
resto
Que se va a renombrar.
El alcance de una operación de cambio de nombre es el alcance completo del elemento en
el proyecto.
Proyecto, clase, interfaz y miembro los usos son sustituidos en cualquier lugar aparecen en el
Proyecto. Los parámetros y variables se cambian sólo en el ámbito léxico de su
Definiciones: otros elementos con el mismo nombre no son modificados.
De forma predeterminada, la operación se limita a archivos .java , excluyendo los
comentarios (pero no
Documentación etiquetas de comentario que nombre los elementos de código) y anotaciones.
Los usos que
No son ambiguos será sustituido. Usos de la clase y los nombres de interfaz será
Sustituir si están completas o si están nombrados en las declaraciones de importación.
Para el paquete, el tipo y los elementos de miembro, puede optar por ampliar la operación
A
Comentarios o a otros archivos. Cuando se extiende a los comentarios, reemplazos se harán en
Comentarios de línea, código comentada, los cuerpos de los comentarios de
documentación, y en
Anotaciones. Cuando la operación se amplió a otros archivos, reemplazos de texto también
En los archivos de proyecto de tipos designados como archivos de texto en la página Tipos de archivo
del
Cuadro de diálogo de preferencias. Sustituciones en los comentarios y otros archivos se harán
más
Agresivamente que reemplazos en código Java.

Para cambiar el nombre de un elemento de código:


1. Seleccione el elemento que se va a cambiar el nombre de una de las dos formas siguientes:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o panel Estructura, seleccione el nombre.
2. Invoque el comando en una de las dos formas siguientes:
■ Desde el menú principal o el menú contextual, elija Refactorizar > Cambiar nombre.
■ Presione Ctrl+Alt-R.
Se abre el cuadro de diálogo Rename.

Programación en Java 18-41


Los proyectos de Java refactorización

3. En el cuadro Nombre, escriba el nuevo nombre. El nombre debe ser válido y no


Ya está en uso.
4. Ajustar la profundidad de la sustitución de texto.
■ Seleccione Buscar en los comentarios para ampliar la operación a comentarios, los cuerpos
Documentación de comentarios y anotaciones.
■ (Paquete, tipo y elementos integrantes solamente.) Seleccione la búsqueda en archivos Non-
Java
Ampliar la operación a otros tipos de archivos de texto en el proyecto.
5. Seleccione Previsualizar si desea inspeccionar los usos que serán reemplazados antes
Comprometerse con la operación de cambio de nombre.
6. Haga clic en Aceptar.

Si selecciona Vista previa, para evitar todos los usos que se haya modificado, finalizar el
Operación de cambio de nombre de la vista previa de la ventana de registro. Para obtener más
información, consulte
Section 18.8.3, "How to Rename a Code Element."

18.8.4 Cómo eliminar un elemento de código


Mientras desarrolla su aplicación Java puede eliminar la definición de una clase,
Interfaz, método o campo. La eliminación no se realizará sin su
Confirmación si el elemento está todavía en uso.
Si el elemento está en uso un registro que muestra los usos se mostrará. Utilice la lista para
Inspeccionar y resolver los usos. Si, a continuación, confirme la eliminación, los restantes usos
Permanecerán en el código como referencias indefinidas.

Para eliminar un elemento de código:


1. Seleccione el elemento que va a ser eliminado en una de las siguientes maneras:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o panel Estructura, seleccione el nombre.
2. Invoque el comando en una de las siguientes maneras:
■ Desde el menú principal o el menú contextual, elija Refactorizar > Eliminar de forma segura.
■ Pulse Alt+Supr.
Aparece el cuadro de diálogo Eliminar de forma segura mientras que los archivos de
proyecto se busca
Los usos.
3. Si se cierra el cuadro de diálogo, el elemento se ha eliminado. Si permanece abierto

después de
Realizar su búsqueda, el elemento tiene usos no resueltos.
■ Haga clic en Ver los usos para inspeccionar y resolver los usos. Cuando haya terminado,
invoque
El comando de nuevo para eliminar el elemento.
■ Haga clic en Omitir para eliminar la definición del elemento sin ver los usos.

18.8.5 Cómo obtener una vista previa de una operación de refactorización


Cuando se realiza una operación de refactorización que puede modificar muchos usos, es útil
Previsualizar los usos para identificar aquellas que deben ser modificados por mano o ser
excluido.
Usted tiene la opción, antes de cometer estas operaciones, de tener los usos enumerados en el
Vista previa de la ventana de registro, desde el que puede examinar y resolverlos y, si lo desea,
Confirmar la operación.

18-42 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

El registro muestra un árbol contraíble de paquetes y archivos Java. Debajo de cada archivo,
líneas de
Código que contiene los usos son enumerados.

Para ver un uso en una ventana de edición:


Haga doble clic en la entrada en el registro.

Para excluir un uso desde la operación de refactorización:


Haga clic con el botón secundario y seleccione Excluir.

Para confirmar la operación de refactorización:


1. Si se han realizado las modificaciones que afectan a los usos, haga clic en el icono
Actualizar en el registro
Barra de herramientas para ejecutar la búsqueda de usos.
2. Haga clic en el icono de refactorización en la barra de herramientas de registro.

18.8.6 clases e interfaces de refactorización


Mientras desarrolla su aplicación Java puede definir nuevas clases y
Interfaces y reutilizar los existentes.

18.8.6.1 Cómo mover un paquete, clase o interfaz


Al desarrollar su aplicación Java puede pasar fácilmente de un paquete, clase o
Interfaz a un paquete diferente. Si lo desea, puede crear una vista previa - una lista
De los usos que serán reemplazados. Utilice la vista previa para inspeccionar y modificar o excluir
Los usos seleccionados, antes de completar el movimiento.
Al mover los tipos primarios de clases e interfaces - quienes tengan la misma
Como su nombre de archivo - puede ser seleccionado para ser movido. En efecto, se cambia el
nombre del archivo, y el
Las definiciones de clases de secundaria e interfaces permanecen con la primaria.
Accesibilidad
Será conservada: si otras clases en el paquete original, consulte la clase
Mover, se les dará acceso público. Si la clase que se trasladó hace referencia a otras clases
en
El paquete original, estas clases se harán públicos.
El alcance de una operación para mover una clase o interfaz es todo el proyecto.
De forma predeterminada, la operación se limita a archivos .java , excluyendo los
comentarios (pero
Documentación no etiquetas de comentario que nombre los elementos de código) y
anotaciones. Los usos
Que no son ambiguos será sustituido. Los usos serán reemplazados si están completamente
Calificado o si están nombrados en las declaraciones de importación.
Usted puede elegir para ampliar la operación a comentarios o a otros archivos. Cuando está
extendido
A los comentarios, se realizarán sustituciones de texto en línea comentarios, comentada, código
Los cuerpos de los comentarios de la documentación, y de anotaciones. Cuando la operación se
Extendida a otros archivos, reemplazos también serán realizados en los archivos de proyecto
de tipos
Designado como archivos de texto en la página Tipos de archivo del cuadro de diálogo
Preferencias. Recambios
En los comentarios y otros archivos se harán más agresivamente que reemplazos en Java
El código.
Para mover una clase o interfaz:
1. Seleccione el paquete, clase o interfaz que se va a mover, en uno de los siguientes
Medios:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o en la estructura de la ventana, seleccione el nombre.
2. Invoque el comando en una de las siguientes maneras:

Programación en Java 18-43


Los proyectos de Java refactorización

■ Desde el menú principal o el menú contextual, elija Refactorizar > Mover.


■ Presione Ctrl+Alt-M.
Se abre el cuadro de diálogo Mover el vehículo.
3. En el paso a , escriba el nuevo nombre de paquete, o haga clic en [...] para navegar a un
Paquete existente.
4. Ajustar la profundidad de la sustitución de texto.
■ Seleccione Buscar en los comentarios para ampliar la operación a comentarios, los cuerpos
Documentación de comentarios y anotaciones.
■ Seleccione Buscar en archivos de texto para ampliar la operación a otros tipos de archivos de
texto
El proyecto.
5. Seleccione Previsualizar si desea inspeccionar los usos que serán reemplazados antes
Comprometerse con la operación de mover.
6. Haga clic en Aceptar.

Si selecciona Vista previa, para evitar todos los usos que se haya modificado, finalizar el
Operación de cambio de nombre de la vista previa de la ventana de registro. Para obtener más
información, consulte
Section 18.8.3, "How to Rename a Code Element."
Las clases también se pueden mover en la aplicación Navegador arrastrando varias clases
De un paquete a otro.

18.8.6.2 Cómo duplicar una clase o interfaz


Mientras desarrolla su aplicación Java puede duplicar fácilmente una clase o interfaz.
Sólo las clases y las interfaces primarias - aquellos que tengan el mismo nombre que su
archivo - puede
Ser seleccionado para ser duplicada. La duplicidad de clase o interfaz se agrega a la misma
Paquete como el original.
Los nombres de los miembros de la nueva clase se le da el mismo nombre que aquellos en el original,
Excepto para aquellos derivados de la clase original o nombre de interfaz. Cuando el original
Nombre está incrustado en el nombre de un miembro, el nuevo nombre es sustituido.

Para duplicar una clase o interfaz:


1. En un editor de código fuente de Java, seleccione el nombre de la clase o interfaz que se
Duplicado.

Nota: Sólo las clases y las interfaces primarias - quienes tengan la misma
Como su nombre de archivo - puede ser seleccionado para ser movido.

2. Desde el menú principal, elija Refactorizar > Duplicar.

Se abre el cuadro de diálogo Tipo de duplicados.


3. En el cuadro Nombre de clase, escriba el nuevo nombre. También puede especificar un paquete

nuevo.
4. Haga clic en Aceptar.

La nueva clase se agregará al proyecto.

18.8.6.3 cómo extraer una interfaz de una clase


Mientras desarrolla su aplicación Java puede fácilmente derivar una nueva interfaz de
Los métodos seleccionados y campos estáticos definidos en una clase existente.

18-44 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

Opcionalmente, también puede generalizar declaraciones - como el tipo de


especificaciones
Parámetros, variables, y miembros, sustituyendo a cada nombre de tipo en la declaración
Con el nombre de la nueva interfaz. No todas esas declaraciones pueden ser
sustituidos. Por ejemplo,
La sustitución puede hacerse por la declaración de una variable que se utiliza en un
Invocación de método, si el método no fue extraído en la nueva interfaz. El
Sustituciones será hecho en cualquier parte del proyecto.
La declaración de la clase será modificado para mostrar que se trata de una
implementación de
La nueva interfaz.

Para extraer una interfaz:


1. Seleccione la clase de la que deriva la interfaz será en uno de los siguientes
Medios:
■ En un editor de código fuente de Java, seleccione el nombre de la clase.
■ En un navegador o en la estructura de la ventana, seleccione el nombre de la
clase.
2. Desde el menú principal, elija Refactorizar > Extraer interfaz.

Se abre el cuadro de diálogo Extraer interfaz.


3. En el campo de paquete, escriba el nombre del paquete de la nueva interfaz.

4. En el campo Interface, introduzca el nombre de la nueva interfaz.

5. En los Miembros para extraer de la tabla, seleccione los miembros que se incluirán en el
Nueva interfaz.
6. Seleccione Reemplazar usos si desea convertir las declaraciones existentes que nombre

el
Clase de nomenclatura en las declaraciones de la interfaz.
7. Seleccione Previsualizar si desea inspeccionar los usos antes de comprometerse a la
La operación. Esta opción sólo está disponible si ha seleccionado Sustituir los usos.
8. Haga clic en Aceptar.

De lo contrario, la interfaz será creado y usos no será reemplazado.

18.8.6.4 cómo extraer una superclase


Puede crear una superclase sobre la base de miembros elegidos de la clase actual. El
Superclase consistirá de campo y declaraciones de método que coincide con el elegido
Los miembros.

Para extraer una superclase:


1. En un navegador, en la ventana Estructura, o en una ventana del Editor de código
fuente de Java, seleccione
El nombre de la clase.
2. Desde el menú principal, elija Refactorizar > Extraer Superclase.
El extracto se abre el cuadro de diálogo Superclase
3. En el nombre del paquete , escriba el nombre del paquete al que el nuevo
Superclase pertenecerá.
4. En el cuadro Nombre de clase, escriba un nombre para el nuevo superclase.
5. En los Miembros para extraer de la tabla, seleccione los miembros que se incluirán en el
Nueva interfaz.
Si desea un método que se creó como un método abstracto en la superclase,
comprobar
El cuadro abstracto contra ese método. Si desea que las dependencias de un método para
ser
Incluido en la superclase, verificar las dependencias de verificación.

Programación en Java 18-45


Los proyectos de Java refactorización

6. Seleccione Reemplazar usos si desea convertir las declaraciones existentes que nombre el
Clase en declaraciones nombrar la superclase.
7. Seleccione Previsualizar si desea inspeccionar los usos antes de comprometerse a la
La operación.
Esta opción sólo está disponible si ha seleccionado Sustituir los usos.
8. Haga clic en Aceptar.

Si selecciona Vista Previa, finalice la operación de extracción del registro de vista previa
Ventana. Para obtener más información, consulte Section 18.8.3, "How to Rename a Code
Element."
De lo contrario, la interfaz será creado y usos no será reemplazado.

18.8.6.5 Cómo utilizar supertipos donde sea posible


Mientras desarrolla su aplicación Java puede generalizar declaraciones - tales
Especificaciones como el tipo de los parámetros, variables y miembros - por sustitución
Las referencias a la clase seleccionada con referencias a uno de sus supertipos. No todos esos
Las declaraciones pueden ser sustituidos. Por ejemplo, la sustitución puede hacerse por el
La declaración de una variable que se usa en una invocación de método, si el método no es también
Definido en el supertipo. Las sustituciones se hará en cualquier parte del proyecto.

Para generalizar las declaraciones:


1. Seleccione la clase o interfaz cuyas declaraciones se generalizará en uno de los
Siguientes formas:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o en la estructura de la ventana, seleccione el nombre.
2. Desde el menú principal, elija Refactorizar > Uso de supertipo donde sea posible.

El uso supertipo se abre el diálogo.


3. En los supertipos tabla, seleccione el supertipo que las declaraciones serán
A generalizada.
4. Seleccione Previsualizar si desea inspeccionar los usos antes de comprometerse a la
La operación.
5. Haga clic en Aceptar.

Si seleccionó previa, de finalizar la operación de extracción del registro de vista previa


Ventana. Para obtener más información, consulte Section 18.8.3, "How to Rename a Code
Element."
De lo contrario, las sustituciones se realizarán de forma inmediata.

18.8.6.6 Cómo convertir una clase anónima a una clase interna


Puede convertir una clase interna anónima (anónimo) en una clase denominada inner
Clase.

Para convertir una clase anónima en una clase interna:


1. En una ventana del editor de código fuente de Java, seleccione la declaración de la clase
anónima.
2. Desde el menú principal, elija Refactorizar > Convertir a clase interna anónima.

El convertir a la clase interna anónima, se abre el diálogo


3. En el cuadro Nombre de clase, escriba el nombre dado a la clase interna.

18-46 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

4. Si desea que la clase interna para ser dado el modificador static, compruebe
el cuadro estático.
5. Para convertir la clase anónima en una clase interna, haga clic en Aceptar.

18.8.6.7 Cómo mover una clase interna


Puede mover una clase interna a una clase recién creada en el nivel superior.

Para mover una clase interna:


1. Seleccione el nombre de la clase de interior en el panel Estructura o en una ventana del editor
de código fuente de Java.
2. En el menú principal seleccione Refactor > Mover. Mueva la clase interna se abre el

diálogo.
3. Si no desea que la nueva clase de nivel superior que se crea con los nombres ya
Se muestra en el cuadro de diálogo, sobrescribirlos o seleccione otros nuevos.
4. Para crear una nueva clase en el nivel superior con los detalles que se muestran en el cuadro de

diálogo, haga clic en


OK.

18.8.7 Los miembros de refactorización


Mientras desarrolla su aplicación Java puede mover fácilmente las definiciones de
miembro
Una clase a otra.

18.8.7.1 Cómo mover un miembro de clase


Puede mover un miembro de clase (por ejemplo, un método) a otra clase.

Para mover un método no estático:


1. Seleccione el nombre del método en la estructura de la ventana o en un editor de código
fuente de Java
Ventana.
2. Desde el menú principal seleccione Refactor > Mover.

Si existe al menos un objetivo adecuado para que los Estados pueden moverse, el
movimiento
Se abre el cuadro de diálogo de miembro. De lo contrario, se mostrará un cuadro de
mensaje.
3. En el panel Destinos, elegir la clase a la que el miembro se moverán.

4. Si desea que los nuevos nombres que se utilizarán para el método y el parámetro

en el nuevo
Ubicación, introducir nuevos nombres en el nombre del método y los cuadros Nombre de
parámetro.
5. Seleccione cómo los usos de los estados será manejado después de la mudanza.
■ Seleccione Usar Delegado para manejar los usos a través de la recién creada delegación
Método.
■ Seleccione Reemplazar para reemplazar todos los usos con nuevos que llame a la clase
movido
Miembro directamente.
Para mover un método estático:
1. Seleccione el nombre del método en la estructura de la ventana o en un editor de código
fuente de Java
Ventana.
2. Desde el menú principal seleccione Refactor > Mover.

Se abre el cuadro de diálogo Mover los miembros.


3. En el grupo de destino, introduzca o seleccione la clase a la que el miembro se moverán.

4. Para cada miembro que desea mover, asegúrese de que la casilla de verificación situada

a su izquierda en el
Miembros para extraer la lista está activada.

Programación en Java 18-47


Los proyectos de Java refactorización

5. Si desea que las dependencias de un miembro a ser trasladada también, verificar la


Casilla de verificación correspondiente en la columna de dependencias.

18.8.7.2 Cómo cambiar la firma de un método


Puede cambiar la firma de un método. La firma de un método es la
La combinación del nombre del método, junto con el número y los tipos de los parámetros
(Y su pedido).

Para cambiar la firma de un método:


1. Seleccione el nombre del método en la estructura de la ventana o en un editor de código fuente de
Java.
2. En el menú principal seleccione Refactor > Cambiar el método.

El método Change, se abre el diálogo.


3. Realizar cambios en el nombre del método, tipo de retorno y los parámetros de accesibilidad
Requerida.
Si cambia el nombre del método al que ya existe en la clase,
Veremos después un segundo cuadro de diálogo. A través de esto, usted puede
optar por sustituir todos los usos del
Método que se están cambiando a usos del método existente.
4. Si desea crear tareas en función de los cambios realizados y agregarlos a
La ventana de tareas, verificar el agregar tareas a la ventana de tareas de verificación.

Nota: Esta función no se aplica a los constructores.

18.8.7.3 Cómo cambiar un método a un método estático


Puede asignar el modificador static a un método.

Para cambiar de un método a un método estático:


1. Seleccione el nombre del método en la estructura de la ventana o en un editor de código fuente de
Java.
2. En el menú principal seleccione Refactor > Hacer estático.

Si la clase es parte de una jerarquía de clases, el que se abre el cuadro de diálogo


estático. De lo contrario, el
Modificador static se agrega inmediatamente.
3. Si el que se abre el cuadro de diálogo estático:
■ En el cuadro Nombre, escriba o seleccione un nombre para ser utilizado como referencia
en la
Método modificado.
Las opciones enumeradas se derivan de los nombres de objeto.
■ Si desea crear un método que no puede ser anulado, verificar el declarar
Caja final.

18.8.7.4 Cómo tirar de miembros en una superclase


Mientras desarrolla su aplicación Java puede mover fácilmente las definiciones de
Miembros de una clase (la clase de origen) a uno de sus superclases (la clase de destino). Este
La operación puede aplicarse a una clase sólo si dispone de una o más clases de potenciales
El proyecto. Los miembros no pueden ser arrancados en biblioteca de clases. Asimismo, este refactor
Comando sólo está disponible para una clase que se declara con una superclase cláusula o una lista
De interfaces implementadas.
De forma predeterminada, cuando un método se hala, su definición se trasladó desde la
clase de origen
Para la clase de destino. En vez de eso, usted puede elegir el método abstracto, en cuyo caso el

18-48 Guía del usuario para Oracle JDeveloper


Los proyectos de Java
refactorización

Definición de método permanecerá en la clase de origen, y una declaración en la que se


agregará
Para la clase de destino. Abstraer un método convertirá la clase de destino a una abstracta
La clase, si no lo está ya.
Un miembro que desea tirar hacia arriba pueden tener dependencias. Un
miembro es un
Dependencia si se utiliza en la definición de un miembro que se tira hacia arriba. Tirando de un
Estados sin tirar también sus dependencias arriba introducirá undefined
Referencias en la clase de destino. Cuando seleccione un miembro para ser levantada, su
Las dependencias serán indicados. Puede elegir si desea o no que tire hacia arriba el
Dependencias.
Cuando un miembro declaró que se privado se hala, sus cambios de acceso protegido.

Tirar de los miembros:


1. Seleccione la clase de la que los miembros se introducirá en uno de los siguientes
Medios:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o la estructura de la ventana, seleccione el nombre.
2. Desde el menú principal, elija Refactorizar > tirar de miembros.

El tirar los miembros de diálogo se abrirá.


3. Desde el menú desplegable Destino, elija la superclase que será el destino
Clase.
4. En los Miembros para extraer de la tabla, seleccione los miembros que desea tirar hacia

arriba.
Los miembros que son las dependencias de los miembros elegidos, si cualquiera, será
Indicado.
5. En la columna de resumen, seleccione la casilla de verificación si desea que el método

es extraída
Para la clase de destino.

Nota: Los miembros que van a ser extraídos no tiene dependencias.

6. En la columna de dependencias seleccione la casilla de verificación si desea tirar todos


Los miembros de las dependencias.
Esta selección es transitiva. Causará que las dependencias de las dependencias para
ser también
Tira hacia arriba.
7. Haga clic en Aceptar.

18.8.7.5 cómo empujar los Miembros abajo en subclases


Mientras desarrolla su aplicación Java puede mover fácilmente las definiciones de
Miembros de una clase (la clase de origen) para sus subclases inmediatas (las clases de destino).
De forma predeterminada, cuando un método es empujado hacia abajo, su definición
se mueve desde el origen
Clase a las clases de destino. En su lugar, puede elegir dejar una declaración de método en la
Clase de origen, convirtiéndolo en una clase abstracta, si no lo está ya.
Un miembro que desee para empujar hacia abajo p ueden tener
dependencias. Un miembro es un
Si su definición de dependencia usa un miembro que se empuja hacia abajo. Empujando un
Miembro también empujando hacia abajo, sin sus dependencias abajo introducirá undefined
Las referencias de la clase de origen. Cuando se selecciona un miembro para ser empujado hacia
abajo, su
Las dependencias serán indicados. Usted puede elegir si desea o no para empujar hacia abajo el
Dependencias.

Programación en Java 18-49


Los proyectos de Java refactorización

Para empujar los miembros abajo:


1. Seleccione la clase de la que los miembros se introducirá en uno de los siguientes
Medios:
■ En un editor de código fuente de Java, seleccione el nombre.
■ En un navegador o la estructura de la ventana, seleccione el nombre.
2. Desde el menú principal, elija Refactorizar > Miembros Empuje hacia abajo.

Los miembros de empuje hacia abajo, se abre el diálogo.


3. En los Miembros para extraer de la tabla, seleccione los miembros que desea empujar hacia abajo.

Los miembros que son las dependencias de los miembros elegidos, si cualquiera, será
Indicado.
4. En la columna de resumen, seleccione la casilla de verificación si desea una definición abstracta

de
El miembro que se ha dejado en la clase de origen.
Esta selección es transitiva. Causará que las dependencias de las dependencias para ser
también
Se empuja hacia abajo.
5. Haga clic en Aceptar.

18.8.8 Las expresiones de refactorización


Mientras desarrolla su aplicación Java puede convertir fácilmente expresiones al denominado
Los elementos.

18.8.8.1 cómo una llamada a un método en línea


Puede incorporar el cuerpo de un método en el cuerpo de sus llamadores y quitar el
Método original. Esto se conoce como in-lining de llamada a un método.

Para una llamada a un método en línea:


1. En un editor de código fuente de Java, seleccione una instancia de la llamada al método
que desea ser
Entre líneas.
2. Desde el menú principal seleccione Refactor > En línea.
■ Si sólo hay una llamada al método de esta clase, se ha realizado el cambio
Inmediatamente.
■ Si hay más de una llamada al método de esta clase, el diálogo en línea
Se abre.
3. Si se ha abierto el diálogo en línea:
■ Elija entre inlining sólo la instancia seleccionada de la llamada o inlining todos
Instancias de la llamada.
■ Haga clic en Aceptar.

18.8.8.2 Cómo introducir un campo


Mientras que el desarrollo de la aplicación Java se puede convertir fácilmente en una expresión
en una
Referencia a un campo. Una nueva declaración de campo se agregará a la clase, y la seleccionada
Expresión será su inicialización. La expresión original será sustituida por una
En el nuevo campo de referencia.
Una expresión puede ser convertido en un campo si su tipo es nulo.
18 - 50 Guía del usuario para Oracle JDeveloper
Los proyectos de Java
refactorización

Para introducir un campo:


1. En el editor de código fuente, seleccione la expresión.
2. Desde el menú principal, elija Refactorizar > Introducir el campo.

Se abre el cuadro de diálogo Introducir el campo.


3. En el menú desplegable Tipo, elija un tipo de campo.

El menú muestra una lista de todos los tipos que son coherentes con la expresión. Esta
opción
No se muestra si un solo tipo es válido.
4. S e s u g i e r e u n n o m b r e s e m o s t r a r á e n e l cuadro de texto Nombre.

Puede modificar o sustituir, o elija otra sugerencia del menú desplegable


Menú.
5. Seleccione una inicialización:
■ Seleccione método actual para poner la instrucción de asignación para el campo
Inmediatamente anterior a la declaración que contiene la expresión.
■ Seleccione la Declaración del campo para asignar el valor al campo en su declaración
Declaración. Esta opción no estará activa si la expresión tiene una variable o
Parámetro con ámbito local.
■ Seleccione Constructor para asignar el valor al campo en el método constructor
De la clase. Esta opción no estará activa si la expresión tiene una variable o
Parámetro con ámbito local.
6. Haga clic en Aceptar.

18.8.8.3 Cómo introducir una variable


Mientras que el desarrollo de la aplicación Java se puede convertir fácilmente en una
expresión en una
Una referencia a una variable. Una declaración de variable nuevo será añadido al método, y
La expresión seleccionada se convertirá en su inicialización. La expresión original será
Se sustituye por una referencia al nuevo miembro.
Una expresión puede ser convertido en un miembro si su tipo es nulo.

Para introducir un miembro:


1. En el editor de código fuente, seleccione la expresión.
2. Desde el menú principal, elija Refactorizar > Introducir Variable.

Se abre el cuadro de diálogo Introducir la variable.


3. En el menú desplegable Tipo, elija un tipo de campo.

El menú muestra una lista de todos los tipos que son coherentes con la expresión. Esta
opción
No se muestra si un solo tipo es válido.
4. S e s u g i e r e u n n o m b r e s e m o s t r a r á e n e l cuadro de texto Nombre.

Puede modificar o sustituir, o elija otra sugerencia del menú desplegable


Menú.
5. Seleccione Declarar definitiva si desea añadir el modificador final a la variable
Declaración.
6. Haga clic en Aceptar.
Programación en Java 18-51
Los proyectos de Java refactorización

18.8.8.4 Cómo introducir un parámetro


Mientras que el desarrollo de la aplicación Java se puede convertir fácilmente en una expresión
constante
En el cuerpo de un método en un nuevo parámetro para el método. La expresión será
Sustituido por el nuevo nombre de parámetro, el parámetro nuevo se agregará a la
Lista de parámetros del método, y en todas las invocaciones del método la expresión será
Se inserta como un argumento adicional.
Las expresiones pueden ser introducidas como parámetros sólo si son literales u operaciones en
Literales.
Esta operación no está permitida para los métodos que implementa una interfaz. Alterando el
Firma de tal método podría invalidar la aplicación.

Para introducir un parámetro:


1. En el editor de código fuente, seleccione la expresión.
2. Desde el menú principal, elija Refactorizar > Introducir el parámetro.

Se abre el cuadro de diálogo Introducir el parámetro.


3. En el menú desplegable Tipo, elija un tipo de campo.

El menú muestra una lista de todos los tipos que son coherentes con la expresión. Esta opción
No se muestra si un solo tipo es válido.
4. S e s u g i e r e u n n o m b r e a p a r e c e e n e l cuadro de texto Nombre.

Puede modificar o sustituir, o elija otra sugerencia del menú desplegable


Menú.
5. Seleccione Declarar definitiva si desea agregar el modificador final a la variable
Declaración.
6. Haga clic en Aceptar.

18.8.8.5 Cómo introducir una constante


Mientras que el desarrollo de la aplicación Java se puede convertir fácilmente en una expresión
constante
En una referencia constante. La nueva declaración de constantes inicializado por la expresión
Se agregará a la clase, y la expresión original será sustituido por el nombre de la
La constante.
Las expresiones pueden ser introducidas como constantes sólo si son literales u operaciones en
Literales.

Para introducir una constante:


1. En el editor de código fuente, seleccione la expresión.
2. Desde el menú principal, elija Refactorizar > Introducir constante.

Se abre el cuadro de diálogo Introducir la constante.


3. En el menú desplegable Tipo, elija un tipo de campo.

El menú muestra una lista de todos los tipos que son coherentes con la expresión. Esta opción
No se muestra si un solo tipo es válido.
4. S e s u g i e r e u n n o m b r e a p a r e c e e n e l cuadro de texto Nombre.

Puede modificar o sustituir, o elija otra sugerencia del menú desplegable


Menú.
5. Haga clic en Aceptar.
18-52 Guía del usuario para Oracle JDeveloper
Los proyectos de Java
refactorización

18.8.8.6 Cómo extraer un método


Mientras desarrolla su aplicación Java puede extraer fácilmente la parte del cuerpo de
uno
Método para crear otro. Se sustituye el código extraído en el método original con un
Llamada al nuevo método. Las variables locales y parámetros utilizados en el código
extraído
Se convierten en los parámetros del nuevo método. Una asignación hecha por una declaración en la
Código extraído, si los hubiere, se convertirá en el miembro original a una asignación que
Toma el valor de la llamada al método nuevo.
Para ser extractable, un fragmento de código debe satisfacer varias restricciones:
■ Debe constar de una única expresión completa, o una secuencia de completa
Declaraciones.
■ No se puede realizar una asignación a más de una variable cuya declaración es
Externo a la selección.
■ No puede tener más de un punto de salida. Un punto de salida es una instrucción
que produce
Una excepción que no es capturado en la selección, una instrucción break o continue
Para un bucle fuera de la selección, o una instrucción return.
El nuevo método se agrega a la misma clase que el original. El nuevo método es
Declaró estar privado.

Nota: Sólo el bloque de código seleccionado se sustituye por el extraído


Método. Otras apariciones del mismo bloque de código no se
Sustituir.

Para extraer un método:


1. En el editor de código fuente, seleccione la expresión o la secuencia de expresiones
que
Desea extraer.
2. Desde el menú principal, elija Refactorizar > Extract Method.
Se abre el cuadro de diálogo Extraer método.
3. Introduzca un nombre para el nuevo método.

4. En la lista de parámetros, especificar las sustituciones que se harán para el local


Las variables y los parámetros que aparecen en el código seleccionado:
■ En la columna nombre nombres de reemplazo, que son similares o idénticos a los
Nombres originales, se proponen. Puede seleccionar y modificar los nombres.
■ En la columna incluido, seleccionar los parámetros propuestos que se convertirá
en el
Los parámetros del nuevo método. Aquellos que anule la selección se convertirá en
Las variables locales no inicializada en el nuevo método.
■ Utilice los botones Arriba y Abajo para ordenar los parámetros
5. Seleccione static si desea declarar el nuevo método es estático.
Esta opción está deshabilitada si el método es obligado a ser estática porque se
llama desde
Un método estático, o si es obligado a ser no-estático porque utiliza un non-static
Miembro.
6. Haga clic en Aceptar.
El nuevo método se agrega a la clase, y el código seleccionado será reemplazado
Por una llamada al nuevo método.
7. Si deselecciona cualquier de los parámetros propuestos en la lista, modificar los

parámetros
Nuevo método para inicializar sus variables locales.

Programación en Java 18-53


Los proyectos de Java refactorización

18.8.8.7 Cómo sustituir un constructor con un método de fábrica


Puede convertir un constructor en un método de fábrica.

Para convertir un constructor en un método de fábrica:


1. Seleccione el nombre del constructor en la estructura de la ventana o en un editor de código fuente
de Java.
2. En el menú principal seleccione Refactor > Reemplazar Constructor con método de fábrica.

Sustituir el Constructor con método de fábrica, se abre el diálogo.


3. En el cuadro Nombre de método, escriba un nombre para el nuevo método.

Se sugiere un nombre basado en el nombre de clase actual ya aparece en el


cuadro.
4. Para convertir el constructor en un método de fábrica haga clic en Aceptar.

18.8.8.8 Cómo encapsular un campo


Puede cambiar los campos de una clase de ser públicamente accesible para ser accesible
Sólo desde dentro de la clase.

Para encapsular un campo:


1. Seleccione el nombre del campo (o sus padres) en la estructura de clase de la ventana o en Java
Editor de código fuente.
2. En el menú principal seleccione > refactorización Encapsular Campos.

El encapsular campos, se abre el diálogo.


3. En los campos de la tabla, active la casilla de verificación situada junto a cada campo que desee
Encapsulados.
En este cuadro de diálogo, también puede especificar opciones para el método/campo y
las accesibilidades
Alcance de reemplazos.
4. Seleccione cómo desea descriptores de acceso para ser sustituido como parte de la encapsulación.

5. Si desea crear tareas en función de los cambios realizados y agregarlos a


La ventana de tareas, verificar el agregar tareas a la ventana de tareas de verificación.
6. Si desea inspeccionar los cambios antes de confirmar la operación, seleccione
Vista previa.
7. Haga clic en Aceptar.

Si seleccionó previa, de finalizar la operación de extracción del registro de vista previa


Ventana. Para obtener más información, consulte Section 18.8.3, "How to Rename a Code
Element."

18.8.8.9 Cómo invertir una expresión booleana


Mientras que el desarrollo de aplicaciones Java, puede seleccionar un campo booleano,
parámetro o
Variable local e inicializarla con el valor opuesto. JDeveloper automáticamente
Corrige todas las referencias para mantener el mismo código de funcionalidad. JDeveloper examina
todos
Campos, parámetros y variables locales e invierte todos los usos. Esta refactorización cambia
El sentido de un método o variable de tipo Boolean a la opuesta. Una expresión booleana
Evaluar a verdadero será False. Asimismo, evaluando una expresión booleana
Falso será true.
Por ejemplo, si tiene una variable que está habilitado y desea cambiar para cambiar
El significado para minusválidos, la opción de menú Boolean Invertir cambia los usos para
discapacitados.

18-54 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

Para invertir un método booleano:


1. En el editor de código fuente, seleccione la expresión booleana.
2. Haga clic con el botón derecho del ratón sobre la expresión y elija Refactorizar > Invertir

Boolean.
Table 18–1 Contiene un ejemplo de una expresión booleana invertida.

Tabla 18-1 Ejemplo Boolean invertir


Antes Después

Un doble privado; Un doble privado;


... ...
Público el método boolean() { Público el método boolean() {
Si (activado){ Si (deshabilitado{
A =5; A =5;
Devuelve true; Return false;
} }
Falso; Devuelve true;
} }

18.9 optimiza el rendimiento de la aplicación


JDeveloper proporciona un conjunto de herramientas para el análisis del rendimiento y de la
calidad de su
Código Java. Utilice estas herramientas para mejorar tanto la calidad de su código y su
propio
Conocimientos de programación.Puede utilizar JDeveloper es característica de auditoría para
analizar código Java
De conformidad a los estándares de programación.
La auditoría es el análisis estático del código para la observancia de las normas y
parámetros que definen
Estándares de programación. La auditoría encuentra defectos que hacen que el código difícil
mejorar
Y MANTENER. Herramientas de auditoría del JDeveloper le ayudan a buscar y corregir tales
defectos. El código puede
Ser auditados incluso cuando no es compilable o ejecutable.
■ Una regla es un test cualitativo de la presencia o ausencia de alguna
c a r a c t e r í s t i c a . Pa r a
Ejemplo, el estilo de codificación Java común requiere que los nombres de clase se
capitalizarán. Un
La violación se produce cuando una regla no se cumpla.
■ U n a m é t r i c a e s u n a m e d i d a c u a n t i t a t i v a d e t a m a ñ o o c o m p l e j i d a d . Po r
ejemplo, un
Método que es demasiado largo, o abarca demasiados casos debería delegar algunas de
sus
Funcionalidad a otros métodos. Un exceso de umbral anomalía ocurre cuando el
Se supera el límite superior especificado.
Puede crear y personalizar los perfiles, elegir las reglas que se van a usar, y el ajuste de
parámetros
Para reglas individuales. Examinar las normas de auditoría y métricas para aprender más
acerca de ellos. Para
Si desea más información,
consulte Section 18.9.25, "How to Browse Audit Rules, Code Assists, and
Metrics."
Los desarrolladores de auditoría y características métricas son extensibles. Auditoría y
métricas son dos
Facetas de un análisis del código fuente y marco de transformación que pueden personalizarse
Y extendida. La API pública de auditoría y la métrica es la
.Oracle jdeveloper.Auditoría paquete.

Para la auditoría de código Java:


■ Ejecutar el auditor en archivos de origen para producir un informe de auditoría.
Para obtener más información,
Ver Section 18.9.6, "How to Run Audit to Generate an Audit Report."
■ Utilizar Código Ayudar a auditar durante la edición. Violaciones de auditoría son
destacadas como usted
Editar, y puede aplicar correcciones automáticas.

Programación en Java 18-55


Optimizar el rendimiento de la aplicación

Auditoría desde la línea de comandos para generar un informe de auditoría. Para


obtener más información,


Ver
■ La ventana de estado muestra violaciones de auditoría en el documento seleccionado en la
Vista activa.
Un informe de auditoría muestra las violaciones de las reglas y las mediciones
organizadas como un árbol. Una fila
Del árbol corresponde a una construcción o una violación, e incluye cualquier medida
Los valores para el constructo teórico o violación. Un constructo es un método, una clase, un
archivo
Proyecto o área de trabajo.
Las siguientes propiedades se encuentran en las normas:
Fijar predeterminado
La solución que se utilizará para la violación de esta regla se aplica cuando la corrección es
predeterminado
Aplicado a una construcción.
Patrón
Una expresión regular que se utiliza como un filtro para buscar identificadores
no convencionales.
Gravedad
Se utiliza para clasificar las violaciones de las reglas en el informe de auditoría.
Visibilidad
Un umbral basado en la palabra clave de accesibilidad. Las violaciones se
informó sólo si ellos
Se producen en clases o métodos que tienen al menos el elegido la visibilidad.

18.9.1 entender las reglas de auditoría


Las normas de auditoría son estáticas, cualitativa, análisis de código.
En un perfil de auditoría reglas individuales puede ser activado y configurado mediante la
configuración de sus
Propiedades. Cuando un código construir no cumple una regla, una infracción de la regla es
reportada.
Algunas reglas definen soluciones automáticas que puede elegir para aplicar.

Tabla 18-2 Las normas de auditoría


Artículo Descripción
Fijar predeterminado La solución que se utilizará para la violación de esta regla son cuando
Aplicar corrección predeterminada se aplica a una construcción.
Patrón U na e xp r e s i ó n r e g ul a r q ue s e uti l i z a c o mo un fi l tr o p a r a
encontrar poco convencional
Los identificadores.
Gravedad Se utiliza para clasificar las violaciones de las reglas en el informe de auditoría.
Prefijo U ti l i z a una e xp r e s i ó n r e g ul a r p a r a b us c a r i d e nti fi c a d o r e s c o n
Prefijo no convencionales.
Visibilidad U n um b r a l b a s a d o e n l a p a l a b r a c l a v e d e ac c e s i b il i d a d .
Violaciones
Ser informado sólo si ocurren en clases o métodos teniendo en
Menos el elegido la visibilidad.

18.9.2 Understanding Audit Metrics


Métricas de auditoría son estáticos, análisis cuantitativos de código.
En una auditoría de mediciones individuales de perfil puede ser activado y configurado.
Métricas son
Configurada por el establecimiento de un umbral: cuando un código construir supera el umbral, un
A través de la medición del umbral se reporta en el informe de auditoría.

18-56 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

JDeveloper mide los siguientes parámetros:


La profundidad del árbol de herencia (DIT).
La profundidad del árbol de herencia de una clase. Por convención, java.lang.Object ha dit
de
1, una clase que se extiende directamente java.lang.Object ha dit 2, y así sucesivamente.
Número de declaraciones (NOS).
El tamaño, en Java, las declaraciones de un método, clase u otro tipo de construcción.
Cyclomatic complejidad (V(G)).
Las ramificaciones de la complejidad de un método. Las construcciones que encierran
métodos, tales como
Clases y proyectos, se asignan la máxima complejidad medido para un cerrado
Método. Los valores por encima de 10 se consideran generalmente problemático.

18.9.3 Usando las herramientas de auditoría


Puede utilizar herramientas de auditoría para ver informes de auditoría y de investigar y
corregir la regla
Las violaciones y por mediciones de umbral. Una nueva pestaña se creará en el registro
Cuando se inicia la ventana de auditoría y el informe de auditoría se mostrarán en ella.
La auditoría es el análisis estático del código para la observancia de las normas y
parámetros que definen
Estándares de programación. La auditoría encuentra defectos que hacen que el código difícil
mejorar
Y MANTENER. El JDeveloper herramientas de auditoría le ayudan a buscar y corregir tales
defectos. Código
Se puede auditar incluso cuando no es compilable o ejecutable.

18.9.3.1 utilizando la ventana Panel de informe de auditoría


Un informe de auditoría es un conjunto de métricas de las violaciones a las reglas
y las mediciones presentaron como
Árbol organizados en construcciones. Un constructo es un método, clase, paquete de archivos,
proyectos o
Área de trabajo. Si el perfil de auditoría incluye reglas, la tabla tiene una columna de
gravedad
Que muestra la severidad de la designada construcciones. Si el perfil de auditoría incluye
Métricas, la tabla tiene una columna adicional para cada métrica mostrando el
Las mediciones de las construcciones.
Para ordenar el informe por el contenido de una columna, haga clic en el encabezado de la
columna. A la inversa
Orden, haga clic en Nuevo.

18.9.3.2 utilizando la barra de herramientas de la ventana de auditoría


Desde la barra de herramientas de la ventana de registro puede realizar las operaciones
que se muestran en Table 18–3.

Tabla 18-3 Iconos de la barra de herramientas de la ventana de auditoría


Icono Nombre Descripción
Actualizar Haga clic en Volver a ejecutar la auditoría sobre la
misma selección con
El mismo perfil.
Cancelar Haga clic aquí para cancelar la ejecución de la
auditoría. Tenga en cuenta que esta
Puede dar resultados parciales.
Exportar Haga clic para abrir el cuadro de diálogo Exportar
resultados, desde
Que puede guardar el informe en un archivo. Puede
Guardar los resultados en formato XML, HTML o texto sin
formato.
Expandir todo Haga clic para expandir todos los nodos en el
contenedor
Informe, exponiendo todas las filas.
Contraer todo Haga clic en para contraer todos los nodos en el
contenedor
Informe, pero ocultar todas las construcciones de nivel
superior.

Programación en Java 18-57


Optimizar el rendimiento de la aplicación

Tabla 18-3 (Cont.) Los iconos de la barra de herramientas de la ventana de auditoría


Icono Nombre Descripción
Grupo construye por Haga clic para abrir el grupo de diálogo, desde el cual usted
Puede especificar los tipos de construcciones que contenedores
Será mostrado. Agrupación por construcciones permite
Para organizar mejor los resultados, vía los defectos y
Las violaciones rápidamente, y analizar los resultados con
facilidad.
Fix Elegir una solución para una infracción de la regla de la
Menú desplegable. Para una regla concreta violación,
Elegir entre las soluciones definidas por esa violación's
Tipo. Para crear un grupo, la única opción es
Aplicar correcciones Predeterminado, que se aplica a la solución
predeterminada
Definido por su tipo, si los hubiere.
Mostrar más umbral sólo alternar la visualización de mediciones que están dentro
Los límites aceptables. El umbral es un definible
Propiedad de métricas.

18.9.3.3 Uso de filtros


Puede especificar filtros para podar el conjunto de clases Java cuyas violaciones son mostradas.
Puede
Filtro por nombres de paquetes, nombres de clase, o ambos. Un filtro se compone de uno o más
patrones
Separadas por comas.
Un patrón puede contener los siguientes caracteres especiales:
■ * Coincide con cualquier número de caracteres
■ ? Coincide con cualquier carácter individual
■ ! Al comienzo de un patrón denota un patrón de exclusión
El conjunto de clases que pasa un filtro se determina teniendo en cuenta los patrones de orden.
Un no-patrón de exclusión agrega todas las clases que coincidan con el patrón
para el conjunto, una exclusión
Patrón elimina todas las clases que coincidan con el patrón del juego. Tabla 18-4 contiene el
Puede especificar filtros

Tabla 18-4 Filtros


Nombre Descripción
Paquete Introducir patrones de filtro que se aplique a todos, pero el último elemento de
Los nombres de clase totalmente cualificado. Si este campo está vacío, no
tiene ningún efecto.
Archivo Introducir patrones de filtro que se aplicará sólo al último elemento de
Los nombres de clase totalmente cualificado. Si este campo está vacío, no
tiene ningún efecto.
Aplicar Haga clic en para aplicar el paquete dado y filtros de archivos para el informe
Filas.
Claro Haga clic aquí para borrar el paquete y filtros de archivos, y restaurar el
Las filas del informe.

18.9.3.4 utilizando el menú contextual de la ventana de auditoría


Seleccione uno o más nodos de construcciones (contenedor) o de violación de la regla (nodos hoja) y
Haga clic con el botón derecho del ratón para abrir el menú contextual. En el menú contextual
puede realizar la
Las operaciones que se muestran en la Tabla 18-5 sobre el seleccionado construye o de violación de la
regla.
18-58 Guía del usuario para Oracle JDeveloper
Optimizar el rendimiento de la aplicación

Tabla 18-5 Los elementos del menú contextual de la ventana de auditoría


Nombre Descripción
Aplicar correcciones predeterminado Elegir aplicar la corrección predeterminada, si los hubiere, a
cada regla seleccionada.
Violación o a todas las violaciones en las construcciones seleccionadas.
Usted
Puede definir la predeterminada fija utilizando
las herramientas > Preferencias >
Auditoría: Página de perfiles.
Aplicarcorrección <> Elegir aplicar esta solución a la violación de la regla seleccionada.
Construir.
Regla acerca de <> Seleccione esta opción para mostrar una explicación de la regla que se
aplica a este
Infracción de la regla.
Ocultar <> Regla violaciones Elija Eliminar todas las violaciones de la regla seleccionada de la
Informe.
Mostrar u ocultar las violaciones Elija restaurar todas las violaciones antes ocultos.
Mostrar más umbral sólo haga clic para alternar la visualización de mediciones que están dentro
Los límites aceptables.
Cancelar Decide rescindir una auditoría.
Actualizar Elija Volver a ejecutar la auditoría.
Por grupo Seleccione para abrir el grupo de diálogo, desde el que puede
Especifique los tipos de construcciones de contenedores que será
mostrado.
Expandir todo Haga clic para expandir todos los nodos del contenedor en el
informe, exponiendo
Todas las filas.
Contraer todo Haga clic en para contraer todos los nodos del contenedor en el
informe, ocultando todos
Pero las construcciones de nivel superior.
Ir a la fuente Seleccione para abrir el archivo de origen en el momento de la infracción
de la regla.
Si lo desea, puede editar el archivo y corregir la violación.
Exportar Seleccione para abrir el cuadro de diálogo Resultados de exportación,
desde el que puede
Guardar el informe en un archivo.

18.9.4 Cómo auditar el código Java en JDeveloper


Herramientas de auditoría del JDeveloper le ayudan a buscar y corregir los defectos que
hacen que el código difícil
Mejorar y mantener. Puede auditar código incluso cuando no es compilable o
Ejecutable. El enfoque de una auditoría se define mediante un perfil, que es un conjunto de
reglas de auditoría
Y métricas.
Puede examinar las normas de auditoría y métricas para aprender más acerca de ellos. Para
obtener más
Información, consulte Section 18.9.25, "How to Browse Audit Rules, Code Assists, and
Metrics."

Para la auditoría de código Java:


1. Crear un Perfil de auditoría que especifica las normas, código asiste, y las métricas
utilizadas para
Analizar programas Java. En un Perfil de auditoría, las normas y parámetros pueden ser
Habilitado y configurado mediante la configuración de sus propiedades. Cuando un código
construir ¿
No cumple una regla, una infracción de la regla es reportada.
2. Ejecute el informe de auditoría.
■ Desde el menú principal, elija Generar Auditoría.... Para obtener más información,
consulte
Section 18.9.6, "How to Run Audit to Generate an Audit Report."
■ También puede auditar código Java desde la línea de comandos invocando
ojaudit.exe
Que JDeveloper está incluido en su instalación. Para obtener más información,
consulte
Section 18.9.5, "Auditing Java Code from the Command Line."

Programación en Java 18-59


Optimizar el rendimiento de la aplicación

3. Inspeccione el informe de auditoría completados por infracción de la regla. Para obtener más
información, consulte
Section 18.9.15, "How to Inspect an Audit Report Violation or Measurement."
Un informe de auditoría muestra las violaciones de las reglas y las mediciones
organizadas como un árbol. Un
La fila del árbol corresponde a una construcción o una violación, e incluye cualquier
Los valores medidos por el constructo teórico o violación. Un constructo es un método,
Clase, archivo, proyecto o área de trabajo.
4. Corregir una violación de reglas de auditoría manualmente mediante la modificación de

la fuente, o para algunas reglas, por


Seleccionar una solución automatizada. Para obtener más información,
consulte Section 18.9.16, "How to Fix
an Audit Rule Violation.".
5. Si desea ejecutar la auditoría de nuevo, puede modificar un perfil de auditoría mediante

la habilitación o
Deshabilitar las reglas, código asiste, y métrica, o cambiando su configuración. Para
Si desea más información, consulte Section 18.9.22, "How to Modify an Audit Profile."
Puede guardar el informe de auditoría terminado como un archivo XML o un formato de texto o
HTML
Archivo. Para obtener más información, consulte Section 18.9.14, "How to Save an Audit Report."
Los formatos son definidos por XSL stylesheet archivos en el directorio
/jdev//audit/stylesheets
Directorio (este directorio no se crea hasta que se ejecute la auditoría). Para crear un formato
personalizado,
Adaptar una copia de uno de los archivos de hoja de estilos predefinidos, y agregarlo al directorio.

18.9.5 La auditoría de código Java desde la línea de comandos.


Puede auditar un trabajo, un proyecto o un archivo de código fuente desde la línea de comandos
Invocando ojaudit.exe, que se incluye en su instalación, en JDeveloper
<jdev_instalación>/jdeveloper/jdev/bin .

Sinopsis
Opción ojaudit... archivo...
Table 18–6 Contiene los parámetros que se pueden utilizar durante la auditoría.

Tabla 18-6 Parámetros de línea de comandos


El parámetro Descripción
Archivo El área de trabajo (.jws), Project (.jpr), o de origen () al archivo .java
Ser auditadas.
- Ruta classpath Establecer la ruta de la clase para los archivos de auditoría, si un proyecto no se está
auditando.
- Código de codificación La codificación de caracteres para el informe. Si ausente, el personaje
Codificación especificada para el proyecto es utilizado (véase la página del
compilador
Del cuadro de diálogo Propiedades del proyecto).
-Deshabilitar regla Deshabilitar la regla en perfil. Proporcionar múltiples valores, repita este
Opción.
-Habilitar regla Activar regla de perfil. Proporcionar múltiples valores, repita este
Opción.
-No gravedad Establecer la gravedad del problema que el auditor considera un fracaso.
-F [ix] Por defecto se aplica correcciones para el código. Esta opción modifica la
fuente
Los archivos.
-H[elp] Imprime la ayuda para el comando de ayuda y sale.
-O[ archivo] utput La ruta de acceso del archivo de salida. Si se omite, la salida se escribe en
La salida estándar.

18-60 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

Tabla 18-6 (Cont.) Parámetros de línea de comandos


El parámetro Descripción
-P[rofile] nombre (Requerido) el perfil que se va a usar. Es uno de los perfiles
Definido en JDeveloper (tal como se establece en la página Perfiles >
Auditoría auditoría
Del cuadro de diálogo Herramientas > Preferencias), o el nombre de la
ruta de un
Perfil de auditoría exportado el archivo.
Caso y espacios en blanco se ignoran cuando se está buscando una
coincidencia
Perfil.
-Profilehelp Imprimir nombres de perfil definido y salir.
-Archivo de proyecto El proyecto contexto de uso para los parámetros que son archivos de
código fuente. Si
Todos los parámetros son proyectos o áreas de trabajo, esta opción
no es
Requerida.
-Q[uiet] Suprime el mensaje de copyright.
- Ruta sourcepath Establecer ruta de origen para los archivos de auditoría, si un proyecto no está
siendo auditada
-S[estilo] archivo La hoja de estilo XSLT para aplicar al informe. El nombre puede
Ser una hoja de estilo definida en JDeveloper, o una ruta en un estilo
Archivo de hoja. Si está ausente, el resultado será un archivo XML.
Caso y espacios en blanco se ignoran cuando se está buscando una
coincidencia
Hoja de estilos predefinidos.
-Stylehelp Imprimir nombres de hoja de estilo definida y salir.
-El texto del título El título que se utilizará para el informe. Si ausente cuando -
untitled no es
Especifica un título predeterminado, se utilizará.
-Untitled Hace que el título sea omitido en el informe.
-V[erbose] Ejecución provoca que todos los mensajes que se muestran.
-Versión Imprime la versión del comando y sale.
-W[orkspace] El área de contexto que se va a utilizar para los parámetros que no son
Los entornos de trabajo. Si no se designa, un workspace workspace
predeterminado
Es sintetizada.
Archivo de área de trabajo Área de trabajo establece el contexto para los archivos de
auditoría.

18.9.6 Cómo ejecutar auditoría para generar un informe de auditoría


Developer permite auditar sus programas Java y generar un informe de auditoría.

Para la auditoría de código Java en JDeveloper:


1. En el Application Navigator, seleccione una o más aplicaciones, proyectos o Java
Los archivos de código fuente. El comando de auditoría también funciona para las
selecciones de otras opiniones, tales
Como editores y la ventana de estructura.
2. Desde el menú principal elija construir la auditoría target.

La auditoría <file, proyecto o aplicación> diálogo aparece.


3. Elija un perfil para su uso en una de las dos formas siguientes:
■ Desde el menú desplegable Perfil elegir un perfil de uso.
■ Haga clic en Editar para crear o modificar un perfil.
4. Haga clic en Ejecutar.

Un informe de auditoría aparece en la ventana de registro, y que comienza la


auditoría. Si desea
Detener la auditoría, haga clic en el icono Detener en la barra de herramientas del registro.

Programación en Java 18-61


Optimizar el rendimiento de la aplicación

18.9.7 Cómo auditar Serializable campos que no tienen el serialVersionUID


Se marca un objeto serializable por aplicación del paquete java.io.Serializable
Interfaz, lo que significa que el objeto puede ser aplanadas en bytes y posteriormente
Inflado en el futuro.
Hay un identificador denominado serialVersionUID que permite el control de versiones.
Puede ejecutar una auditoría que las banderas de todas las clases que implementan
java.io.Serializable pero no
Tampoco tienen el serialVersionUID.

Para establecer las reglas de auditoría


■ Desde el menú principal, seleccione Herramientas y luego Preferencias y, a continuación, haga
AuditoríaPerfiles.

18.9.8 Cómo auditar Unserializable campos


Se marca un objeto serializable implementando la interfaz java.io.Serializable,
Lo que significa que el objeto puede ser aplanadas en bytes y posteriormente se infla en
El futuro.
Para desactivar la serialización en un campo de un objeto, el campo Etiqueta de la clase del objeto
Con la palabra clave transient de Java. Si una clase está marcada como serializable, pero
contiene
Unserializable campos que no están marcados como transient, entonces la clase no es serializable.
Puede ejecutar una auditoría para detectar estos campos unserializable.

Para establecer las normas de auditoría:


■ Desde el menú principal, seleccione Herramientas y luego Preferencias y, a continuación, haga
Auditoría Perfiles.

18.9.9 Visualización de un informe de auditoría


Los informes de auditoría se muestran como pestañas de la ventana de registro. Utilice el
informe de auditoría
Investigar y corregir las violaciones de las reglas y las mediciones de umbral.

18.9.10 refrescante de un informe de auditoría


Utilice Actualizar para ejecutar una auditoría utilizando el mismo perfil. Puede que desee realizar
un
Actualizar después de haber realizado cambios y correcciones en su código.

Para actualizar un informe de auditoría:


■ Haga clic en la ventana de registro en la barra de herramientas, o haga clic con el botón
derecho del ratón y seleccione Actualizar.
El cuadro de diálogo Exportar los resultados de la auditoría está desactivada, y comenzará una
nueva auditoría. Si desea
Detener la auditoría, haga clic en la barra de herramientas del Registro.

18.9.11 Organizar columnas del informe de auditoría


Puede reorganizar las columnas del informe de auditoría a seguir su organización preferida.

Para organizar las columnas del informe de auditoría:


■ Arrastre los encabezados de columna hacia la izquierda o hacia la derecha a la posición que
prefiera.

18.9.12 Cómo organizar las filas del informe de auditoría


Informe de auditoría filas son las violaciones de las reglas o mediciones, o grupos de
violaciones y
Las mediciones. El informe está organizado como un árbol. Una fila del árbol corresponde a
Una construcción o una violación, e incluye los valores medidos para la construcción o

18-62 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

Teóricamente una violación. Un constructo es un método, clase, archivo, directorio del paquete,
proyecto o
Área de trabajo.
Puede elegir los elementos que se muestran en el informe.

Para organizar las filas del informe de auditoría:


1. Haga clic en el grupo por su icono en la barra de herramientas de la venta na de
registro.
El Grupo de diálogo se abre.
2. Seleccione los elementos que desea ver.

3. Haga clic en Aceptar.

Para ordenar un informe de mediciones:


■ Haga clic en el encabezado de una columna para ordenar las filas por esa
columna. Para invertir el orden, haga clic en
De nuevo.

18.9.13 Cómo filtrar las filas del informe de auditoría


Puede utilizar un patrón de nombre de clase de filtro para ocultar las violaciones y las
mediciones en las clases
Que no coincidan con el filtro.
Un filtro es una secuencia de patrones separados por comas, puntos y
comas o espacios. Un
Patrón puede contener los siguientes caracteres especiales:
■ * Coincide con cualquier número de caracteres
■ ? Coincide con cualquier carácter individual
■ ! Al comienzo de un patrón denota un patrón de exclusión
El conjunto de clases visible se determina teniendo en cuenta los patrones de orden. Un
No patrón de exclusión agrega todas las clases que coincidan con el patrón para el conjunto;
una exclusión
Patrón elimina todas las clases que coincidan con el patrón del juego. Los patrones son
coincidentes
Contra classnames.

Informe de auditoría para filtrar las filas:


1. En el paquete de registro de auditoría de verificación de la ventana, escriba una secuencia de
patrones que se
Se aplican a todos, pero el último elemento completamente cualificado los nombres
de clase. Puede dejar este
Casilla vacía si desea especificar un filtro de archivos.
2. En el cuadro Archivo, escriba una secuencia de patrones que se aplicarán sólo al último

elemento
Completamente Cualificado los nombres de clase. Puede dejar este cuadro en blanco si se
especifica un
Filtro de paquetes.
3. Haga clic en Aplicar.

El informe será mostrado nuevamente para mostrar sólo las filas seleccionadas.
Haga clic en Borrar para borrar el texto del paquete y las cajas de archivos.
18.9.14 Cómo guardar un informe de auditoría
Puede guardar un informe de auditoría como un archivo XML o como un archivo con formato
de texto o HTML.
Los formatos son definidos por los archivos XSL stylesheet en <jdev_install>/ jdev/<
Sistema>/ auditoría/ directorio stylesheets (este directorio no se crea hasta que la
auditoría es
Ejecutar). Para crear un formato personalizado, adaptar una copia de uno de los archivos
de hoja de estilos predefinidos,
Y agregarlo al directorio.

Programación en Java 18-63


Optimizar el rendimiento de la aplicación

Para guardar un informe de auditoría:


■ Haga clic en la ventana de registro en la barra de herramientas, o haga clic con el botón
derecho del ratón y seleccione Exportar.
Los resultados de la auditoría se abre el cuadro de diálogo Exportar. Elija un título, formato y
destino para
El informe y haga clic en Aceptar.

18.9.15 Cómo inspeccionar un informe de auditoría violación o medición


JDeveloper genera un informe de todas las violaciones de las reglas de auditoría.

Para inspeccionar una violación de reglas de auditoría:


1. En el informe de auditoría, seleccione el constructo que desea ver.
2. Haga clic con el botón derecho del ratón y elija Ir a código fuente, o haga doble clic en la

construcción.
Un editor para el archivo de código fuente se abre con el cursor posicionado en el
lugar del
Infracción de la regla o el elemento Code medido
3. Haga clic con el botón derecho del ratón sobre una violación o anomalía, y seleccione Acerca

de para conocer más acerca de la


Regla que ha sido violado.

18.9.16 Cómo corregir una violación de reglas de auditoría


Usted puede arreglar una violación de reglas de auditoría manualmente mediante la modificación de
la fuente, o para algunas reglas,
Seleccionando una solución automatizada.

Para corregir manualmente una violación de reglas de auditoría:


1. En el informe de auditoría, seleccione la regla violación (un nodo hoja en el árbol de
construcciones).
2. Haga clic con el botón derecho del ratón y elija Ir a código fuente.

Un editor para el archivo de código fuente se abre con el cursor posicionado en el


lugar del
Infracción de la regla.
3. Editar el código para corregir la causa de la violación.

Para aplicar una solución automatizada para una violación de reglas de auditoría:
1. En el informe de auditoría, seleccione la regla violación (un nodo hoja en el árbol de
construcciones).
2. Haga clic con el botón derecho del ratón, y elija un aplique <Estado> Fijar un elemento de

menú, si los hubiere.


O
Haga clic en la barra de herramientas de la ventana de registro y elija uno de los aplique
<Estado> menú Fix
Los elementos.

18.9.17 Cómo arreglar un constructo de Violaciones de reglas de auditoría


Puede aplicar soluciones automatizadas para todas las violaciones de las reglas en una construcción.
Fija predeterminada
Se aplicará a cada infracción de la regla en la construcción que tiene una solución
predeterminada
Propiedad con un valor distinto a Ninguno.

Para arreglar un constructo de violaciones de reglas de auditoría:


1. En el informe de auditoría, seleccione el constructo (un nodo contenedor en los constructos
de árbol.
2. Puede aplicar correcciones predeterminada en una de las dos formas siguientes:
■ Haga clic con el botón derecho del ratón y elija Aplicar correcciones predeterminado.
■ Haga clic en la barra de herramientas de la ventana de registro y elija Aplicar valores
predeterminados.

18-64 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

18.9.18 Cómo ocultar las violaciones de reglas de auditoría


Puede suprimir la visualización de todas las violaciones a las reglas de un tipo determinado en
la auditoría.
Informe. No es posible suprimir las violaciones de las reglas individuales.

Para ocultar las violaciones de las reglas de auditoría:


1. En el informe de auditoría, seleccione una infracción de la regla (un nodo hoja en
el árbol de construcciones).
2. Haga clic con el botón derecho del ratón y seleccione Ocultar <Estado> violaciones.

Todas las violaciones de <Estado> se quitan del informe de auditoría. El eliminado


Las reglas no se computen en su padre resúmenes del constructo. Son construcciones
vacías
Quitar si Mostrar más umbral sólo está habilitado. Si no es así, las violaciones son
Retirado.

Para restaurar oculta violaciones de reglas de auditoría:


1. En el informe de auditoría, haga clic con el botón derecho del ratón para abrir el
menú contextual.
2. Elija Mostrar u ocultar las violaciones.

Todas las violaciones de las reglas previamente ocultas se restauran en el


informe de auditoría.

18.9.19 Cómo ocultar las mediciones del informe de auditoría


Visualización de informes de métricas de mediciones para las construcciones en el análisis de
código. Puede
Enfocar el informe sobre mediciones de umbral, ocultando las demás. El umbral
Es una propiedad configurable de métricas.

Para mostrar sólo a través de mediciones de umbral:


En la ventana de registro en la barra de herramientas, haga clic en el icono sobre el
umbral. Haga clic en Nuevo para mostrar todos
Las mediciones.
Quita las mediciones no se computen en su padre resúmenes del constructo. Vacío
Las construcciones se eliminan si Mostrar más umbral sólo está habilitado. Si no es así, el
Las violaciones son removidos.

18.9.20 Administrar perfiles de auditoría


Un perfil de auditoría define el enfoque de la auditoría mediante la especificación
de las normas, el código asiste, y
La métrica que se utiliza para analizar el código Java. Mientras varios perfiles predefinidos,
Puede crear otros. Puede modificar un perfil de auditoría mediante la habilitación o
deshabilitación de las reglas,
Asiste, y las métricas de código, o cambiando su configuración.
Algunos perfiles de auditoría se utiliza de forma predeterminada en algunos procesos y
JDeveloper
Características.
■ El Código Ayudar a perfil es utilizado por el Editor de código fuente, la ventana de
estado, aplicación
Descripción y lista de archivos.
■ La auditoría durante la compilación de perfil se utiliza al final de una compilación de
auditoría cuando
Si bien la compilación está seleccionado en la página de auditoría del diálogo de
preferencias.
■ Las normas de auditoría inicial es el perfil predeterminado para el comando de
auditoría. Sin embargo,
Esto no es permanente porque el diálogo Auditoría recuerda cualquier perfil fue
Últimos seleccionados.

Programación en Java 18 - 65
Optimizar el rendimiento de la aplicación

18.9.21 Cómo crear un perfil de auditoría


JDeveloper permite especificar las normas, código asiste, y las métricas utilizadas para analizar
Los programas Java.

Para crear un perfil de auditoría:


1. Desde el menú principal, seleccione Herramientas y luego Preferencias.
Se abrirá el cuadro de diálogo Preferencias.
2. Elija la auditoría - Página de perfiles.

3. Perfil desde el menú desplegable, seleccione el perfil que desea copiar.

4. Seleccione las reglas, asistencias, y métricas para activar el nuevo perfil. Para obtener más
Información, consulte Section 18.9.26, "How to Activate and Deactivate Components of
an Audit Profile."
5. Configurar las reglas seleccionadas, asistencias, y métrica, si lo desea. Para obtener más

información,
Ver Section 18.9.27, "How to Set Property Values for an Audit Test."
6. Haga clic en Guardar como.

7. Introduzca un nombre para el nuevo perfil y haga clic en Guardar.

Nota: Los nombres no son case o espacio sensible, aunque el caso y el espacio
Se conservan. Si el nuevo nombre difiere sólo en caso o espacio de una
Nombre existente, aparece un mensaje de advertencia para informarle de ello.

El nombre del nuevo perfil se muestra en la en la auditoría de la página Preferencias de

perfiles
Cuadro de perfil.
8. Haga clic en Aceptar.

18.9.22 Cómo modificar un Perfil de auditoría


JDeveloper permite modificar perfiles de auditoría se creó para analizar programas Java.

Para modificar un perfil de auditoría:


1. Desde el menú principal, elija Herramientas > Preferencias.
Se abrirá el cuadro de diálogo Preferencias.
2. Elija la auditoría - Página de perfiles.

3. Perfil desde el menú desplegable, seleccione el perfil que desea modificar.

4. Seleccione las reglas, asistencias, y métricas para activar el nuevo perfil. Para obtener más
Información, consulte Section 18.9.26, "How to Activate and Deactivate Components of
an Audit Profile."
5. Configurar las reglas seleccionadas, asistencias, y métrica, si lo desea. Para obtener más

información,
Ver Section 18.9.27, "How to Set Property Values for an Audit Test."
6. Haga clic en Aceptar.

18.9.23 Cómo eliminar un perfil de auditoría

Para eliminar un perfil de auditoría existentes:


1. Desde el menú principal, elija Herramientas >Preferencias.

18-66 Guía del usuario para Oracle JDeveloper


Optimizar el rendimiento de la aplicación

Se abrirá el cuadro de diálogo Preferencias.


2. Elija la auditoría - Página de perfiles.

3. Perfil desde el menú desplegable, seleccione un perfil para ser eliminado. (No se puede
Eliminar los perfiles predefinidos).
4. Haga clic en Eliminar.

El nombre del perfil será eliminado del cuadro de perfil.


5. Haga clic en Aceptar.

18.9.24 Cómo importar o exportar un perfil de auditoría


Puede importar o exportar perfiles de auditoría. Esto le permitirá compartir perfiles, para
Ejemplo, o para mantener una marcada en el perfil utilizado por ojaudit y una compilación
nocturna. Auditoría
Los perfiles son importados o exportados como archivos XML.

Para importar o exportar un perfil de auditoría:


1. En el menú Herramientas, seleccione Preferencias para abrir el cuadro de diálogo de
preferencias.
2. En el cuadro de diálogo de preferencias, abra la auditoría - Página de perfiles

3. Haga clic en Importar o Exportar, y seleccione el perfil que desea importar o exportar.

18.9.25 Cómo examinar las normas de auditoría, asiste, y las métricas de código
Examinar las pruebas de auditoría para obtener más información acerca de ellos.

Para examinar las normas de auditoría:


1. Desde el menú principal, elija Herramientas >Preferencias.
Se abrirá el cuadro de diálogo Preferencias.
2. Elija la auditoría - Página de perfiles.

3. Seleccione una de las reglas, Ayuda, y métricas de código de fichas.

4. En la lista árbol en el panel izquierdo, seleccione una categoría.

Una descripción de la categoría se mostrarán en el cuadro de


explicación.
5. Expanda la categoría y seleccione una regla, código ayudar, o métrico, en función de

la ficha
Seleccionado.
Una descripción del elemento seleccionado se mostrará en el cuadro
de explicación y su
Propiedades y configuración se mostrará en el panel derecho
6. Haga clic en Aceptar para cerrar el cuadro de diálogo.

18.9.26 Cómo activar y desactivar componentes de un Perfil de auditoría


Activar y desactivar reglas, código asiste, y métricas para un perfil de la auditoría
Perfiles de auditoría página preferencias al crear o modificar el perfil.

Para activar o desactivar una regla, código ayudar, o Métrico:


1. Seleccione el proyecto en la aplicación Navigator
2. Seleccione Herramientas y luego Preferencias - Auditoría - Página de perfiles.

3. En el cuadro de diálogo, seleccione una de las reglas, Código asiste, y métricas

de fichas.

Programación en Java 18-67


Un proyecto de perfiles

4. En el árbol de la lista en el panel izquierdo, expanda la categoría.


5. Haga clic en la casilla de verificación para una prueba para activarlo o desactivarlo.

6. Opcionalmente, configurar la regla, código ayudar, o Métrico. Para obtener más información,

consulte
Section 18.9.27, "How to Set Property Values for an Audit Test."
7. Haga clic en Aceptar cuando haya terminado.

Para activar o desactivar una categoría:


En la lista de la izquierda, haga clic en la casilla de verificación para una categoría de regla
para activar o desactivar todos los
Los elementos de una categoría. Al hacer clic en cualquier elemento de la categoría mientras presiona la
tecla Ctrl
Consigue el mismo resultado.

18.9.27 Cómo establecer valores de propiedad para una prueba de auditoría

Para establecer una norma de auditoría los valores de propiedad:


1. Seleccione el proyecto en el navegador de aplicaciones.
2. Seleccione Herramientas y luego Preferencias - Auditoría - Página de perfiles.

3. En el cuadro de diálogo, seleccione una de las reglas, Ayuda, y métricas de código de fichas.

4. En el árbol de la lista en el panel izquierdo, expanda una categoría y seleccione un

elemento.
5. La prueba de la propiedad de los nombres y valores actuales se muestran en el panel derecho.

6. Cambiar los valores de propiedad eligiendo o introduciendo valores alternativos.

7. Haga clic en Aceptar cuando haya terminado.

18.10 perfilando un proyecto


El profiler recopila estadísticas sobre su programa que le permiten diagnosticar más fácilmente
Los problemas de rendimiento, tales como cuellos de botella mediante la identificación de métodos
que consume más tiempo,
El método que se llama la mayoría de la memoria, cómo se utiliza y qué tipo de objetos se
Que se está creando.
El analizador controla y registra un programa en ejecución el uso del procesador y la memoria
Los recursos. Recopila las estadísticas que le permite diagnosticar más fácilmente la
Los problemas de rendimiento y corregir las ineficiencias en el código.
JDeveloper ofrece dos tipos de analizadores: la CPU y la memoria del Profiler Profiler
Por tanto locales como remotos de perfiles.
■ La CPU Profiler es utilizado para analizar el impacto de la aplicación en el procesador.
Utilice el Analizador de CPU para probar las funciones de la aplicación, tales como inicio y
Inicialización, repintado, y compilar.
■ La memoria analizador proporciona una representación visual y análisis estadístico de cómo
su
Programa utiliza memoria en el montón de Java.

18.10.1 Comprensión Memory Profiler Opiniones


La creación de perfiles de memoria muestra qué partes de la aplicación que está utilizando más
memoria.
También le permite investigar qué objetos son responsables de la mayoría de
La memoria. La memoria Profiler muestra los datos en tres vistas: Clases y Allocators para
Nuevos objetos/informes de recolección de basura, y las referencias para ver instantáneas de
montón.
Las clases vista muestra nuevos objetos/recolección de basura datos organizados por clase Java.
Se utiliza para descubrir las clases que asignó la mayor parte de la memoria.

18-68 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

La vista muestra la threadgroups Allocators, roscas y métodos que creó el


La mayoría de la memoria.
Las referencias vista contiene una presentación jerárquica de todas clases, objetos y
Las referencias a objetos en el montón de aplicación en el momento de la instantánea.
Perfiladoras se invocan desde el menú Ejecutar. Puede utilizar el analizador de páginas de
la edición
Ejecutar el diálogo de configuración para especificar el modo de perfil desea analizar
El código.
En el cuadro de diálogo, también puede especificar cómo desea un perfil de sus
programas, de forma local o
De forma remota. Para perfilar su programa localmente, establezca los parámetros de conexión
del Analizador, y
Perfil su programa de forma remota, establecer parámetros de perfiles remotos en la página
Profiler
Editar configuración del cuadro de diálogo Ejecutar.

18.10.2 una aplicación de perfiles


Puede generar un perfil de la aplicación de forma local o remota. En perfiles locales, su perfil
Aplicación dentro de JDeveloper eligiendo uno de los CPU Profile o perfil de memoria
Los comandos de menú Ejecutar o fuera JDeveloper eligiendo Conectar Profiler desde
En el menú Ejecutar. En remote perfiles, ejecutar una sesión de generación de perfiles de forma
remota. Perfil
Su aplicación externa a JDeveloper, con o sin parámetros de profiler. El
JVM puede ser la aplicación en el mismo host o en una red.

18.10.3 Configuración Profilers


Puede configurar las opciones de la CPU y la memoria de perfiladoras haciendo clic con el
botón secundario en un
Proyecto y haga clic en Propiedades del proyecto. Haga clic
en Run/debug/Perfil > Editar > Herramienta
Ajustes > Profiler para definir las opciones.

18.10.4 comprensión CPU Profiling


Se utiliza la CPU Profiler para recopilar estadísticas sobre el rendimiento de su aplicación.
La CPU Profiler puede ser utilizado para probar las funciones de la aplicación, tales como
inicio,
Inicialización, repintado, y compilar.
La CPU Profiler recopila los datos de muestra de la aplicación que se ejecuta en intervalos
regulares
Basado en el intervalo de la muestra, la cual se puede cambiar usando la CPU Profiler
Página de opciones. Para obtener más información,
consulte Section 18.10.13, "How to Set Options for the
CPU Profiler."
El analizador proporciona dos opciones de perfilado de CPU: muestra el tiempo de CPU y
contar
Las llamadas a métodos. Puede utilizar muestra el tiempo de CPU para determinar las zonas de
su código
Que representan la más (o menos) tiempo de ejecución. Método de recuento de
llamadas
Mostrar cuáles son los métodos de llamada y el número de veces que se llaman.
Nota: El perfil no le permite tiempo de muestreo y conteo
Método llama al mismo tiempo. Método de recuento de llamadas le costará un
Alto nivel de tiempo de CPU, y también distorsiona los resultados del analizador.

Método de recuento de llamadas es la forma más cara de perfiles, tanto en términos de

CPU
La sobrecarga y el uso de la memoria, ya que el proceso usa la CPU extra para cada método
La entrada y la salida y recopila datos para cada método que se llama durante el caso de
uso.
La CPU Profiler ventana muestra los datos que devuelve el analizador. Proporciona varios
Opciones para ver, ordenar y organizar los resultados del analizador, así como para empezar,
etiqueta, comparar
Casos de uso final y Profiler.

Programación en Java 18-69


Un proyecto de perfiles

18.10.5 comprender la creación de perfiles de memoria


El analizador tiene dos herramientas para la creación de perfiles de memoria: NUEVOS
OBJETOS/recolección de basura
Estadística y referencia de instantáneas (también conocido como volcados de pila). Utilice la nueva
Objetos/informes de recolección de basura para averiguar qué partes de una aplicación está
utilizando
La mayor parte de la memoria. Use la referencia de instantáneas para averiguar qué objetos son
responsables de
La celebración de la mayor parte de la memoria. Las opciones le permiten usar ambas al mismo
tiempo, pero
Generalmente usted no necesitaría una instantánea a menos que han detectado una fuga de
memoria, y
Usted no necesita otro nuevos objetos/G.C. informe si se están investigando una
Fuga en particular.
La memoria Profiler ventana muestra los datos que devuelve el analizador. Proporciona
Varias opciones para ver, filtrar, ordenar y organizar los resultados del analizador, así como para
empezar,
Etiqueta, comparar, y casos de uso final Profiler

18.10.6 Descripción Rendimiento Profiler


El Profiler consume recursos de CPU y memoria durante su uso. La sobrecarga
Varía en función del modo de generación de perfiles en la operación. En general, el muestreo de
la CPU (con
20 ms. intervalo de muestreo) y snapshots de referencia son los más rápidos y utilizan menos
La memoria.
Tanto el método de CPU y memoria de recuento de llamadas nuevos objetos/recolección de basura
son perfiles
Mucho más costosas en términos de CPU y memoria en tanto el Profiler y profilee.
Esto es debido a que cada llamada al método esencialmente interceptar y grabar por método,
Por la pila de llamadas, por los datos del subproceso.
En el caso de referencia de instantáneas, sólo tarda unos segundos para que el agente del
analizador
Escribir un archivo snapshot. Todos los demás procesamiento se realiza fuera de la aplicación,
de modo que la memoria
Instantáneas tienen poco efecto sobre el rendimiento de la aplicación.
Table 18–7 Contiene algunas veces el rendimiento real de una aplicación de la referencia.

Tabla 18-7 Los tiempos de análisis de aplicaciones


Tipo de perfil. El tiempo relativo de tiempo (segundos) Notas
No hay perfiles 1.0 720
Las muestras de la CPU 1,025 738 Velocidad de muestreo de 20 ms
Las muestras de la CPU 1.29 930 Velocidad de muestreo de 10 ms

Nuevos objetos de memoria/basura 1.56 1125


Colección
Hacen referencia a la instantánea 1.02 735

Table 18–8 Contiene los números producidos por un corto plazo:

Tabla 18-8 Tiempos de ejecución más cortos,


Tipo de perfil. El tiempo relativo de tiempo (segundos) Notas
No hay perfiles 1.0 30.7
Las muestras de la CPU 1.4 41.8 Velocidad de muestreo de 20 ms
Las muestras de la CPU 1.7 51.2 Velocidad de muestreo de 10 ms
Método de recuento de llamadas 4.6 141,2 Con el método filter
Método de recuento de llamadas 6.6 201.3 Sin filtro

18-70 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

Como el perfil de salida es esencialmente el mismo para ambos el 10 y 20 ms de


muestra.
Intervalos de 20 ms., el intervalo es preferible.
Las dos tablas muestran que mientras que la sobrecarga de perfiles puede variar
drásticamente para
Los diferentes casos de uso de CPU, muestras de referencia y las instantáneas son siempre
menos costoso
Que las otras alternativas.
En JDeveloper, puede un perfil usecase en el predeterminado asignado 512 MB de
memoria, pero
Algunos casos de uso requieren una memoria de 1GB o más de memoria nuevos objetos/G.C.
Creación de perfiles.

18.10.7 Comprensión Profiler Casos de uso.


El objetivo de la elaboración de perfiles es descubrir aquellas partes de una aplicación que
utilice más recursos
Que la deseada, y mejorarlas, a fin de que la optimización de recursos puede lograrse. El
Proceso es encontrar los comandos individuales, transacciones o secuencias de acciones que
son
Se percibe lento, uso excesivo de memoria o pérdida de memoria. Usted entonces investigar
la
Causa, hacer cambios destinados a mejorar el rendimiento y, a continuación, medir
nuevamente para ver
Si los cambios han tenido el efecto deseado.
En Profiler, pedimos un comando como ese, transacción o secuencia de acciones que
un caso de uso.
El analizador está diseñado para permitirle identificar casos de uso significativo y medir
Ellos precisamente. De forma predeterminada, el analizador mide nada hasta que empiece un
caso de uso
Y detiene la medición cuando finalice el caso de uso. Los datos mostrados es siempre
relativa
Para un determinado caso de uso.
La barra de herramientas de la pestaña profiler indica el estado del caso de uso actual y
proporciona
Controles para iniciar y detener los casos de uso y navegar entre ellas.
El caso de uso comenzar icono situado en la esquina superior izquierda de la barra de
herramientas se utiliza para iniciar un nuevo caso de uso.
El icono al lado del Caso de uso final se utiliza para detener un caso de uso. Cuando se inicia
un
Caso de uso, el icono de la barra de herramientas del Caso de uso final está activada y el inicio
de la barra de herramientas de casos de uso
Icono está deshabilitado.
Si guarda un caso de uso activo, el caso de uso se detiene inmediatamente; en el caso
de uso final
Icono de la barra de herramientas está desactivada, y comenzar a usar el icono de la barra de
herramientas CASE está habilitado.
Tanto en el caso de uso de begin y end se deshabilitan los controles cuando:
■ Un caso de uso ha terminado, pero todavía está siendo procesada por
el profiler.
■ La aplicación profilee ha dejado de funcionar.
■ El perfil ya no está conectado.
■ Abrir una sesión guardada.

18.10.8 cómo el perfil de un proyecto en JDeveloper


El analizador controla y registra un programa en ejecución el uso del procesador y la
memoria
Los recursos. Se recopila las estadísticas que permiten diagnosticar problemas de rendimiento
y
Corregir las ineficiencias en el código.

Los pasos para crear perfiles de proyecto son los siguientes:


1. Establecer las opciones de los perfiles de la CPU y de la memoria. Para obtener más información,
consulte
Section 18.10.13, "How to Set Options for the CPU Profiler" Y Section 18.10.15.3,
"How to Set Options for the Memory Profiler."
Por ejemplo, puede especificar si desea que el Analizador de uso de tiempo de CPU de
muestra
Por su aplicación, o contar el número de llamadas a métodos. O puede especificar si
desea que el

Programación en Java 18-71


Un proyecto de perfiles

Profiler para comunicar datos sobre nuevos objetos y recolección de basura, o para
proporcionar un montón
Instantánea.
2. Inicie el Profiler inJDeveloper de CPU o de memoria. Para obtener más información, consulte
Section 18.10.14, "How to Start the CPU Profiler."
También puede ejecutar una sesión de generación de perfiles de forma remota. Cuando se inicia
un perfil remoto
Período de sesiones, el Profiler se conecta y perfiles de aplicaciones remotas como si fueran
locales.
Para obtener más información, consulte Section 18.10.16, "Profiling Remotely."
3. Aislar los casos de uso significativo en su programa y medir de manera precisa. Para
Si desea más información, consulte Section 18.10.7, "Understanding Profiler Use Cases."
El caso de uso comenzar el control en la parte superior izquierda de la barra de herramientas se
utiliza para iniciar un nuevo uso
Caso. El caso de uso final al lado de control () se utiliza para detener un caso de uso.
Cuando se inicia un caso de uso, elcaso de uso nd e icono de la barra de herramientas está
activada y el Begin
Caso de uso de los iconos de la barra de herramientas está desactivada.
4. Inspeccionar los datos que devuelve el analizador. El profiler windows proporcionan opciones

para
Ver, filtrar, ordenar y organizar los resultados del analizador, así como para empezar,
etiqueta, comparar
Casos de uso final y Profiler.
5. También puede guardar los resultados de la sesión de generación de perfiles para su posterior

análisis.
Después de haber finalizado su sesión de generación de perfiles, puede utilizar sus estadísticas a
más
Fácil de diagnosticar los problemas de rendimiento y corregir las ineficiencias en el código.

18.10.9 perfilado de CPU


La CPU Profiler tabula y muestra datos estadísticos sobre el rendimiento de su
Aplicación, ya sea en términos de tiempo de uso, o en métodos llamados.
La CPU Profiler le permite perfilar su código en una de dos maneras:
■ Muestra el tiempo de CPU para identificar qué partes de una aplicación que está tomando la
mayoría
Tiempo.
■ Métodos de recuento de llamadas para confirmar que los métodos están siendo llamados y
cuántos
Veces que se llaman.

18.10.10 comprensión CPU Profiler Opiniones


Perfilado de CPU tabula el tiempo de procesamiento empleado por cada método e n su
aplicación
Mediante la visualización de llamadas de la plataforma Java, y el recuento de las llamadas a
métodos. La CPU Profiler
Muestra los datos en dos vistas: Hotspots y pilas de llamada.
Los hotspots ver enumera todos los métodos de la plataforma Java y todos los métodos que
llaman, ordenados por
Uso de tiempo de CPU en el perfil del modo de muestreo de tiempo de funcionamiento. También
muestra el
La cantidad acumulada de tiempo de CPU empleado en cada método. Durante la llamada al
método count
La operación, los Hotspots vista muestra todos los métodos y el número de veces que
Fueron llamados.
Ver las pilas de llamadas, durante el tiempo de muestreo del Analizador de la CPU, el modo de
operación, permite
Puede ver la plataforma Java métodos llamados en su jerarquía de llamada. En el método de
recuento
Modo llamada, las pilas de llamadas ver listas la plataforma Java métodos llamados, ordenados
por hilo
Grupo.

: 18-72 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

18.10.11 comprender los resultados de muestreo de tiempo de CPU


La CPU Profiler, cuando se utiliza en modo de muestreo de tiempo, analiza su programa y
Los resultados de los informes sobre el uso de tiempo de CPU. Los datos se muestran en dos
vistas: Hotspots y
Las pilas de llamada.
Los hotspots ver listas de todos los métodos ordenados por el valor del tiempo invertido en
ellas. El
La jerarquía debajo de cada método muestra las llamadas del método y, a su vez, su
Los comunicantes, y así sucesivamente.
Los métodos superior en los Hotspots son a menudo sólo ruido; el camino que el evento
Dispatcher lleva a realizar una tarea. Puede utilizar la pila de filtro para limitar la vista
Sólo los métodos pertinentes. Alternativamente, puede usar el cuadro de diálogo Editar el
filtro para
Introduzca una expresión de búsqueda o filtro que especifique los métodos que se muestran.
Ver las pilas de llamadas le permite ver los métodos llamados en su jerarquía de llamada. Es
decir,
Cada nivel es llamado por el nivel inmediatamente superior. Tabla 18-9 contiene los datos
Las columnas que se muestran en la vista de las pilas de llamadas.

Tabla 18-9 Columnas de datos del analizador


Columna Descripción
Nombre Muestra el nombre completo de los nombres de método.
% De CPU Muestra el porcentaje de la columna de datos seleccionada
actualmente.
Por ejemplo, si está seleccionada la columna CPU, indicado por un
Triángulo hacia abajo, esta columna se denomina CPU%. Si
La CPU está seleccionada la columna superficial, el nombre de la
columna sería
CPU% superficial.
CPU (ms) Muestra la cantidad acumulada de tiempo de CPU empleado en
segundos
En cada método y todos los métodos que llama.
CPU superficial (ms) Muestra la cantidad de tiempo de CPU empleado en cada método
Individualmente.
Bloqueado (ms) Muestra el acumulado bloqueado el tiempo invertido en cada
método y
Todo el método que llama. La columna está disponible si el recoger
Bloqueada y el tiempo de espera está seleccionada la casilla de verificación
Ejecutar en el menú Editar.
Cuadro de diálogo de configuración.
Bloqueado superficial (ms) Muestra el bloqueo de tiempo empleado en cada método. La
Columna es
Disponible si el recoger bloqueada y el tiempo de espera es checkbox
Seleccionado en el cuadro de diálogo Editar configuración de ejecución.
Espere (ms) Muestra el tiempo de espera acumulado de cada método y todos los
El método que se llama. La columna está disponible si el recoger bloqueado
Y el tiempo de espera está seleccionada la casilla de verificación Ejecutar en
el menú Editar.
Cuadro de diálogo de configuración.
Espere superficial (ms) Muestra el tiempo de espera de cada método. La columna está
disponible
Si el tiempo de espera recopilar bloqueado y casilla de verificación está
seleccionada en el
Editar Ejecutar el cuadro de diálogo de configuración.
Transcurrido (ms) Muestra el tiempo transcurrido acumulado de cada método y todos
los
El método que se llama. La columna está disponible si el recoger
transcurrido
Tiempo casilla está seleccionada en el cuadro de diálogo Editar
configuración de ejecución.
Transcurrido superficial (ms) Muestra el tiempo transcurrido de cada método. La Columna es
Disponible si el recoger el tiempo transcurrido en la casilla de verificación
está seleccionada
Editar Ejecutar el cuadro de diálogo de configuración.
I/O (ms) Muestra el tiempo de entrada/salida acumulativo de cada método y
Todo el método que llama. La columna está disponible si el recoger IO
Tiempo casilla está seleccionada en el cuadro de diálogo Editar
configuración de ejecución.

Programación en Java 18-73


Un proyecto de perfiles

Tabla 18-9 (Cont.) Profiler columnas de datos


Columna Descripción
I/O superficial (ms) Muestra el tiempo de entrada/salida de cada método. La Columna es
Disponible si el tiempo recopilar IO está seleccionada en el menú Editar.
Ejecutar el cuadro de diálogo de configuración.

Nota: Si aparece más de un método de nivel superior por cada subproceso de la


Pilas view, la profundidad de la pila es demasiado bajo para su aplicación. A
Aumentar la profundidad de la pila, es necesario actualizar la CPU opciones Profiler
En la página Editar Ejecutar el cuadro de diálogo de configuración.

Método de comprensión 18.10.12 Resultados de recuentos de llamadas


La CPU Profiler, cuando se utiliza para contar las llamadas al método, confirma que los métodos
están siendo
Llama y le indica cómo muchas veces. Conteo de llamadas de método es útil cuando se desea
Saber por qué un método determinado está tomando mucho tiempo de CPU. Puede utilizar el
perfil del
Llamada al método de recuento de datos para analizar la llamada a ese método, y editar su código
Adecuadas para reducir el número

18.10.13 Cómo configurar las opciones de la CPU Profiler


Puede especificar si desea que el perfil de la muestra por su uso de tiempo de CPU
Aplicación, o contar el número de llamadas a métodos.

Para establecer opciones de analizador de CPU:


1. En el navegador, haga doble clic en el proyecto que desea abrir el proyecto de perfil
Cuadro de diálogo de propiedades.
2. Haga clic en Run/debug/Profiler.

3. Haga clic en Editar.

4. En el cuadro de diálogo Editar configuración de ejecución, establezca las opciones


deseadas en el útil
Configuración - Profiler - Página de CPU.
Puede especificar si desea que el perfil que muestra el tiempo de CPU o contar las llamadas a
métodos.
5. Cuando haya terminado, haga clic en Aceptar.

18.10.14 Cómo iniciar la CPU Profiler


Iniciar una sesión de generación de perfiles de CPU se ejecutará automáticamente el programa. Una
vez que la CPU
Profiler ventana está abierta, puede comenzar un caso de uso para el perfil de su aplicación.

Para iniciar el analizador de CPU:


1. En Navigator, seleccione un nodo runnable, por ejemplo, Application1.java.
2. Desde el menú principal, elija Ejecutar > CPU Profile project.

Si no hay ningún objetivo de ejecución predeterminado especificado en la página


Configuración de lanzamiento de la edición ejecutar
Diálogo de configuración ( Menú > Aplicaciones > Propiedades del proyecto
Ejecutar/Depurar/profile), elija Ejecutar se abre el cuadro de diálogo Destino
predeterminado. Utilice este cuadro de diálogo
Para especificar el destino de ejecución predeterminado
3. Haga clic en el icono iniciar el Caso de uso de perfiles para comenzar un caso de uso.

18-74 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

Nota: Si desea que el perfil de su aplicación inmediatamente cuando el


Profiler es lanzado, seleccione Comenzar el caso de uso de la aplicación
En la casilla de verificación Inicio Profiler Página de Editar la configuración de ejecución
El diálogo.

18.10.15 La creación de perfiles de memoria


La memoria Profiler le permite averiguar cómo el programa está utilizando Java
Montón. Usted puede encontrar ineficiente uso del montón y cualquier sospecha de
comportamiento de la memoria.
El analizador tiene dos herramientas para la creación de perfiles de memoria: NUEVOS
OBJETOS/recolección de basura
(En lo sucesivo denominado nuevo/G.C. reporting) y referencia de instantáneas (también
conocido como
Los volcados de pila). Tenga en cuenta los siguientes puntos al utilizar estas herramientas:
■ Utilice la nueva/G.C. informes para averiguar qué partes de una aplicación está
utilizando el
La mayoría de la memoria.
■ Use la referencia de instantáneas para averiguar qué objetos son responsables para la
celebración de la
La mayoría de la memoria.
La creación de perfiles de memoria y el método de recuentos de llamadas, ralentiza el
sistema y la aplicación
Considerablemente. Observe los siguientes puntos de información antes de comenzar a crear
el perfil de una
Aplicación:
■ Mantenga sus casos de uso específicos y corto.
■ Espere a que se inicie la aplicación, antes de iniciar el caso de uso.
■ Al generar perfiles de aplicaciones grandes, JDeveloper requiere algo más que el valor
predeterminado
Tamaño de memoria. Si sus aplicaciones se ralentiza, desplácese
hasta <jdev_instalación>/bin/jdev
Directorio e intente iniciar JDeveloper desde la línea de comandos con la siguiente
Comando:
Jdev -J-Xmx1024m
Este comando asigna el 1 GB de memoria virtual para JDeveloper, reemplazando la
Configuración predeterminada de memoria de 512 MB.
■ U n a a p l i c a c i ó n w e b d e s p l e g a d a e n O r a c l e We b L o g i c S e r v e r e s
considerado como un gran
Aplicación. Por lo tanto, lanzar JDeveloper con la opción -j-Xmx1024M parámetro a
Aumentar el tamaño de la memoria antes de iniciar la creación de perfiles.
■ Algunas aplicaciones grandes o casos de uso puede fallar cuando se clasificó en Windows,
intente
Tales aplicaciones de perfiles o casos de uso en Linux. Los sistemas operativos Windows
limitar
La memoria virtual contigua para JVM, pero no existe tal limitación en Linux.

Comprensión 18.10.15.1 Memory Profiler Opiniones


La memoria Profiler muestra los datos en tres vistas: Vista de clases, Allocators vista para
Nuevo/G.C. los informes y las referencias para ver instantáneas de montón.
■ Las clases vista muestra nuevos objetos/datos organizados de recogida de basura de
Java.
Clase. Se utiliza para descubrir las clases que asignó la mayor parte de la memoria.
Puede
Cambiar a esta vista haciendo clic en la pestaña Clases en la parte inferior de la memoria
Profiler.
■ La vista muestra la threadgroups Allocators, hilos, pilas, y métodos que
Creó la mayor cantidad de memoria. Puede cambiar a esta vista haciendo clic en la pestaña
Clases
En la parte inferior del analizador de memoria.
■ Las referencias vista contiene una presentación jerárquica de todas clases, objetos y
Las referencias a objetos en el montón de aplicación en el momento de la instantánea.

Programación en Java 18-75


Un proyecto de perfiles

Comprensión 18.10.15.2 Instantáneas de referencia


Una referencia instantánea es una presentación jerárquica de clases, objetos y
referencias a
Objetos en el montón de aplicación en el momento de la instantánea. Hay dos fundamentales
Tipos de referencias: Referencias de JVM raíces de recogida de basura para objetos, y
Las referencias de un objeto a otro.
La recolección de basura de JVM raíces incluyen referencias desde un subproceso activo,
referencias de
JNI de variables locales y globales, y la JVM referencias internas. Estas son las referencias
Que mantenga los objetos en la memoria; si no hay ninguna ruta desde una raíz GC para un objeto,
es elegible
Para la recolección de basura. La instantánea contiene sólo objetos que son accesibles desde una
O más raíces gc de JVM.
Tenga en cuenta que las referencias estáticas y referencias de cargadores de clases no son la
recolección de basura
Raíces. Un cargador de clases pueden ser recogidos en la basura cuando no existen más referencias a
la
Cargador de clase, las clases cargado por el cargador de clases u objetos de estas clases.
Cuando un cargador de clases es basura recopilada, todas las clases que ha cargado también son
basura
Recogidas, así como todos los objetos que sólo son contempladas por la estática de estas referencias
Las clases.
Existen cuatro tipos de referencias de objetos para objetos: normal (fuerte) referencias
Referencias suaves, referencias débiles y pseudo referencias. Cuando usted está buscando
Las pérdidas de memoria, que normalmente sólo se preocupan por referencias fuertes. Puede
alternar
Entre ver sólo referencias fuertes, o todas las referencias.
Viejas y nuevas referencias en diferentes instantáneas se indican utilizando diferentes estilos
de fuente.
Al comparar dos instantáneas de la memoria, los métodos de la instantánea actual mostrar
En negrita. Si existen métodos que también están en la otra instantánea, son
Se muestra en negrita cursiva en la instantánea actual.
Hay varias maneras de comparar instantáneas de referencia. En la Memoria Profiler
Ver referencias, puede elegir, por ejemplo, comparar con seleccionar un uso diferente
Caso (snapshot) del actual. O, si usted tiene dos pestañas abiertas profiler (por
Ejemplo, si ha abierto un perfil guardado de sesiones) Seleccione y compare con otros,
A continuación, elija un caso de uso desde otra sesión.

18.10.15.3 cómo establecer opciones para la memoria Profiler


Puede especificar si desea que el perfil de la muestra por su uso de tiempo de CPU
Aplicación, o contar el número de llamadas a métodos.

Para configurar las opciones del analizador de memoria:


1. En el navegador, haga doble clic en el proyecto que desea Perfil para informar los datos de
nuevo
Objetos y recolección de basura, o para proporcionar una instantánea de montón.
2. Haga clic en Run/debug/Profiler.

3. Haga clic en Editar.

4. En el cuadro de diálogo Editar configuración de ejecución, establezca las opciones

deseadas en el útil
Configuración - Profiler - Página de CPU.
Puede especificar si desea que el profiler para recoger nuevos objetos/recolección de basura
Datos, tomar una instantánea del montón, o ambas cosas.
5. Cuando haya terminado, haga clic en Aceptar.

18.10.15.4 Cómo iniciar una sesión de generación de perfiles de memoria


Iniciar una sesión de generación de perfiles de memoria también se ejecuta automáticamente el
programa. Una vez que la
Ventana Analizador de memoria está abierto, puede comenzar un caso de uso para el perfil de su
aplicación.

18-76 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

Para iniciar el analizador de memoria:


1. En Navigator, seleccione un nodo Runnable.
2. Desde el menú principal, elija Ejecutar > Perfil de memoria de proyecto.

3. Haga clic en el icono Iniciar Caso de uso para iniciar la sesión de generación de perfiles.

18.10.16 perfiles de forma remota


Puede ejecutar una sesión de generación de perfiles de forma remota. Cuando se inicia una
sesión de generación de perfiles, remoto
Se conecta el generador de perfiles y perfiles de aplicaciones remotas como si fueran locales.
Desde
Aún ejecutar Profiler localmente, puede crear perfiles de aplicaciones en otros equipos
siempre
Alcanzable que tienen una dirección IP o nombre DNS.
La principal diferencia entre perfiles locales y remotos es la manera en que comienzas
La sesión de generación de perfiles. Para perfiles locales, JDeveloper inicia automáticamente la
Programa que desea perfil (la profilee) y, a continuación, asigna el Profiler para que
Programa. Para perfiles remotos, debe iniciar manualmente que profilee programa y
Conectar el analizador más tarde. Una vez que el profilee es lanzada y el JDeveloper Profiler
Adjunto, perfiles remotos no es diferente de los perfiles locales. Recuerde que Ud.
Puede utilizar perfiles remotos si o no el proceso profilee se ejecuta en el mismo
La máquina como JDeveloper.

Nota: Si los perfiles de sus aplicaciones, puede iniciar remotamente


Su aplicación externa con o sin parámetros de profiler. Un
Aplicación iniciada con profiler parámetros puede tener JVM puede ser sobre
El mismo host (local) o en una red. Una aplicación se inició sin
Profiler parámetros deben tener JVM en el mismo host, y usted puede
Conectar el analizador más tarde.

Perfiles Perfiles locales y remotos cada uno tiene ventajas sobre el otro. Cuando
Perfil remoto, el Profiler y profilee puede ejecutarse en dos equipos diferentes, de manera que
No compiten por los mismos recursos. Sin embargo, la transferencia de grandes cantidades
de
A través de una red de datos podría hacer profiler rendimiento significativamente más lento.

18.10.17 Comprensión Profiler para soporte de agente de JVMs


A perfil remotamente en JDeveloper, invoque el agente del analizador. El JDeveloper
Profiler agente admite 32 y 64-bit JVMs en Windows y Linux. Puede especificar una JVM
Para un proyecto mediante la edición de la configuración de Ejecución - Página
Configuración de lanzamiento.
Los nombres de los archivos del agente del analizador se basa en la arquitectura soportada
y JVM
Tamaño:
■ Profiler_x32.dll
■ Profiler_x32.so
■ Profiler_x64.dll
■ Profiler_x32.so
Si inicia la profilee desde JDeveloper, el analizador detecta automáticamente el
tamaño
Del JDeveloper JVM.

Programación en Java 18-77


Un proyecto de perfiles

■ En Linux, se debe usar la API para detectar cuál de 32-bit o 64-bit architecture remote
JVM y utilizar agente adecuado. (Esto puede ser generalizada para apoyar otros
Arquitecturas).
■ En Windows, debe utilizar la API para detectar cuál de 32 bits o 64 bits de arquitectura
JVM es remoto y, si no es el mismo que JDev JVM arquitectura, no lo muestran en el
Lista disponible de JVMs para adjuntar
Si conecta localmente y el JDeveloper JVM es de 32 bits, el analizador intenta cargar el
Agente de 32 bits y si eso falla, intenta utilizar el agente de 64 bits. Si la JVM JDeveloper
64-bit, el analizador sólo intenta el agente de 64 bits.

18.10.18 Cómo invocar el agente Profiler


Para el perfil de un programa de forma remota en JDeveloper, debe iniciar el proceso de Java desde el
Línea de comandos. Desde la línea de comandos, también puede invocar el perfil del agente. Una vez
que la
El proceso ha empezado, puede conectar el JDeveloper Profiler para el perfil del agente.
Puede invocar el perfil del agente mediante la opción - o -agentpath agentlib opción.

Para invocar el perfil del agente mediante la opción -agentlib:


En la línea de comandos, escriba la siguiente cadena de ejecución:
Java
-Agentlib:<Profiler-Agent-Biblioteca>=<sub-opción1>[=<Valor1>]<sub-opción2>
[=<Valor2>]... -Classpath
<-classpath Project_directorio>\classes <Java_main_Class>

Nota: Cuando se especifica la opción -agentlib, puede especificar la absoluta


Ruta del agente excluyendo la extensión .dll, o agregar la ruta del agente.
A su variable PATH y luego especificar el agente sin una absoluta
Ruta de acceso y la extensión.

Ejemplo 1
Java
-Agentlib:C:\JDeveloper\jdeveloper\jdev\lib\
Profiler_x32=jarpath=C:\JDeveloper\jdeveloper\jdev\lib\
Profiler-agent.jar,port=4000,enable=t,startup=Conectar
-Classpath c:\MyApp\MyProject\classes MyMainClass

Ejemplo 2
Set PATH=C:\JDeveloper\jdeveloper\jdev\lib;%PATH%

Java
-Agentlib:profiler_
X64=jarpath=C:\JDeveloper\jdeveloper\jdev\lib\profiler-agent.jar,port=4000,
Enable=t,startup=Conectar
-Classpath c:\MyApp\MyProject\classes MyMainClass

Para invocar el perfil del agente mediante la opción -agentpath:


En la línea de comandos, escriba la siguiente cadena de ejecución:
Java
-Agentpath:<ruta_a_Agent_Biblioteca>=<Opción1>[=<Valor1>]<Opción2>[=<Valor2>]...
<-classpath Project_directorio>\classes <Java_main_Class>

18-78 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

Donde
<ruta_a_Agent_Library> es la ruta completa al profiler_x32.dll o
Profiler_x64.dll. Por ejemplo, <jdev_
Instalación>\jdeveloper\jdev\lib\profiler_x32.dll.

Nota: Al especificar el parámetro -agentpath, debe especificar el


Ruta absoluta al agente incluyendo la extensión .dll.

Ejemplo
-Agentpath:C:\JDeveloper\jdeveloper\jdev\lib\
Profiler_x32.dll=jarpath=C:\JDeveloper\jdeveloper\jdev\lib\
Profiler-agent.jar,port=4000,enable=t,startup=connect,profundidad=1000,INTERVAL=20
-Classpath c:\MyApp\MyProject\classes MyMainClass

Table 18–10 Contiene las subopciones que están disponibles con la -agentlib y
-Agentpath opciones.

Tabla 18-10 Las subopciones


La subopción Descripción
Port=<puerto> Especifica el puerto a través del cual los datos se transferirán.
Valores predeterminados para 4000.
Jarpath=<path> Ruta al archivo JAR de profiler. Este frasco se encuentra en
<jdev_instalación>\jdeveloper\jdev\lib\
Profiler-agent.jar. Si la jarra de la ruta no se ha especificado, la
jarra
Debe estar en el classpath de bootstrap.
Enable=[t][c][M][r] Activa las funciones del agente.
■ T = Tiempo de CPU muestreo
■ M = memoria nueva/GC
■ C = Número de llamadas de método
■ R = heap snapshot de referencia
Sólo uno de t, c o m puede ser especificado. r puede ser
especificada en
Junto con m o por sí solo.
Inicio|mem=time| Si un caso de uso es comenzar al inicio, puede especificar uno de
Contar|referencias|cone los
ctar Siguiente:
■ - Tiempo de muestreo de tiempo de CPU
■ Count - método de conteo de llamadas
■ Mem - memoria libre/asig.
■ Refs - montones hacen referencia a la instantánea (puede ser
especificado en
Combinación con mem o por si misma.
■ Conectar - espera de conexión antes de permitir la aplicación
Para ejecutar
No es posible tener un caso de uso, funcionamiento, a menos que el
analizador se
Conectado.
Startup=mem,refs Profiler permite también la memoria del agente y
Referencia de montón de funcionalidades Snapshot (enable = mr).
Depth=<tamaño> Establece la profundidad máxima de la pila utilizada para la colección. Valores
predeterminados para 1000.
Yo nterval= Muestra el intervalo en milisegundos. El valor predeterminado es 20. Esta
<sample-interval> es sólo
Aplicables al muestreo de tiempo de CPU.

Programación en Java 18-79


Un proyecto de perfiles

Tabla 18-10 (cont.) Las subopciones


La subopción Descripción
Wait=s|n Informe de tiempos de espera y bloqueado. Por defecto es n. Esta es sólo
Aplicables al muestreo de tiempo de CPU.
Refpath=<ruta> Establece la ruta utilizada para escribir archivos de instantánea de referencia.
Requerido si
Enable=r es especificado.
La misma ruta se utiliza para todas las instantáneas, por lo tanto, es importante
que
El archivo puede copiarse antes el siguiente caso de uso extremos. El profiler y
Archivo client hacerlo automáticamente.
Stackfilter= Especifica las clases para incluir o excluir en seguimientos de pila. Para
<expresión> Ejemplo:
Stackfilter=(!java.lang.*)
Esta expresión se asegurará de que no se notificó ningún seguimiento de
pila contiene
Cualquier clase cuyo nombre comienza con java.lang.*. Por ejemplo,
Las trazas de pila con java.lang.Integer y
JAVA.lang.reflejar.Method no aparecen. Cualquier momento utilizado en
Methodfilter= Tales métodos se recogen y se agrega con la siguiente llamada.
<expresión>
Recopila sólo los paquetes que contienen los métodos especificados
especificado
En la expresión. Por ejemplo:
Methodfilter=(com.miempresa.MyClass.MyMethod*)
Esta expresión se asegurará de que la pila no aparecerán a menos que
Contiene al menos una llamada a
Memfilter= Com.miempresa.MyClass.myMethod. * En el filtro asegura
<expresión> Que los métodos para cualquier tipo firma están recogidos; en Java, no
Podría ser más que un método que coincida.
Las clases de objeto a incluir o excluir de la memoria de los informes. Para
Ejemplo:
Memfilter=(!java.lang)
Esta expresión se asegurará de que ninguna clase que contiene java.lang
En su cadena se mostrará.

Ejemplos de línea de comandos


■ Java
-Agentlib:profiler_x32=port=4000,
Jarpath=C:\JDeveloper\jdeveloper\jdev\lib\profiler-agent.jar
Enable=t,profundidad=1000,startup=time,INTERVAL=20 -classpath
C:\JDeveloper\jdeveloper\mywork\Application1\Proyecto1\classes
Project1.application1
■ Java
-Agentlib:profiler_x64=port=4000,
Jarpath=C:\JDeveloper\jdeveloper\jdev\lib\profiler-agent.jar
Enable=m,startup=Conectar -classpath
C:\JDeveloper\jdeveloper\mywork\Application1\Proyecto1\classes
Project1.application1
■ Java
-Agentlib:profiler_x32=port=4000,
Jarpath=C:\JDeveloper\jdeveloper\jdev\lib\profiler-agent.jar
Startup=connect,mem -classpath
C:\JDeveloper\jdeveloper\mywork\Application1\Proyecto1\classes
Project1.application1
18-80 Guía del usuario para Oracle JDeveloper
Un proyecto de perfiles

■ Java
-Agentpath:C:\JDeveloper\jdeveloper\jdev\lib\profiler_
X64.dll=
Jarpath=C:\JDeveloper\jdeveloper\jdev\lib\profiler-agent.jar
Port=4000,enable=t,startup=connect,profundidad=1000,INTERVAL=20
-Classpath
C:\JDeveloper\jdeveloper\mywork\Application1\Proyecto1\classes
Project1.application1 *

18.10.19 Cómo conectar el analizador de forma remota a un programa Java


Para el perfil de un programa de forma remota en JDeveloper, primero debe iniciar el programa
Java
Período de sesiones e invoque el agente del analizador. Para obtener más información,
consulte Section 18.10.18,
"How to Invoke the Profiler Agent."
Una vez que la sesión ha comenzado, usted puede conectar el JDeveloper Profiler. Conectar
El analizador consiste en preparar primero JDeveloper remoto para el perfilado.

Para configurar una sesión de generación de perfiles remotos:


1. En Navigator, seleccione la aplicación que el proyecto se perfila de forma remota.
2. Seleccione una configuración de ejecución y haga clic en Editar. Para obtener más

información, consulte Section 19.3,


"How to Configure a Project for Running."
3. En la página de nodo remoto en el analizador, seleccione el tipo de proceso como local o

remoto.
4. Haga clic en Aceptar cuando haya terminado.

5. Inicie la sesión del programa de Java, si no lo has hecho ya. Para obtener más información,

consulte
Section 18.10.18, "How to Invoke the Profiler Agent."

Para conectarse de forma remota:


1. En Navigator, seleccione la aplicación que el proyecto se perfila de forma remota.
2. En el menú Ejecutar, conectar el analizador de perfil de CPU o de memoria, como perfil
Deseado.
3. En el acople Profiler para ejecutar el diálogo de JVM, confirme que conecte a remoto
Se selecciona la opción de proceso y el host/puerto información es correcta.
4. Haga clic en Aceptar.

5. En Profiler ficha, haga clic en Iniciar para iniciar la generación de perfiles de casos de uso un

caso de uso.
6. Cuando haya terminado, desconecte el profiler. En el menú Ejecutar,

seleccione Desconectar.

Nota: La conexión en el inicio de la aplicación y comenzar en caso de uso


Casillas de inicio de la aplicación en el perfil de la página Editar Ejecutar
Diálogo de configuración no tiene ningún efecto si conecta el profiler para un
Proceso local. Las casillas de verificación son aplicables cuando adjunte profiler
Sólo a un proceso remoto.
18.10.20 Cómo adjuntar y separar dinámicamente el Profiler para un proceso en ejecución
JDeveloper permite acoplar y desacoplar dinámicamente un perfilador de ejecución
Proceso. Esto es similar al analizador de perfiles remotos conectados, pero no necesita
Especifique los parámetros del analizador en la línea de comandos al iniciar la aplicación.
Para
Ejemplo, si está ejecutando una aplicación con ningún plan de perfil que cuando empezó a
Ella, pero más tarde desea perfil porque presenta algunos problemas de rendimiento.

Programación en Java 18-81


Un proyecto de perfiles

En tal escenario, dinámicamente un perfilador de fijación a un proceso en ejecución le ahorra


Desde el reinicio de la JVM para adjuntar un perfilador.
Adjuntar dinámicamente un perfilador tiene sus limitaciones. Se puede hacer el muestreo de
tiempo de CPU
O tomar instantáneas (referencia de memoria heap vertedero), pero usted no puede hacer la llamada
al método
Recuentos o nueva/gc la creación de perfiles de memoria ya que requieren código de bytes de
instrumentación que
Sólo puede ser solicitado en la línea de comandos antes de la JVM es lanzado.

Conectar/desconectar dinámicamente el profiler para un proceso en ejecución:


1. Inicie el programa fuera de JDeveloper, por ejemplo, en un comando diferente
Ventana.
2. Abra JDeveloper y abra el acople Profiler para ejecutar el diálogo JVM (Ejecutar >
Fije Profiler > Perfil Perfil de memoria o CPU).
3. En el acople Profiler para ejecutar JVM diálogo, seleccione Asociar al proceso Local
Opción.
4. Desde la lista de JVMs, seleccione la JVM del programa que se ejecuta en el sistema local.

5. Haga clic en Aceptar. El analizador se conecta a la JVM.

Para desasociar profiler desde un proceso en ejecución, seleccione Desconectar en el menú Ejecutar. Si
Desconectar el profiler cerrando la pestaña Profiler, no puede volver a ella. Para volver a colocar
Posteriormente, debe utilizar el comando Detach.

Para volver a colocar el profiler para un proceso:


Puede acoplar y desacoplar el profiler para un proceso tantas veces como desee, pero
Debe recordar los siguientes puntos antes de reinstalación:
■ Asegúrese de que el analizador está desconectada antes de volverlo a conectar de nuevo.
■ Cuando vuelva a conectar el Profiler, puede iniciar una nueva sesión, y el analizador de datos
Sesión anterior se pierde. Para guardar datos de sesión anterior, seleccione Guardar como en el
Menú Archivo.
Cuando vuelva a conectar el analizador para un proceso, puede cambiar los parámetros de
configuración
Y vuelva a conectar con la nueva configuración. Por ejemplo, si se está perfilando
CPU, puede cambiar la configuración de la CPU para activar o desactivar recopilar tiempo
de E/S, la CPU
Tiempo, Tiempo de espera, y así sucesivamente. Si usted es la creación de perfiles de memoria,
puede volver a Profiler
Tome volcados de pila. También puede alternar entre la CPU y perfiles
La creación de perfiles de memoria.
Sin embargo, no puede volver a fijar si cambia la configuración de perfiles de CPU
Método de recuento de llamadas, o la creación de perfiles de memoria configuración a nuevo/gc.
Estos requieren
Capacidades la profiler puede adquirir después de la aplicación comienza a ejecutarse. Para hacer
cualquiera
De estos, debe iniciar la aplicación con perfiles adecuados y parámetros
Fije profiler utilizando el comando Adjuntar al proceso remoto.

18.10.21 Cómo establecer puntos de perfil


El perfil de puntos le permiten establecer un método filtro en un método o una clase. Esto
significa
Que sólo pilas que contienen dichos métodos, o clases, son notificados por el profiler. Es
Utiliza para filtrar los datos para ver sólo un método, lo que lo llama, y lo llama.

Para establecer un punto de perfil:


1. Pen es el archivo en el editor de código fuente y haga clic con el botón derecho del ratón en el
margen izquierdo junto a una línea de
Código ejecutable.

18-82 Guía del usuario para Oracle JDeveloper


Un proyecto de perfiles

2. En el menú contextual, elija Alternar punto de perfil. El icono de punto de perfil


Aparece en el margen izquierdo de la clase principal o el nombre del método.

La desactivación de un punto de perfil


Puede desactivar un punto de perfil en cualquiera de las siguientes maneras:
■ En el editor de código fuente, haga clic en el símbolo de punto de perfil en el
margen izquierdo y
Elija Deshabilitar punto de perfil.
■ En el punto de perfil ventana (Ver > Perfil puntos, haga clic con el botón secundario
en el punto de perfil
Desea deshabilitar y seleccione Desactivar.
■ Para deshabilitar todos los puntos del perfil actual, haga clic con el botón derecho del ratón en
la ventana Puntos de perfil, y
Elija Deshabilitar todo desde el menú de contexto.

Eliminar un punto de perfil


Cuando ya no necesite examinar el código en la ubicación del punto de un perfil, puede
Eliminar el punto de perfil. Puede eliminar un punto de perfil en cualquiera de las siguientes
maneras:
■ En el editor de código fuente, haga clic en el símbolo de punto de perfil en el
margen izquierdo y
Elija.
■ En el punto de perfil ventana (ver, entonces los puntos de perfil) haga clic con el
botón secundario en el punto de perfil
Que desea eliminar y seleccione Eliminar.
■ Para eliminar todos los puntos de perfil, haga clic con el botón derecho del ratón en la ventana
Puntos de perfil, y
Elija Borrar todo en el menú contextual.

18.10.22 Guardar y abrir sesiones Profiler


El profiler le permite guardar el resultado para su posterior visualización y análisis.
Para guardar una sesión ejecuta Profiler en el disco, en el menú Archivo, seleccione Guardar como.
En el cuadro Guardar
Como cuadro de diálogo, introduzca un nombre adecuado para describir su sesión,
por ejemplo,
Uianalysis.opr, o acepte el valor predeterminado.

Nota: Si va a guardar un caso de uso activo, será automáticamente


Terminado. El icono de la barra de herramientas del Caso de uso final está
deshabilitado, y comenzar a utilizar
Icono de la barra de herramientas CASE está habilitado.

Para abrir una sesión de analizador de guardado, en el menú Archivo, seleccione Abriry vaya a

la
Sesión que desea ver.
Una sesión guardada es visualmente distinguible de una sesión activa por
su singular profiler
Icono. En una sesión guardada, el caso de uso que comienzan y terminan los iconos están
deshabilitadas, pero el caso de uso
Controles de navegación están activas cuando varios casos de uso están disponibles.

18.10.23 Cómo Abrir formato HPROF volcados de pila


JDeveloper permite abrir volcados de pila en formato binario HPROF y mostrar
En profiler. Formato binario HPROF volcados de pila puede ser creado por la HPROF
Profiler, por el JDK herramientas y jmap jconsole, o mediante el parámetro java
-XX:+HeapDumpOnOutOfMemoryError.
Por ejemplo, para crear el archivo jmap HPROF utilizando el comando, usted podría entrar
en
La línea de comandos:
Jmap -dump:format=b,file=heap.hprof <jdev process ID>

Programación en Java 18-83


Modelar las clases Java.

Para obtener más información acerca de HPROF, consulte


Http://java.sun.com/javase/reference/index.jsp

Para abrir un archivo binario HPROF:


1. En el menú Archivo, seleccione Abrir.
2. Busque y seleccione el archivo de formato binario HPROF y, a continuación, haga clic en Abrir.

El volcado de pila se abre en el profiler referencias ficha editor.

Nota: Apertura muy grande montón vuelca es un proceso lento y puede tomar
Varios minutos en abrir. En Windows XP, el analizador no puede abrir
Grandes (> 990MB) HPROF archivos.

18.11 modelar las clases Java.


Un diagrama de clase Java permite crear visualmente las clases, interfaces,
enumeraciones y
La herencia y la composición de las relaciones, y para ver las clases Java y
Las interfaces. Si desea visualizar una faceta particular de su aplicación, agregue sólo los
Clases que contribuyen a ese aspecto del diagrama.
El modelo de clases de Java debe comenzar con un diagrama de clases Java, aunque puede
Posteriormente, agrega otros elementos del diagrama. Para obtener más información, consulte
Section 18.11.10, "How to Create a Diagram of Java Classes." Puede crear y
Modificar las clases que componen la aplicación directamente en el diagrama.
Los cambios realizados en el diagrama de clases de Java están disponibles de inmediato en el código
fuente de Java
Editor, y viceversa.

18.11.1 Dependencias de modelado


Las dependencias son representadas en el diagrama como una línea discontinua con una abierta
Punta de flecha en el sentido de la dependencia y se utilizan para la documentación
Solamente y no cambie el código Java subyacente.

18.11.2 la creación de clases Java, interfaces y enums.


Clases Java, interfaces o enumeraciones están creadas en un diagrama haciendo clic en Java
Icono de clase, icono de la interfaz Java o Java Enum icono en la paleta de componentes Java
El diagrama y, a continuación, haga clic en el diagrama donde desee crear la clase. El
Archivo de código fuente de Java para la clase o interfaz modelada se crea en la ubicación
especificada por
Los ajustes del proyecto.
La clase Java, Java, Java y la interfaz de iconos Enum son representados en un diagrama como
Los rectángulos que contenga el nombre y los detalles de la clase de Java. Interfaces y clases Java
Están divididas en compartimentos, con cada compartimiento que contiene un solo tipo de
Información.
Los puntos suspensivos (...) se muestra en cada compartimento que no es lo
suficientemente grande como para mostrar su
Todo el contenido. Para ver un modelo de clase para que todos los campos y métodos son
Mostrados, haga clic con el botón secundario en la clase y elija Optimizar el tamaño de la
forma, altura y
Ancho.
Cada tipo de clase en un diagrama es identificado por un estereotipo en el compartimiento del
nombre.
Esto no aparece de forma predeterminada.

18-84 Guía del usuario para Oracle JDeveloper


Modelar las clases Java.

Los miembros (campos y métodos) mostrar símbolos para representar su visibilidad. El


Símbolos son: visibilidad pública +, -, # privado protegido. Si no se utiliza el símbolo de
visibilidad,
El campo o método tiene paquete visibilidad.

18.11.2.1 modelar interfaces Java


Una interfaz es normalmente utilizado para agrupar las firmas de método para
grupos de
Los métodos que definen conjuntamente un servicio coherente. Las clases que desea
proporcionar el
Servicio definido por una interfaz hacer esto mediante la implementación de la interfaz. Los
nombres de interfaz
Deben ser únicos dentro de un espacio de nombres. Porque las interfaces pueden utilizarse
para especificar un conjunto de
Los servicios que otras clases proporcionan, pueden ser utilizadas para aplicar algún nivel de
Coherencia en las otras clases.

Nota: modelados interfaces Java pueden heredar de otras interfaces usando


Extiende las relaciones.

Para obtener más información,

consulte Section 18.3.6, "How to Create a New Java Interface."

18.11.2.2 Interior modelado interior y clases Java Interfaces Java


Puede incluir un diagrama de clases internas o primarias de diferentes
paquetes, el actual
Aplicación, o de las bibliotecas. Interior interior y clases Java interfaces se definen como
Los miembros de su 'poseer' class. Por lo tanto, ellos también se conocen como clases de
miembros.
Las clases internas y se muestran las interfaces internas en el interior del compartimiento
de clases
Modelado de clase Java o interfaz en el diagrama. Las clases internas se prefijan con el
Término de clase, y las interfaces internas se prefijan con el término interfaz, entre el
Símbolo de visibilidad y el nombre de clase o interfaz.
Para crear una clase interna o interior modelada sobre una interfaz Java, ya sea de clase o interfaz
Agregar la clase interna para la implementación de código Java, o crear una nueva clase de
Java o
Interfaz como un nodo interno en un modelo existente de clase.
Interior interior y clases Java Java las interfaces no pueden tener el mismo nombre que
cualquier
Que contiene la clase Java, Java o paquete de interfaz ni contener campos estáticos o estática
Los métodos.

Modelado 18.11.2.3 Enums.


Los tipos enumerados, o enumeraciones que contengan campos y métodos, puede crearse
en un
Diagrama. Los tipos enumerados no pueden implementar interfaces, extender otras clases,
o ser
Ampliada por otra clase.

18.11.3 Composición modelado en un diagrama de clase Java


Una variedad de referencias (conocido anteriormente como asociaciones)
se pueden crear rápidamente
Entre las clases y las interfaces en un diagrama mediante los diversos iconos de la referencia
La clase Java paleta de componentes para el diagrama. Referencias creadas entre
modelados
Las clases de Java son representados como campos en el código fuente de las clases que
implementan
Las referencias. Relaciones composicionales son representadas en el diagrama como un sólido
Línea abierta con una flecha en la dirección de la referencia. Tabla 18-11 muestra el
Referencias que pueden ser modeladas en un diagrama.

Programación en Java 18-85


Modelar las clases Java.

Tabla 18-11 Referencias entre clases o interfaces


Referencia Descripción
Referencia (objeto) U n s i ng ul a r , e n r e fe r e nc i a d i r e c ta a p a r ti r d e una c l a s e o
i n t e r fa z a
Otro. Esto se representa en el código de la referencia es
Originarios de la clase como un campo de tipo <clase_destino>.
Referencia (matriz) U na r e fe r e nc i a a una m a tr i z d e o tr a c l a s e o i nte r f a z . E s to e s
Representado en el código como una matriz de tipo <destino_
Clase>.
Referencia (colección). Esto se representa en el código como una colección de declaración y
Agrega un @associates <{type}> etiquetas Javadoc de la fuente a
Identificar esta referencia, así como el necesario importar
Java.util.Collection; declaración.
(Lista de referencia) Esto se representa en el código como una lista, y agrega una declaración
@Associates <{type}> etiquetas Javadoc a la fuente para identificar
Esta referencia, así como el necesario import java.util.List.
Declaración.
Referencia (Mapa) Esto se representa en el código como un mapa de declaración y añade
Un @associates etiquetas Javadoc a la fuente para identificar este
Referencia así como el necesario import java.util.map; declaración.
Referencia (Set) Esto se representa en el código como un conjunto, y agrega una declaración
@Associates etiquetas Javadoc a la fuente para identificar este
Referencia así como el necesario import java.util.Set; declaración.

Nota: Si desea cambiar rápidamente las propiedades de una referencia en


Un diagrama, haga doble clic en él para mostrar el Editor de código y cambiar la
Detalles de la referencia.

Las etiquetas no son mostrados en las referencias por defecto. Para mostrar la etiqueta de

referencia,
Haga clic en la referencia y elija propiedades visuales y, a continuación, seleccione Mostrar
etiqueta. El
Nombre de etiqueta predeterminada es el nombre del campo que representa la referencia. Si
selecciona este
El nombre de la etiqueta en el diagrama y cambie, un @etiqueta <label_name> etiquetas
Javadoc
Se añadirá antes el campo que representa la referencia en el código.
Puede cambiar el símbolo de agregación utilizados en una referencia en un diagrama por
Haga clic con el botón derecho del ratón, eligiendo la referencia de referencia y, a continuación,
elegir el tipo de agregación
Ninguno, Débil (que añade un @agregación Javadoc compartida del código de etiqueta
Que representa la referencia) o Fuerte (que añade un @ compuesto de agregación
Etiquetas Javadoc para el código que representa la referencia). Los símbolos son de agregación
Sólo con fines documentales.

18.11.4 la herencia de modelado en un diagrama de clase Java


La herencia de estructuras en las que están representados en el código fuente de Java como se
extiende
Declaraciones, pueden crearse en un diagrama de clases Java usando el icono se extiende sobre el
La clase Java paleta de componentes para el diagrama. Extiende las relaciones se representan
En el diagrama como una línea sólida con una flecha apuntando hacia el vacío
Clase o interfaz extendida.
Cuando una interfaz es implementada por una clase, esto puede ser creado utilizando el
Implementa icono en la paleta de componentes Java para el diagrama. La creación de un
Implementa relación agrega instrucción Implements para el código fuente para el
Aplicación de clase. Implementa las relaciones se representan en el diagrama como una

18-86 Guía del usuario para Oracle JDeveloper


Modelar las clases Java.

Línea discontinua con una punta de flecha vacía apuntando hacia la ejecución de Java
Interfaz.

18.11.4.1 Ampliar modela las clases Java.


Amplía la herencia del modelo de relaciones entre los elementos de un modelo de clase.
Extiende
Se pueden crear relaciones entre clases Java y Java entre interfaces, creación
Se extiende una declaración en la definición de clase. Las enumeraciones no pueden extender
otras clases, o ser
Extendida por otras clases.

Nota: Como herencia de clases múltiple no es compatible con Java, sólo


Una relación de extensión pueden ser modelados a partir de una clase Java en un
Diagrama. Varios amplía las relaciones pueden ser modeladas a partir de un Java
Interfaz.

18.11.4.2 la aplicación modelada interfaces Java


Implementa las relaciones especificar dónde un modelo de clase Java es utilizado para
implementar un
Modelar la interfaz Java. Esto se representa como una palabra clave implements en la fuente
Para la clase de Java. Implementa las relaciones se representan en los diagramas de clase
como
Las líneas discontinuas con una punta de flecha vacía apuntando hacia la interfaz a
Implementado. Las enumeraciones no pueden implementar interfaces.
Si la interfaz implementada es una extensión (mediante una relación de extensión) de
otros
Modelado de interfaces, esto se refleja en el código fuente de Java para la interfaz.
Una clase que implementa una interfaz puede proporcionar una
implementación para algunos o para todos
Los métodos abstractos de la interfaz. Si los métodos de una interfaz son sólo parcialmente
Implementa una clase, dicha clase se define como abstracto.

18.11.5 Modelado de campos y métodos Java


Puede crear miembros (campos y métodos) de una clase o interfaz de Java en un diagrama.
Los campos y métodos se agregan a modelar interfaces y clases Java en un diagrama
Haciendo doble clic en el modelo de clase o interfaz de Java y luego agregar el campo o
método
Utilizando el Editor de código fuente de Java.
■ Los campos se utilizan para encapsular las características de un modelo de clase Java
o Java
Interfaz. Todas modeladas campos tienen un nombre, un tipo de datos y una visibilidad
especificados.
Cuando un campo o se muestra el método de una clase en un diagrama, es con el
prefijo +
(Si se declara como public), - (si se declara como private) o # (si se declara
como protegido).
Los campos estáticos están subrayados en el diagrama.
■ Los métodos se definen en una clase para definir el comportamiento de la clase. Métodos
pueden
Tienen tipos de devolución, que podrá ser un tipo escalar o un tipo definido por otro
Clase.

18.11.6 Paquetes de modelado en un diagrama de clase Java


Un paquete es un mecanismo de propósito general para organizar
elementos en grupos. Ella
Puede contener muchos tipos diferentes de elementos, incluidos los paquetes, archivos,
clases y
Los elementos del modelo (por ejemplo, clases, interfaces, objetos de entidad). Los paquetes
pueden ser
Anidados dentro de otros paquetes.
Un paquete posee los elementos dentro de ella y proporciona el contexto
y espacio de nombres
Esos elementos. Los elementos de propiedad del mismo paquete deben tener nombres únicos
dentro de
El paquete. Cada elemento es propiedad directa de un solo paquete, pero puede ser
referenciada

Programación en Java 18-87


Modelar las clases Java.

(Importado) de otros paquetes; en otras palabras, mencionado por otros elementos en otros
Los paquetes.
Si un paquete se encuentra en un diagrama, renombrado o movido a otro paquete, el
contenido de
El paquete que se ha movido o cambiado de nombre se refactorizan automáticamente para reflejar este
paquete
El cambio.
Los nombres de paquetes deben ser únicos dentro de un espacio de nombres, incluso si los nombres
tienen diferentes
La capitalización.
Los paquetes de Java puede ser creado en un diagrama, o arrastrar a un diagrama desde el
Navigator. Para abrir un diagrama para un paquete de Java, haga clic con el botón derecho en el
paquete en el
Diagrama y elija drill down.

18.11.7 cómo mostrar las clases relacionadas en un diagrama


Las clases de Java y las interfaces relacionadas a las que actualmente se muestran en el diagrama
puede ser
Introducidos en el diagrama. Esto incluye las clases o interfaces que están extendidos,
Implementado, o referenciado por la clase o interfaz seleccionada.

Nota: Donde las clases se agrega a un esquema a partir del proyecto


Ruta de origen, y no son ya parte del proyecto, estas clases son
Añade automáticamente al proyecto actual.

Para visualizar las clases en un diagrama, use uno de los dos modos siguientes:
■ Seleccione la clase o interfaz, en el diagrama, para la que desea mostrar relacionados
Elementos y, a continuación, elija el modelo > Mostrar > Elementos relacionados.
■ Haga clic con el botón secundario en la clase o interfaz, en el diagrama, para la que desea
mostrar
Elementos relacionados y, a continuación, elija Mostrar > Elementos relacionados.

18.11.8 cómo ocultar las referencias entre las clases Java.


Las relaciones entre las clases o interfaces de Java pueden ser visualizados en un diagrama
mediante
Referencias. Puede ocultar una referencia en un diagrama.

Para ocultar una referencia entre clases Java:


■ Haga clic con el botón secundario en la referencia que desee ocultar y elija Ocultar la
referencia.

Para mostrar una referencia oculta entre las clases Java:


1. Haga doble clic en el modelo de clase de Java en el que el campo que representa la referencia es
Definido.
2. Haga clic en la ficha Código fuente en la parte inferior de la ventana del editor.

3. Quitar el atributo de etiquetas Javadoc desde encima del miembro que represente la
Referencia.
La referencia oculta será mostrado en el diagrama.
Nota: Ocultar una referencia entre las clases Java en un diagrama, se agrega un
Comentario al código fuente Java para la clase, de manera que si esta clase está también en
cualquier
Otros diagramas, esa referencia también estarán ocultos en los diagramas.

18-88 Guía del usuario para Oracle JDeveloper


Pruebas unitarias con JUnit

18.11.9 Modelo ¿Qué ocurre cuando una clase Java


Las definiciones de las clases en un diagrama, sus miembros, herencia y
Composición relaciones son todos derivados directamente desde el código fuente de Java
para aquellos
Las clases. Todos estos son creados como código Java, así como se muestra en el diagrama. Si
Cambiar, agregar o eliminar en el código fuente de cualquier clase aparece en el
El diagrama, los cambios se reflejarán en las clases e interfaces en el
Diagrama. Por el contrario, los cambios en el modelo de clases también se realiza en el
Código fuente subyacente. Algunos datos relativos a la composición de relaciones, o
Referencias, capturado en un diagrama de clase Java se almacena como etiquetas Javadoc en la
fuente
El código.
Un diagrama de clase Java puede contener forma s desde otros tipos de
diagramas (Oracle ADF
Los componentes comerciales, elementos de UML, Enterprise JavaBeans, y objetos de base
de datos). Un
Forma de notación UML se utiliza para mostrar las clases en un diagrama. Modelado UML
Las clases pueden ser transformados para modelar las clases Java. Asimismo, modela las clases
Java.
Se pueden transformar para modelar las clases UML. Puede anotar un diagrama de Java
Clases mediante notas, las relaciones de dependencia y enlaces URL.

18.11.10 Cómo crear un diagrama de las clases Java.


Clases Java, interfaces, enumeraciones y puede ser visualmente creado en un diagrama de
clase Java
Junto con sus miembros, la herencia y la composición de relaciones.
Puede crear clases de UML, casos de uso de UML, los objetos de la base de datos sin
conexión, negocios
Componentes Enterprise JavaBeans, y servicios web en un diagrama de clases Java.
En un diagrama de clases de Java Java válidas deben tener nombres de clase y debe ser
único
Dentro de la clase del paquete. Si se define un modelo de clase Java como abstracto
debe
Crear una clase de Java concreta con una generalización abstracta a la clase Java. Los nombres
Resumen modelado de clases Java se muestra en cursiva.

Para crear un diagrama de clases Java:


1. Crear un nuevo diagrama mediante el icono del diagrama de clase Java en la nueva
galería.
2. Crear los nodos que requieren en el diagrama mediante el componente de la clase Java
Paleta.
Además, las clases de Java e interfaces disponibles para el proyecto actual se
pueden arrastrar
Desde el navegador y cayó en el diagrama para modificar el código para
Esas clases, o para visualizar la estructura del código existente.

Sugerencia: También puede anotar su diagrama por crear y anexar


Notas para elementos de diagrama, y la adición de enlaces URL a otros lugares.
Como archivos o sitios web.

18.12 Pruebas Unitarias con JUnit


JUnit es un framework de pruebas de regresión de open source para Java. Utilice JUnit
para escribir y
Ejecutar pruebas que verifican que el código Java. Para obtener información detallada
acerca de JUnit, visite el JUnit
Sitio web, http://www.junit.org/
Utilice JUnit asistentes en JDeveloper para crear accesorios de prueba, casos y suites.
Además de
Asistentes para crear los componentes de prueba para proyectos genéricos, los
asistentes especializados para
Componentes de Negocio Los proyectos son proporcionados.
JUnit es una característica opcional que puede ser instalado e integrado con JDeveloper.

Programación en Java 18-89


Pruebas unitarias con JUnit

Después de instalar JUnit como una extensión adicional de la documentación en línea está
instalado.
Estos temas de ayuda aparecen debajo de la tabla de contenidos de la ayuda en la creación de una
carpeta
JUnit prueba para un proyecto Java.

18.12.1 Cómo instalar JUnit


JUnit es una característica opcional que no está distribuido con JDeveloper. Debe
Descargar e Instalar si desea utilizarla.

Nota: JUnit es proporcionada en virtud de un acuerdo de licencia pública de IBM. Usted


Debe aceptar el contrato de licencia antes de descargar JUnit.

Para instalar JUnit en JDeveloper:


1. Utilice el Asistente para actualización de IDE para descargar JUnit desde Oracle Technology
Network (OTN).
2. Salga y reinicie JDeveloper.

3. JUnit será instalado. Utilice Extension Manager si desea desinstalarlo.

18.12.2 creando un JUnit prueba para un proyecto Java


JUnit prueba una aplicación consta de los siguientes componentes:
■ Uno o más casos de prueba, que invocan los métodos que van a probarse y hacer
Las afirmaciones acerca de los resultados esperados. Mientras prueba las clases generadas por
defecto
Tienen 'Test' en sus nombres, el usuario puede especificar cualquier nombre de Java válidas.
■ Accesorios de prueba, que proporcionan el estado en el que se ejecutan las pruebas. Cualquier clase
puede
Servir como elemento de prueba, pero JDeveloper proporciona asistentes para ayudarle a crear
Accesorio de prueba especializados clases. Accesorio de prueba mientras las clases generadas
por defecto tiene
"Accesorio" en sus nombres, el usuario puede especificar cualquier nombre de Java válidas.
■ Una suite de prueba, por lo que invoca los casos de prueba. Suite de
p r u e b a p r e d e t e r m i n a d o c l a s e s t i e n e n " A l l Te s t s '
En sus nombres.
■ Un corredor, que invoca la suite de prueba y coteja y muestra los
resultados de la
Las pruebas.

18.12.3 Cómo crear un accesorio de prueba JUnit personalizado


Un dispositivo de prueba es un conjunto de objetos, tener valores conocidos,
que proporcionan datos para la pr ueba.
Los casos. Cualquier clase puede servir como elemento de prueba, pero JDeveloper proporciona
asistentes para ayudarle
Accesorio de prueba personalizados se crean clases y diversas clases de accesorio de prueba
especializados.

Para crear una clase personalizada de JUnit accesorio de prueba:


1. En el navegador, seleccione el proyecto.
2. Elija Archivo > Nuevo para abrir la nueva galería.
3. En el árbol, expanda las categorías General y seleccionar pruebas unitarias.

4. En la lista de elementos, haga doble clic en Dispositivo de prueba.

5. Complete el asistente para crear la clase de dispositivo de prueba. La clase creada por el asistente
Se abrirá para su edición.
6. En el árbol, expanda las categorías General y seleccionar las pruebas unitarias (JUnit).

7. En la lista de elementos, haga doble clic en Dispositivo de prueba personalizado.

18-90 Guía del usuario para Oracle JDeveloper


Pruebas unitarias con JUnit

8. Complete el asistente para crear la clase de dispositivo de prueba. Para más información en
cualquier
Tiempo, presione F1 o haga clic en Ayuda en el cuadro de diálogo.
9. En el árbol de categorías y ampliar las pruebas unitarias.

10. Haga clic en Test Suite > Aceptar.

11. En la lista de elementos, haga doble clic en Dispositivo de prueba.

12. Complete el asistente para crear la clase de dispositivo de prueba. Para más información

en cualquier
Tiempo, presione F1 o haga clic en Ayuda en el cuadro de diálogo.
La clase creada por el asistente se abrirá para su edición.
13. Modifique el archivo según sea necesario. En particular, el método setUp() agregue

código que
Inicializa los objetos de dispositivo de prueba, y el método tearDown() agregue código
que libera
Los recursos que adquieren.

18.12.4 Cómo crear un accesorio de prueba JUnit JDBC


Un dispositivo de prueba es un conjunto de objetos, tener valores
conocidos, que proporcionan datos para la prueba.
Los casos. Un accesorio de prueba JDBC proporciona código que establece una conexión para
la base de datos
Casos de prueba para su uso.

Para crear una clase de accesorio de prueba JUnit JDBC:


1. En el navegador, seleccione el proyecto.
2. Seleccione Archivo y, a continuación, en Nuevo para abrir la nueva galería.

3. En el árbol, expanda las categorías General y seleccionar las pruebas unitarias (JUnit).

4. En la lista de elementos, haga doble clic en Dispositivo de prueba JDBC.

5. Complete el cuadro de diálogo para crear la clase de dispositivo de prueba. Para más

información en cualquier
Tiempo, presione F1 o haga clic en Ayuda en el cuadro de diálogo.
La clase que fue creado se abrirá para su edición.
6. Modifique el archivo según sea necesario. En particular, el método setUp() agregue
código que
Inicializa los objetos de dispositivo de prueba, y el método tearDown() agregue código
que
Libera los recursos que adquieren.

18.12.5 Crear un caso de prueba JUnit


Un caso de prueba clase tiene uno o más métodos que realizan pruebas
llamando JUnit
Las aserciones. Ejemplo 18-7 muestra un típico caso de prueba en JUnit 3.x. Pasa del
accesorio de prueba
Datos para el método probado y, a continuación, comparar el resultado con un valor conocido
a
Confirmar que es lo que se espera.

Ejemplo 18-7 JUnit 3.x Caso de prueba


Public void testCountChars()
{
Int espera = 4;
Aparejo real = int1.countChars('a');
AssertEquals(espera, reales).
}

Ejemplo 18-8 JUnit 4 caso de prueba


@Test
Public void testCountChars()

Programación en Java 18-91


Pruebas unitarias con JUnit

{
Int espera = 4;
Aparejo real = int1.countChars('a');
Assert.assertEquals(espera, reales).
}

En el caso de prueba se muestra en el ejemplo 18-8, countChars() está siendo probado, y el


resultado
La prueba está marcada por assertEquals(), que es un variedad de afirmación
Los métodos definidos en la clase Assert JUnit. El estado del dispositivo de prueba, fijación1, es
Establecidos en el método setUp(), que han sido llamados ante el caso de prueba es
Llama, como se muestra en la Example 18–9.

Ejemplo 18-9 setUp(), método


Protected void setup() lanza una excepción
{
Accesorio1 = new StringFixture("Goin' a Kansas City, Kansas City, aquí vengo.");
}

Para crear un caso de prueba JUnit clase:


1. En el navegador, seleccione el proyecto o la clase particular que desea probar.
2. Seleccione Archivo y, a continuación, en Nuevo para abrir la nueva galería.

3. En el árbol, expanda las categorías General y seleccionar las pruebas unitarias (JUnit).

4. En la lista de elementos, haga doble clic en caso de prueba.

5. Complete el asistente para crear la clase de dispositivo de prueba. La clase creada por el asistente
Se abrirá para su edición.

18.12.6 creando un JUnit Test Suite.


Una suite de prueba es una clase que invoca los casos de prueba.
La suite de prueba JUnit asistente tiene opciones para insertar un método main() y una llamada a
un
Clase TestRunner. Dentro de JDeveloper, esto abrirá la ventana de registro TestRunner JUnit
Para mostrar los resultados de la prueba. Editar el método si desea utilizar un corredor de pruebas
diferentes.
En el JUnit test suite 3.x se muestra en el ejemplo 18-10, la suite() método crea un
TestSuite instancia y agrega los casos de prueba. Editar este método si desea agregar o
Extraer los casos de prueba.

Ejemplo 18-10 JUnit Test Suite 3.x


Public Class AllTests {
Public static test suite() {
TestSuite suite;
Suite = new TestSuite("project1.AllTests");
Volver suite;
}

En el JUnit 4 suite de prueba se muestra en el ejemplo 18-11, el caso de prueba clases están
escritas con
@Suite y @RunWith anotaciones.

Ejemplo 18-11 JUnit 4 Test Suite.


@RunWith(Suite.class)
@Suite.SuiteClasses() {}
Public Class AllTests1 {

18-92 Guía del usuario para Oracle JDeveloper


Pruebas unitarias con JUnit

Public static void main(String[] args) {


String[] args2 = { AllTests1.class.getName(); }
Org.junit.runner.JUnitCore.Main(arg2);
}
}

Para crear una clase de JUnit test suite:


1. En el navegador, seleccione el proyecto.
2. Seleccione Archivo y, a continuación, en Nuevo para abrir la nueva galería.

3. En el árbol, expanda las categorías General y seleccionar las pruebas unitarias (JUnit).

4. En la lista de elementos, haga doble clic en Test Suite.

5. Complete el asistente para crear la clase de dispositivo de prueba. La clase creada por el

asistente
Se abrirá para su edición.
6. Modifique el archivo según sea necesario. En particular:
■ En la suite() método agregar los casos de prueba.
■ En el método main() Sustituir la deslizadera invocación, si lo desea.

18.12.7 Cómo agregar una prueba para un caso de prueba JUnit


Puede agregar una unidad de prueba para un método de una clase existente de JUnit test
case.

Agregar una prueba en un caso de prueba JUnit clase:


1. En el editor de código, seleccione un método para el que desea crear una nueva
unidad de prueba.
2. Desde el menú principal, seleccione Origen > Un nuevo método de prueba. El nuevo

método Test
Se abre el diálogo.
3. Seleccione Añadir a la clase TestCase existente.
4. Desde el cuadro desplegable Nombre de clase o mediante Examinar, seleccione la clase

de caso de prueba
Que desea agregar la nueva prueba.
5. Para agregar la nueva prueba para el caso de prueba, haga clic en Aceptar.

18.12.8 Cómo actualizar una suite de prueba con todos los casos de prueba en el proyecto
Actualizar un test suite con todos los casos de prueba en un proyecto.

Para actualizar un conjunto de prueba:


1. En una clase que tiene una suite(), método, desde el menú principal,
seleccione Origen > Actualizar
Suite de prueba. La suite de prueba actualizar el diálogo está abierto.
2. Asegúrese de que todos los elementos de la lista de casos de prueba están marcadas.

3. Para actualizar la suite de prueba, haga clic en Aceptar.

18.12.9 Cómo ejecutar JUnit prueba Suites


Cuando el test suite ha sido compilado correctamente puede ejecutarlo.
Para ejecutar un JUnit test suite:
1. En el navegador, seleccione la clase test suite.
2. Haga clic con el botón secundario y seleccione Ejecutar.

Programación en Java 18-93


Pruebas unitarias con JUnit

La prueba se ejecutará, y el corredor de prueba mostrará los resultados.

18-94 Guía del usuario para Oracle JDeveloper


19
ejecutar y depurar programas Java
19

En este capítulo se describe cómo utilizar las herramientas y características


proporcionadas por JDeveloper a
Ejecutar y depurar programas Java. Para obtener información acerca de cómo escribir y
compilar un Java
Programa, consulte Chapter 18, "Programming in Java."
Este capítulo incluye las siguientes secciones:
■ Section 19.1, "About Running and Debugging Java Programs"
■ Section 19.2, "Understanding the Run Manager"
■ Section 19.3, "How to Configure a Project for Running"
■ Section 19.4, "Running an Applet"
■ Section 19.5, "How to Run a Project or File"
■ Section 19.6, "About the Debugger"
■ Section 19.7, "Using the Debugger Windows"
■ Section 19.8, "Managing Breakpoints"
■ Section 19.9, "Examining Program State in Debugger Windows"
■ Section 19.10, "Debugging Remote Java Programs"

19.1 sobre cómo ejecutar y depurar programas Java


JDeveloper ofrece varias técnicas para supervisar y controlar la manera en que los programas
Java
Ejecutar. Cuando se ejecutan los programas Java, JDeveloper mantiene un seguimiento
de los procesos que se ejecutan
Y depurado, o perfil. Además, JDeveloper ofrece tanto locales como remotas
La depuración de Java, JSP, servlets y archivos de código fuente.

19.2 entender la ejecute Manager


La ejecute Manager realiza un seguimiento de los procesos que se están ejecutando,
depurado, o perfil. Cuando
Dos o más de esos procesos están activos al mismo tiempo, la ventana Administrador
Ejecutar
Se muestra automáticamente. Cuando el proceso ha terminado, se quita automáticamente.
Ejecutar desde el Manager.

Para abrir el administrador ejecutar:


■ Elija Ver > Ejecutar Manager desde el menú principal.
Para terminar un proceso con el administrador ejecutar:
■ Haga clic con el botón derecho en un proceso en el administrador ejecutar y
elija Finalizar desde el contexto
Menú.

Ejecutar y depurar programas Java 19-1


Cómo configurar un proyecto para ejecutar

Para ver el registro de ejecución:


■ Haga clic con el botón derecho en un proceso en el administrador ejecutar y elija Ver
registro en el contexto
Menú.

19.3 Cómo configurar un proyecto para ejecutar


Los valores que controlan el modo en que se ejecutan los programas, tales como el destino, y opciones
de inicio
El comportamiento del depurador, registrador y profiler - se recogen en ejecutar las configuraciones.
Un proyecto puede tener varias configuraciones de ejecución, cada uno
configurado para una faceta específica de la
Proyecto o fase del proceso de desarrollo. Una configuración de ejecución puede estar enlazado a la
Proyecto y estar a disposición de todos los que trabajan en el proyecto, o que pueden ser
personalizadas.
Configuración, sólo para su uso.
Efectuar la configuración predeterminada se crea para cada nuevo proyecto.
Puede modificar ejecutar
Las configuraciones y puede crear una configuración nueva mediante la copia de uno existente.

Para seleccionar una configuración de ejecución:


1. Desde el menú principal elija Aplicación > Propiedades del proyecto.
2. Active la casilla de verificación Ejecutar/Depurar Página.

3. De la lista de configuraciones, seleccione una configuración de ejecución.

Para modificar una configuración de ejecución:


1. Seleccione una configuración de ejecución como se ha descrito anteriormente.
2. Haga clic en Editar.

La edición se abre el diálogo de configuración de ejecución.


3. Realice los cambios necesarios en las preferencias en las páginas del diálogo.

Para obtener ayuda mientras utiliza el cuadro de diálogo páginas, presione F1.

Para crear una configuración de ejecución:


1. Seleccione una configuración de ejecución como se ha descrito anteriormente.
2. Haga clic en Nuevo.

Al crear la configuración de ejecución se abre el diálogo.


3. En el cuadro Nombre, escriba un nombre para la nueva configuración de ejecución.

4. En la configuración de copia desde el cuadro desplegable, elija una configuración de ejecución

existente para
Copiar.
5. Para crear una nueva configuración de ejecución tiene la misma configuración que la que estaba
Copiado de, haga clic en Aceptar.

19.4 ejecutar un applet


JDeveloper permite ejecutar los applets en el AppletViewer o en el Sistema Integrado de WebLogic
Instancia de servidor. El AppletViewer proporciona un banco de pruebas para ejecutar el applet sin
El lanzamiento del navegador web. Si desea ejecutar el applet en un navegador, puede
Ejecutar en la instancia del servidor WebLogic integrado.
Después de crear el applet y asegurándose de que el classpath está configurado correctamente
en el
Archivo HTML, puede ejecutarlo mediante la ejecución del comando Ejecutar en uno
de los siguientes
Medios:

19-2 Guía del usuario para Oracle JDeveloper


Cómo ejecutar un proyecto o
archivo

1. En el navegador, seleccione el archivo HTML que contiene la etiqueta <applet>.


2. Para ejecutar el applet, haga clic con el botón secundario en el archivo HTML y

seleccione Ejecutar.
3. En el cuadro de diálogo, seleccione la forma en que desea iniciar el applet de

destino y haga clic en Aceptar:


■ En AppletViewer: El applet se lanzó en el visor de applet.
■ En la instancia del servidor: El servidor integrado, se inicia y se ejecuta en el
applet
El servidor.

19.4.1 utilizando un archivo HTML para almacenar argumentos


Se ejecuta un applet en una página HTML, a partir del cual se obtiene el tamaño
de pantalla y otros
Los parámetros. Para ejecutar un applet en JDeveloper, debe proporcionar un archivo HTML
Que incluya la etiqueta <applet>.
Los nombres de los parámetros son sensibles a mayúsculas y minúsculas, aunque el
parámetro etiquetas no son:
<applet code="foo.class" WIDTH=200 HEIGHT=20> </APPLET>

También puede pasar parámetros al applet mediante la inclusión de una etiqueta <param>
entre el
<APPLET> y </APPLET> Etiquetas:
<PARAM Name=foo valor=true>

Example 19–1 Muestra un fragmento HTML que se utiliza para pasar parámetros.

Ejemplo 19-1 Fragmento HTML que se utiliza para pasar parámetros


<h1>Archivo de prueba</H1>
<HR>
<applet code="Test3.class" WIDTH=500 HEIGHT=120>
Nivel <PARAM Name=value="8">
Ángulo <PARAM Name=value="45">
<PARAM Name=valor delay="1000">
Axioma <PARAM Name=value="F">
<PARAM Name=valor incremental="true">
<PARAM Name=valor incremental="true">
</APPLET>
<HR>
<A HREF="Test3.java">El origen</a>
...

19.5 Cómo ejecutar un proyecto o archivo


Después de la construcción de su proyecto o archivo, puede ejecutarlo.

Para ejecutar un proyecto o archivo:


1. En el navegador, seleccione el proyecto o archivo que desea ejecutar.
2. Ejecutar una aplicación de cualquiera de estas maneras:
■ Para un sólo proyecto, desde el menú principal, elija Ejecutar > Ejecutar Proyecto.
■ En el menú contextual, seleccione Ejecutar.
■ Haga clic en el icono Ejecutar de la barra de herramientas.
El método Main de la aplicación Java es iniciado.

Ejecutar y depurar programas Java 19-3


Cómo ejecutar un proyecto o archivo

19.5.1 Cómo ejecutar un proyecto desde la línea de comandos.


Deben existir las siguientes condiciones para ejecutar un proyecto desde el sistema operativo.
Línea de comandos:
■ El proyecto se trata de un ejecutable independiente.
■ Debe seleccionar el archivo de clase que contiene el método main() de aplicación.

Para iniciar una aplicación:


Introduzca la siguiente información:
Java -cp <jdev_instalación>\jdeveloper\jdev\mywork\Workspace1\Proyecto1\classes
Package1.application1

Para iniciar el archivo Jar ejecutable desde la línea de comandos:


Introduzca la siguiente información:
Java -jar <aplicación>.jar

Donde <aplicación> es el nombre del archivo JAR.

19.5.2 Cómo cambiar la máquina virtual de Java.


Es posible que necesite cambiar la máquina virtual de Java (VM) para el que se están desarrollando
Debido a consideraciones con respecto al sistema operativo. Por ejemplo, para aplicaciones de cliente,
Se utilizaría el HotSpot Client VM, mientras que para la ejecución de servidor de larga duración
Aplicaciones, tendría que utilizar la máquina virtual del servidor.

Para cambiar la máquina virtual de Java:


1. Haga clic con el botón derecho en un proyecto en el navegador y elija Propiedades en el
proyecto
Menú contextual.
2. Abra el run/debug/página de perfil.

3. Seleccione una configuración de ejecución y haga clic en Editar.

Esto abre el cuadro de diálogo Editar configuración de ejecución.


4. En la página Configuración de inicio, en el cuadro de lista de la máquina virtual, seleccione un

disponible
Opción.
La JVM seleccionado se utiliza al ejecutar y depurar el proyecto.
5. Haga clic en Ayuda para obtener información adicional.

19.5.3 Establecer el classpath para programas


Al ejecutar un programa Java desde la línea de comandos, debe proporcionar el Java
Virtual Machine (JVM) con una lista de las rutas de acceso a las bibliotecas y archivos de clase
que
Componen la aplicación. La forma de la classpath cambia dependiendo del
Método que se utiliza para ejecutar el programa Java.
Tus clases de Java pueden almacenarse en Java Archive (*.jar), archivos, o como clase
independiente
(*.Class) archivos en su directorio de paquetes. Existen diferencias en la forma en Java
Gestiona archivos JAR y los directorios de paquetes.
■ Cuando se hace referencia a archivos JAR en tu CLASSPATH, utilice la ruta de acceso
completa
En el archivo JAR.

19-4 . Guía del usuario para Oracle JDeveloper


Cómo ejecutar un proyecto o
archivo

■ Cuando se hace referencia a los directorios de paquetes en su CLASSPATH, utilice la


ruta de acceso a la
Directorio principal del paquete.
■ Puede referirse tanto a los frascos y los directorios de paquetes en una declaración de
CLASSPATH.
Cuando se hace referencia a más de un CLASSPATH en la misma declaración, cada
CLASSPATH se separan con un punto y coma (;).
Una vez que se ha definido la variable classpath, pasa el valor a la JVM en diferentes maneras,
Dependiendo de cómo se ejecuta el programa Java.
■ Establezca la variable de entorno CLASSPATH para ejecutar una aplicación
independiente con
Java.exe.
■ Establezca la variable de entorno CLASSPATH para.use la opción -classpath de
Java.exe.
■ Incrustar el CLASSPATH en la etiqueta <applet> de unarchivo .html para ejecutar
un applet en
Un navegador de Internet.
Usted tiene la opción de utilizar la opción -classpath cuando llama a una herramienta de SDK
(El método preferido) o estableciendo la variable de entorno CLASSPATH.

19.5.3.1 establecer la variable de entorno CLASSPATH (para java.exe)


La java.exe está incluido como parte del Java 2 Standard Edition (J2SE). Se destina a
Puede utilizarse como una herramienta de desarrollo, y no tiene licencia para la distribución con Java
Los programas. Se utiliza para probar sus aplicaciones Java desde la línea de comandos.
A fin de ejecutar una aplicación Java desde la línea de comandos, el entorno del
sistema
Debe definirse la variable CLASSPATH para incluir todas las clases necesarias para ejecutar
Su programa. Esto incluye cualquier biblioteca clases proporcionadas con JDeveloper que
su
Programa utiliza.

19.5.3.2 Con el JDeveloper Biblioteca CLASSPATH


JDeveloper buques cientos de biblioteca de clases para ayudarle a generar sus programas
Java.
Las clases provienen de J2SE, los desarrolladores de terceros, y Oracle Corporation. Cada
uno de
Las bibliotecas se mantienen separadas para una fácil actualización. Como resultado, algunos
archivos pueden
Necesitan ser incluidos en su classpath para asegurarse de que cualquier programa que crea en
JDeveloper puede ejecutarse desde el símbolo del sistema.
Oracle recomienda listar sólo las rutas de acceso a cada una de las bibliotecas que su
Project usa. Si Usted lista de rutas que su proyecto no utilice, el programa seguirá
Ejecutar, pero por motivos de rendimiento, se desea eliminar cualquier bibliotecas
innecesarias.
El comando para configurar la variable CLASSPATH tiene este formato:
Set CLASSPATH=ruta1;ruta2 ruta3;...;path_n
Nota: Nunca use comillas en el classpath incluso cuando hay
Un carácter de espacio en uno de los trazados.

19.5.3.3 Establecer el classpath para incluir tus proyectos


Si ha utilizado el directorio predeterminado para la ruta de salida, puede probar su
Java
Aplicación que utiliza java.exe añadiendo el siguiente directorio a CLASSPATH:
C:\<jdev_instalación>\jdeveloper\jdev\mywork\Workspace1\Proyecto1\classes

Ejecutar y depurar programas Java 19-5


Sobre el depurador

Tras definir esta variable, puede utilizar java.exe para ejecutar la aplicación desde el
Directorio de salida mywork.
Si ha implementado el programa Java a cualquier otro directorio, usted necesita agregar el
Ruta del directorio principal del paquete de aplicación.
La variable CLASSPATH es una larga cadena que puede ser difícil de escribir con exactitud. A
Ahorre tiempo y reduzca los errores, puede establecer el CLASSPATH como un entorno de sistema
Variable.

19.5.3.4 Configuración del parámetro CLASSPATH (para java.exe)


El motor de tiempo de ejecución de Java (java.exe) no utiliza el entorno CLASSPATH
Variable. El CLASSPATH debe incluirse como un parámetro para el comando java.exe.
El formato del comando es:
Java -cp <classpath> package.Application

Cuando se completa la classpath CLASSPATH para tu programa Java y la dependencia


Las clases que utiliza. Las comillas son opcionales si no hay espacios en cualquiera de los
Los nombres de los directorios de CLASSPATH.

19.5.3.5 Incrustando los parámetros CLASSPATH en la etiqueta <applet>


Al ejecutar applets, el navegador utiliza un CLASSPATH que suministre en el archivo.
Y CODEBASE parámetros para la etiqueta <applet> host en el archivo *.html.
El parámetro CODEBASE Establece el directorio raíz donde buscará el navegador de Internet.
Para sus archivos de clase. Si las clases se almacenan en el mismo directorio que la página HTML
Llamar el applet, se puede omitir el parámetro CODEBASE totalmente. De lo contrario, utilice
Una ruta de acceso absoluta o relativa del archivo HTML para la ubicación de la base
Directorio. Utilice barras diagonales (/), no las barras invertidas (\) para indicar directorios.
El parámetro archivo enumera las ubicaciones y los nombres de los archivos JAR que contienen
El programa y sus archivos de biblioteca de soporte, similar a la utilizada con CLASSPATH
Las aplicaciones. Hay tres diferencias importantes:
■ Los nombres de los archivos Java están separados por comas (,), punto y coma (;).
■ Si el Java Archive archivos en los subdirectorios de la base, utilice reenviar
Barras diagonales (/), no las barras invertidas (\) para indicar directorios.
■ Debido a las limitaciones aplicadas por el modelo de seguridad de Java applets, clases
Referenciado por el parámetro archivo sólo pueden ser ubicados en subdirectorios de
El directorio codebase. Esto significa que si intenta establecer la ubicación de una
Archivo utilizando un directorio padre (../), recibirá un error de violación de seguridad.

19.6 sobre el Depurador


La depuración es el proceso de localizar y corregir errores en los programas. El
JDeveloper depurador integrado le permite depurar aplicaciones Java, applets,
Los servlets, JavaServer Pages (JSP), y Enterprise JavaBeans (EJB). Puede depurar un
Uno o varios objetos en la misma máquina o en otra diferente como JDeveloper admite
Distribuye la depuración.
El Depurador le proporciona un número de características para investigar su código, y
Identificar y corregir las áreas problemáticas. Los dos tipos de depuración están disponibles para
analizar su
Código - local y remota.
Una sesión de depuración local se inicia mediante el establecimiento de
puntos de interrupción en los archivos de código fuente y, a continuación,
Iniciar el depurador. Al depurar una aplicación como un servlet en JDeveloper,
19-6 Guía del usuario para Oracle JDeveloper
Sobre el depurador

Usted tiene control total sobre el flujo de ejecución y puede ver y modificar valores de
Las variables. También puede investigar el rendimiento de las aplicaciones mediante la
supervisión de la clase
Recuentos de instancia y el uso de la memoria. JDeveloper seguirá llamadas desde su
aplicación
En otros archivos de código fuente, o generar clases stub para archivos de origen que no
están disponibles.
La depuración remota requiere dos JDeveloper procesos: un depurador y un código depurado que
Pueden residir en una plataforma diferente. Una vez que se inicia el proceso depurado y el
Proceso depurador conectado a ella, la depuración remota es similar a la depuración local.
JDeveloper proporciona una serie de ventanas de depuración para fines especiales que
permiten
Usted identificar eficientemente las áreas problemáticas en el código:
■ La ventana Puntos de interrupción muestra los puntos de interrupción para el área de
trabajo actual y
Proyecto. Para obtener más información,
consulte Section 19.7.1, "Using the Breakpoints Window."
■ La ventana inteligente de datos muestra los datos que está siendo utilizado en el
código
Se recorre. Para obtener más información, consulte Section 19.7.2, "How to Use
the Smart Data Window."
■ La ventana de datos muestra los argumentos y las variables locales de la actual
Contexto. Tenga en cuenta que la información de depuración completa debe estar
seleccionada en la página del compilador
Cuadro de diálogo Propiedades del proyecto. Para obtener más información,
consulte Section 19.7.3, "How to Use
the Data Window."
■ Los relojes ventana muestra los valores observados para un programa. Un reloj
Evalúa una expresión según el contexto actual. Si se desplaza a un nuevo
Contexto, la expresión es reevaluado para el nuevo contexto. Para obtener más
información,
Section 19.7.4, "How to Use the Watches Window."
■ La ventana del Inspector muestra un solo elemento de datos en su propia ventana
flotante. Un
Inspector evalúa una expresión según el contexto actual. Para obtener más
Información, consulte Section 19.7.5, "How to Use the Inspector Window."
■ El heap ventana muestra información acerca de la pila en el programa en el que se
Depuración y le ayuda a detectar fugas de memoria en su programa. Para obtener más
Información, consulte Section 19.7.6, "How to Use the Heap Window."
■ La pila ventana muestra la pila de llamadas para el subproceso actual. Para obtener más
Información, consulte Section 19.7.7, "How to Use the Stack Window."
■ Las clases ventana muestra información acerca de las clases que se han
Cargados como se ejecuta la aplicación, incluidos el nombre y el paquete de cada clase.
El depurador puede mostrar también el número de vivir las instancias de cada clase y la
Cantidad de memoria consumida por dichas instancias. Para obtener más información,
Section 19.7.8, "How to Use the Classes Window."
■ Los monitores de la ventana muestra información para monitores activos en su
Aplicación, así como información sobre el estado de las roscas que acceden a estos
Los monitores. Esta ventana es útil para examinar los interbloqueos y otro subproceso
Problemas de sincronización. Para obtener más información,
consulte Section 19.7.9, "How to Use
the Monitors Window."
■ La ventana Subprocesos muestra las roscas y los grupos de subprocesos, resalta el
Subproceso Actual y muestra el nombre, el estado, la prioridad y el grupo de cada
subproceso. Para
Si desea más información, consulte Section 19.7.10, "How to Use the Threads Window."
Puede abrir el depurador de Windows seleccionando Ver > depurador.

Ejecutar y depurar programas Java 19-7


Sobre el depurador

19.6.1 comprender los iconos del depurador


Table 19–1 Contiene los distintos JDeveloper depurador y iconos de los corredores. Estos iconos son
Disponible a partir de áreas en el JDeveloper interfaz de usuario, incluyendo la ventana del
depurador
Y la ventana de registro.

Tabla 19-1 Depurador y runner iconos


Icono Nombre Descripción
Array Representa una clase array en cualquier JDeveloper
Ventana relacionadas con datos.
Add breakpoint Representa el punto de corte utilizado para los botones de la barra
de herramientas
Crear un punto de interrupción.
Menú breakpoints Representa la vista > > Puntos de interrupción del depurador
Opción de menú o el icono de tabulación para los puntos de
interrupción
Ventana.
La clase Representa la vista > Menú > Clases de depurador
Opción, el icono de tabulación para las clases y una ventana
Clase en la ventana Clases (atenuado si la clase
Seguimiento ha desactivado).
Clase sin número de línea Aparece en la ventana de las clases. Representa un
Tablas Clase que no tienen tablas de número de línea
Obfuscated (clase)
Punto de ejecución actual Representa el punto de ejecución actual se muestra en la
El editor de código fuente margen que puede mostrar
Eligiendo Ejecutar > Mostrar punto de ejecución
Opción de menú.
Subproceso Actual Representa el subproceso actual en las roscas
Ventana.
Datos Representa la vista > Menú > Datos del depurador
Opción; el depurador Ver > > Smart Data
Opción de menú; y el icono de tabulación de los datos
Ventana y ventana de datos inteligente.
Debug (Shift + F9). Representa el Ejecutar > Depurar <project_name>
Opción de menú; el botón de la barra de herramientas de
depuración, un
Proceso de depuración que figura en los procesos
Carpeta en el administrador ejecutar Navigator, una página de
registro
Para un proceso de depuración, el diseño y la depuración
La depuración remota de proyectos y perfiles.
Asistente
Nodo escucha de depuración Representa un nodo en el listener de depuración Ejecutar >
Manager navigator.
Con el esquema de depuración Representa el Ejecutar > Depurar con esquema
<project_name> opción de menú. Le permite crear una
Diagrama de secuencia UML durante la depuración.
Breakpoint desactivado Representa un breakpoint desactivado en la fuente
Margen de editor y un breakpoint desactivado en el
Ventana Puntos de interrupción. El icono representa también el
Botón de la barra de herramientas de punto de interrupción para
deshabilitar un punto de interrupción
Delete Breakpoint Representa el punto de interrupción al botón de la barra de
herramientas
Quitar un punto de interrupción.
Editar breakpoint Representa el punto de interrupción, botón de barra de
herramientas
Se puede utilizar para editar el punto de interrupción
seleccionado

19-8 Guía del usuario para Oracle JDeveloper


Sobre el depurador

Tabla 19-1 (Cont.) Depurador y runner iconos


Icono Nombre Descripción
La recolección de basura Representa el menú Ejecutar > Recogida de basura
Opción y el botón de la barra de herramientas de recogida
de basura
Que puede hacer clic
Interface Representa una interfaz en la ventana Clases
Heap Representa la vista > Depurador > menú de montón
Opción y el icono de la pestaña Ventana Pila
Carpeta de montón Representa una carpeta en la ventana del montón.
Método Representa un método en la ventana Pila
Monitores Representa la vista > Depurador > Monitores.
Opción de menú y el icono de tabulación de los monitores
Ventana.
Objeto Representa un objeto en cualquier JDeveloper
Ventana relacionadas con datos
Paquete Representa un paquete en la ventana Clases
(Atenuado si el paquete tiene una localización
deshabilitada)
Pausa Representa la opción Ejecutar > Menú de pausa y la
Pausa Botón de barra de herramientas que puede hacer
clic.
Primitive Representa un elemento primitivo en cualquier JDeveloper
Ventana relacionadas con datos.
Reanudar Representa la opción de menú Ejecutar > Reanudar y
El Curriculum de botón de barra de herramientas que puede
hacer clic.
Ejecutar Representa un proceso en ejecución en el administrador
ejecutar
Navegador, en una página de registro para un proceso en
ejecución
Y en la barra de herramientas para ejecutar el nodo
seleccionado.
Ejecutar hasta el cursor (F4). Representa el Ejecutar > Ejecutar hasta el cursor menu
Opción. Permite ejecutar y a una ubicación especificada.
Ejecutar el código hasta que llegue esa ubicación
Pila Representa la vista > Menú > Apilar depurador
Opción de icono y en la pestaña de la ventana para la pila.
Carpeta de pila Representa la carpeta estática en la ventana de datos
Paso al final del método Representa el Ejecutar > Paso a finales del método
Opción de menú y el paso al final del método
Botón de barra de herramientas que puede hacer clic.
Paso a paso (F7). Representa el Ejecutar > Paso a la opción del menú y
El paso hacia el botón de la barra de herramientas que
puede hacer clic.
Paso Representa el paso > Ejecutar > opción de menú
Y el botón de la barra de herramientas de un paso que
puede
Haga clic en.
Paso Representa el Ejecutar > Paso a través de la opción de
menú
Y el paso a través del botón de la barra de herramientas
que puede
Haga clic en.
Terminar Representa el botón de la barra de herramientas finalizar
que
Puede hacer clic en detener la depuración de la
aplicación.
Rosca Representa la vista > Menú > Hilos del depurador
Opción y el icono de tabulación para el subproceso de la
ventana.
Roscas Representa la vista > > Hilos del depurador
Opción de menú y el icono de tabulación de los
subprocesos
Ventana.

Ejecutar y depurar programas Java 19-9


Sobre el depurador

Tabla 19-1 (Cont.) Depurador y runner iconos


Icono Nombre Descripción
Grupo de subprocesos Representa un grupo de rosca en las roscas
Ventana.
Punto de interrupción sin verificar Representa un punto de interrupción en la fuente no
verificada
Margen del editor, y un punto de interrupción sin verificar
La ventana Puntos de interrupción

19.6.2 Cómo depurar un proyecto en JDeveloper


El código debe compilarse con información de depuración antes de que pueda hacer uso de
Algunas de las funciones del depurador como ver los argumentos y las variables locales en el
Ventana de datos.

Para establecer puntos de interrupción y paso a paso el código:


1. En un editor de código fuente, establezca un punto de interrupción en una instrucción
ejecutable haciendo clic en el
Margen a la izquierda de la declaración. Para obtener más información, consulte Section 19.8,
"Managing Breakpoints."
Los puntos de interrupción sin verificar el icono aparece en el margen izquierdo.
2. Seleccione Ejecutar > Depurar [filename.java].

La clase se ejecuta y se detiene en el primer punto de interrupción.


3. En la barra de herramientas, haga clic en Paso a paso para realizar el seguimiento de una llamada al

método o haga clic en Paso a


Paso a través de una llamada al método.
4. Mire en la ventana de la pila para examinar la secuencia de llamadas a métodos que trajo
Su programa en su estado actual. Haga doble clic en un método para mostrar los asociados
Código fuente en el editor de código fuente.
5. En el Smart y Datos windows, examinar los argumentos y variables.

6. Mostrar la ventana Subprocesos para ver el estado de otros subprocesos en su programa.

Editar y recompilar:
1. Cuando se han encontrado líneas de código para cambiar, puede terminar la sesión de
depuración
Haciendo clic en Terminar en la barra de herramientas o seleccionando Ejecutar > Terminar.
2. Editar el código en el editor de código fuente.

3. En el navegador, haga clic en el nodo de objeto apropiado.

4. Elija Ejecutar > Crear <filename.java> en el menú principal. Los archivos afectados en
Su proyecto son recompilados, y puede ejecutar el depurador de nuevo.

19.6.3 Cómo depurar componentes ADF


JDeveloper permite depurar con puntos de interrupción con el ADF Declarative
Depurador. Si un error no puede ser fácilmente identificado, puede utilizar el alimentador automático
de documentos (ADF) Declarative
Depurador en JDeveloper para establecer puntos de interrupción. Cuando se alcanza un punto de
interrupción, el
Ejecución de la aplicación se detiene y puede examinar los datos que Oracle
Enlace ADF contenedor tiene que trabajar con, y compararlo con lo que esperan los
datos
Para ser. Dependiendo de los tipos de puntos de interrupción, puede ser capaz de utilizar el paso
Funciones para pasar de uno a otro punto de interrupción.
JDeveloper proporciona tres ventanas para depurar componentes ADF:

19-10 Guía del usuario para Oracle JDeveloper


Sobre el depurador

■ El alimentador automático de documentos (ADF) de la ventana de datos muestra los


datos pertinentes sobre la base de la selección en el ADF.
Estructura de la ventana cuando la aplicación se detiene en un punto de interrupción.
Para obtener más
Información, consulte Section 19.7.3, "How to Use the Data Window."
■ EL evaluador de expresiones EL evalúa la ventana cuando se alcanza un punto de
interrupción
Durante una sesión de depuración. Sólo puede utilizar las aplicaciones JSF el
evaluador.
■ El alimentador automático de documentos (ADF) de la ventana de estructura muestra
una estructura de árbol de objetos en tiempo de ejecución el ADF.
Y sus relaciones cuando la aplicación se detiene en un punto de interrupción. Para
obtener más
Información, consulte Section 3.11.6, "Structure Window."
Puede controlar qué tipo de información se muestra en cada uno de el depurador
Windows. Para ver qué opciones están disponibles en cada ventana como qué
columnas
Pantalla, haga clic con el botón derecho del ratón en una ventana y
seleccione Preferencias en el menú contextual. O bien,
Puede elegir Herramientas > Preferencias desde el menú principal y ampliar el depurador
Nodo para mostrar una página de preferencias para cada ventana del depurador. También
puede guardar el
Información de depuración como texto o archivo HTML de salida. Para obtener más información,
consulte
Section 19.6.7, "How to Export Debug Information to a File."

Para usar el JDeveloper depurador para controlar la ejecución de un programa:


1. Ejecutar a un punto de interrupción. Para obtener más información,
consulte Section 19.8, "Managing
Breakpoints."
Un breakpoint es un disparador en un programa que, cuando se
alcanza, pausa el programa
La ejecución. Esto le permite examinar los valores de algunas o la totalidad del programa
Las variables. Cuando la ejecución del programa encuentra un punto de interrupción, el
programa
Pausas, y el depurador muestra la línea que contiene el punto de interrupción en la
fuente
Editor.
2. El paso a un método y ejecutar una sola instrucción del programa a la vez. Para obtener más
Información, consulte Section 19.6.11, "Stepping Into a Method."
Si el punto de ejecución se encuentra en una llamada a un método, el comando
paso a paso los pasos
En ese método y coloca el punto de ejecución en la primera instrucción del método.
3. Paso a través de un método. Para obtener más información,

consulte Section 19.6.12, "Stepping Over a


Method."
Si emite el comando paso cuando el punto de ejecución se encuentra en una
Llamada de método, el depurador ejecuta ese método sin parar, en lugar de aumentar
En ella. Instrucciones de programa son ejecutados uno a la vez.
4. Ejecutar en la posición del cursor. Para obtener más información,

consulte Section 19.6.16, "How to Run


to the Cursor Location."
Esto le permite ir a una ubicación específica en el programa sin tener que
Un paso único o establecer un punto de interrupción.
5. Pausar y reanudar el depurador. Para obtener más información,

consulte Section 19.6.17, "How


to Pause and Resume the Debugger."
Puede pausar el programa cuando el programa se ejecuta en el depurador. Usted
Puede usar el depurador para examinar el estado del programa con respecto a
Este programa ubicación. Cuando haya terminado de examinar esa parte del
Programa, usted puede continuar ejecutando el programa.
6. Terminar una sesión de depuración. Para obtener más información,

consulte Section 19.6.18, "How to


Terminate a Debugging Session.".
Cuando haya terminado, usted puede modificar los valores del programa como una forma
de probar hipótesis Bug Fixes
Durante la ejecución de un programa. Si usted encuentra que una modificación corrige un
error de programa, salir de la

Ejecutar y depurar programas Java 19-11


Sobre el depurador

Sesión de depuración, corregir el código del programa, y recompilar el programa para hacer la
corrección
Permanentes.

19.6.4 Cómo configurar un proyecto para la depuración


JDeveloper permite controlar el modo en que su programa está depurado, incluida la activación
Y DESACTIVACIÓN de paquetes y clases y configurar las opciones de depuración remota.

Para configurar las opciones de Remote Debugger debugger y en JDeveloper:


1. Elija Aplicación > Propiedades del proyecto (predeterminado para establecer las preferencias que
se aplican a
Todos los proyectos) o elija Aplicación > Propiedades del proyecto (para definir preferencias
Sólo se aplican al proyecto actual).
2. Active la casilla de verificación Ejecutar/Depurar/ nodo de perfil.

3. Seleccione una configuración de ejecución. Para obtener más información,

consulte Section 19.3, "How to


Configure a Project for Running.".
4. Haga clic en Editar.

5. Seleccione el nodo del depurador.

6. Establezca las opciones sobre el depurador remoto y páginas.

7. Haga clic en Aceptar cuando haya terminado.

19.6.5 Cómo configurar las opciones de inicio del depurador


Configurando la opción Iniciar el depurador, se especifica cómo le gustaría que el
Depurador de comportarse cuando se inicia una nueva sesión de depuración. Concretamente, decidir si
Desea que el depurador para que se ejecute hasta que se alcance un punto de interrupción, o si
desea que el
Depurador para detener cuando alcanza su código del proyecto (por ejemplo, al principio de
El método Main de la aplicación).

Para configurar las opciones de inicio del depurador:


1. Desde el menú principal seleccione Herramientas > Preferencias y abrir la página del depurador.
2. Seleccione una opción de depuración Inicio:

■ Ejecutar hasta un punto de interrupción se produce


Al iniciar la depuración, el depurador hará que el programa en el que se
La depuración ejecutar hasta que se alcance un punto de interrupción.
■ Paso
Al iniciar la depuración, el depurador hará que el programa en el que se
Ejecutar la depuración hasta un método en una clase habilitada para rastreo es alcanzado,
pero
No se detendrá en una clase de método inicializador estático.
■ Paso a paso
Al iniciar la depuración, el depurador hará que el programa en el que se
Ejecutar la depuración hasta cualquier método, incluido un inicializador estático de la clase
Método, es alcanzado.

19.6.6 Cómo iniciar el depurador


Debe generar el proyecto antes de realizar la depuración.
19-12 Guía del usuario para Oracle JDeveloper
Sobre el depurador

Para construir un proyecto e iniciar el depurador:


1. En Navigator, seleccione la aplicación del proyecto.
2. Haga clic con el botón derecho del ratón y seleccione Propiedades del proyecto. Se abre

el cuadro de diálogo Project Properties.


3. Abra la página del compilador.

4. Si no está ya activada, seleccione Full Debug Info.

5. Haga clic en Aceptar para cerrar el cuadro de diálogo.

6. Utilice uno de los métodos siguientes para iniciar el depurador:


■ Para iniciar el depurador con la actual configuración de ejecución, desde la principal
Menú Elija Ejecutar > Depurar <nombre del proyecto>.
■ Para iniciar el depurador mediante su elección de ejecutar, seleccione la configuración
Menú desplegable junto al icono de la barra de herramientas de depuración y haga
clic en el
Ejecute el nombre de la configuración.
Si el proyecto se genera correctamente, se inicia el depurador.

19.6.7 Cómo exportar a un archivo de información de depuración


Puede exportar la información de depuración generados por el JDeveloper depurador a un
Texto o archivo HTML de salida desde cualquiera de las ventanas del depurador.

Exportar la información de depuración para el archivo:


1. Iniciar depuración haciendo clic en la barra de herramientas de depuración.
2. Cuando el depurador se detiene en un punto de interrupción, localizar la ventana del

depurador
Que contenga la información que desea exportar.
3. Haga clic con el botón derecho del ratón en una ventana del depurador y

seleccione Preferencias en el menú contextual.


4. En la siguiente página de preferencias - Depurador Columnas, seleccione qué
Las columnas que desea mostrar u ocultar en la ventana del depurador y el archivo de
salida. Haga clic en
Aceptar para cerrar el cuadro de diálogo de preferencias.
5. En la ventana del depurador, haga clic con el botón secundario y elija Exportar.

6. En el cuadro de diálogo Exportar, escriba el nombre del archivo. Se guardará el

archivo de salida como texto


Archivo con fichas entre columnas y nuevas líneas entre filas. Exportar a una
Archivo HTML, agregue la extensión .html o .htm (case-insensitive).
Si el proyecto se genera correctamente, se inicia el depurador.

19.6.8 usando el Editor de código fuente al depurar


Cuando el depurador se detiene (por ejemplo, en un punto de interrupción después de
completar un paso
Comando, o cuando esté en pausa), el archivo de código fuente de la clase actual se abrirá en
la fuente
Editor y será marcado con el punto de ejecución, como se muestra en la Figure 19–1.

Figura 19-1 Icono del Punto de ejecución


Si JDeveloper no puede localizar el archivo de origen para la clase durante la
depuración, la fuente
No encontrado, se muestra el cuadro de diálogo que le solicita la ubicación del archivo de
origen.
Puede utilizar el editor de código fuente para depurar de las siguientes maneras:

Ejecutar y depurar programas Java 19-13


Sobre el depurador

■ Para establecer un punto de interrupción, haga clic en el editor de código fuente del margen.
■ Para quitar un punto de interrupción, haga clic en el punto de interrupción en el margen del editor de
código fuente.

Figura 19-2 Icono de punto de interrupción

Utilizando los elementos del menú contextual


El depurador agrega varios elementos de menú al menú contextual del editor de código fuente
incluido
Los que se muestran en Table 19–2.

Tabla 19-2 Los elementos del menú contextual


Tema Función
Ejecutar hasta el cursor Permite ejecutar a la posición actual del cursor y ejecutar la
El código hasta que llegue a ese lugar.
Watch (Ctrl+F5). Permite agregar una expresión a los relojes ventana.
Inspeccionar Permite abrir una ventana flotante.
Método paso a paso en el Cursor ejecuta Ejecutar hasta el cursor y, a continuación, los pasos en el método que el
El cursor se encuentra en este momento.

Usando herramientas
El depurador mostrará información sobre herramientas en el editor de código fuente si pasa el
ratón por encima del
Nombre de un elemento de datos. Por defecto, el tooltip mostrará el nombre, el valor y el tipo de
Elemento de datos; proporcionando una forma fácil de inspeccionar rápidamente un elemento de
datos sin añadir en
Ventana de datos o relojes ventana. Si el elemento de datos es una matriz o un objeto, puede
Inspeccione los niños del elemento seleccionado en lo profundo de la jerarquía de objetos. El tooltip
muestra
20 niños de elementos de datos, utilice los botones de desplazamiento para ver el resto de elementos de datos.
Las columnas que se muestran en la información sobre herramientas dependen de la
configuración de la columna que se
Habilitado en Herramientas > Preferencias: Depurador - Página de Tooltip.
Si el proyecto se genera correctamente, se inicia el depurador.

19.6.9 Usar expresiones en el depurador de Java


Java se utilizan expresiones en los relojes ventana, ventana de inspector, Breakpoint
Condiciones y expresiones de registro de punto de interrupción. El depurador acepta expresiones
java
En los formularios se muestra en Table 19–3.

Tabla 19-3 Expresiones aceptadas por depurador de Java


Expresión Java Formulario
Nombre de variable simple Rect.

El acceso al campo Rect.width

Llamada al método MyString.length()


Elemento de la matriz MyArray[3].
Longitud de la matriz MyArray.length

Operación de Comparación Rect.Height == 100


MyArray.length > 7

19-14 Guía del usuario para Oracle JDeveloper


Sobre el depurador

Tabla 19-3 (Cont.) expresiones aceptadas por depurador de Java


Expresión Java Formulario
Operación aritmética Rect.Width * rect.height
X + Y + Z
Operación lógica Frame1.enabled && frame1.visible
TextField1.hasFocus ||2.textField hasFocus
Instancia de operador <mi_value> instanceof java.lang.String.

Operador de desplazamiento X << 2


Y >> 1
Operador binario KeyEvent.modificadores &
Java.awt.event.InputEvent.CTRL_MASK
Pregunta-operación de colon S>5 ? Y*7 : y*4

Nombre de campo estático Java.awt.Color rosa.

Nombre de clase completo JAVA.awt.Color

Si el proyecto se genera correctamente, se inicia el depurador.

19.6.10 moviéndose por el código mientras se depuraba


El JDeveloper depurador permite controlar la ejecución de su programa; puede
Controlar si el programa ejecuta una sola línea de código, todo un método o un
Todo el bloque del programa. , Controlando manualmente cuando el programa debería
ejecutarse y
Cuando se debe hacer una pausa, puede desplazarse rápidamente por las secciones que
usted sabe trabajar
Correctamente y concentrarse en las secciones que están causando problemas. Para obtener
más
Información, consulte Section 19.6.5, "How to Set the Debugger Start Options."
El depurador permite controlar la ejecución del programa en las siguientes maneras:
■ En un método paso a paso
■ Con un método paso a paso
■ Controlar que las clases se remonta a
■ Localizar el punto de ejecución de un subproceso
■ Girando en la posición del cursor
■ Pausar y reanudar el depurador
■ Terminar una sesión de depuración
El paso a paso y a través de comandos ofrecen la manera más sencilla de desplazarse por
El código del programa. Mientras los dos comandos son muy similares, cada una de ellas
ofrece una
Otra manera de controlar la ejecución de código.
El incremento más pequeño por lo que paso a través de un programa es una sola línea de
código.
Programa múltiples declaraciones sobre una línea de texto se tratan como una sola línea
de código:
No se puede depurar múltiples individualmente las declaraciones contenidas en una sola
línea de texto.
El método más sencillo es poner cada instrucción en su propia línea. Esto también hace que
su
Código más legible y fácil de mantener.
Ejecutar y depurar programas Java 19-15
Sobre el depurador

19.6.11 en un método paso a paso


El comando Paso a paso ejecuta una única instrucción del programa a la vez. Si el
Punto de ejecución se encuentra en una llamada a un método, el comando paso a paso los pasos en
que
Método y coloca el punto de ejecución en la primera instrucción del método.
Si el punto de ejecución se encuentra en la última declaración de un método, eligiendo paso
a paso
Causas el depurador para volver desde el método, colocando el punto de ejecución en la línea
De código que sigue a la llamada al método que están regresando.
El término solo se refiere al uso de paso a paso para ejecutar sucesivamente aunque el
Declaraciones en el código del programa.

Puede ejecutar paso a paso un método en cualquiera de las siguientes maneras:


■ Seleccione Ejecutar > Paso a paso.
■ Presione la tecla F7.
■ Haga clic en el botón Paso a paso desde la barra de herramientas.

Figura 19-3 Botón paso a paso

A diferencia de anteriores versiones, JDeveloper no se puede iniciar la depuración pulsando


el paso
En botón. Paso a paso, sólo causará pisando sobre un ya inició la depuración
Proceso.
Cuando configura el depurador para iniciar mediante la ejecución paso a paso, el depurador deje el
programa
Se está depurando hasta ejecutar un método en una clase habilitada para rastreo es alcanzado.
Como depurar, puede entrar en algunos métodos y paso por encima de los demás. Si
Confía en que el método está funcionando correctamente, puede pasar por encima de las llamadas a
ese método,
Sabiendo que la llamada al método no provocará un error. Si usted no está seguro de que un
método
Es bien portado, paso en el método y comprobar si funciona correctamente.

19.6.12 Superando un método


El paso a través de comando, como paso en, le permite ejecutar instrucciones de programa
Uno a la vez. Sin embargo, si el paso a través de comando cuando el punto de ejecución
Se encuentra en una llamada a un método, el depurador ejecuta ese método sin parar (en lugar
De entrar en ella) y, a continuación, coloca el punto de ejecución en la instrucción que sigue a la
Llamada al método.
Si el punto de ejecución se encuentra en la última declaración de un método, eligiendo el
paso más
Causas el depurador para volver desde el método, colocando el punto de ejecución en la línea
De código que sigue a la llamada al método que están regresando.

Puede ejecutar paso a paso un método en cualquiera de las siguientes maneras:


■ Seleccione Ejecutar > Paso a través.
■ Presione la tecla F8.
■ Haga clic en el paso sobre el botón de la barra de herramientas.
Figura 19-4 el paso sobre el botón

19-16 Guía del usuario para Oracle JDeveloper


Sobre el depurador

A diferencia de las versiones anteriores de JDeveloper, no se puede iniciar la


depuración pulsando el
El paso sobre el botón. Paso causará pisando únicamente en un ya inició la depuración
Proceso.
Cuando se ajusta a comenzar por el paso, el depurador hará que el programa en el que se
Ejecutar la depuración hasta un método en una clase habilitada para rastreo es alcanzado, pero
no
Parada en clase método inicializador estático.
Como depurar, puede entrar en algunos métodos y paso por encima de los demás.
Si
Confía en que el método está funcionando correctamente, puede pasar por encima de las
llamadas a ese método,
Sabiendo que la llamada al método no provocará un error. Si usted no está seguro de que
un método
Es bien portado, paso en el método y comprobar si funciona correctamente.

19.6.13 controla qué clases se remonta a


Normalmente, usted debería establecer la localización listas de inclusión y exclusión en las
propiedades del proyecto
Antes de iniciar la depuración. No obstante, si necesita cambiar la localización de incluir y
Excluir las listas, puede hacerlo desde la ventana Clases. Haga clic con el botón derecho del
ratón en las clases
Ventana y elija un seguimiento desde el menú contextual. Aparece el cuadro de diálogo
Seguimiento en
Que puede ajustar la exploración listas de inclusión y exclusión.
Cuando se especifica un paquete para ser incluidos o excluidos de la maqueta, todas
descendente
Clases dentro de ese paquete están incluidas o excluidas como bien a menos que se haya
especificado
Ellos individualmente.
Examine de cerca parte de su programa, puede habilitar el seguimiento de sólo los archivos que
Desea examinar paso a paso en el depurador. Por ejemplo, normalmente no desea paso
A través de clases que se encuentran en la biblioteca de J2SE, porque no va a solucionar en
Ellos; generalmente, sólo desea trazar en sus propias clases.

19.6.14 Cómo avanzar paso a paso a través del comportamiento como guiados por listas de
seguimiento
Si usted excluye una clase o un paquete, y que instruya al depurador entrar en esa
clase,
El depurador se ejecuta directamente a través de ese código sin pausa. El depurador se detiene
En la siguiente línea de código en una clase que no ha sido excluido. El rastreo de incluir y
Excluir las listas se usan para todos los comandos incluidos Paso a paso, paso, paso,
Y así sucesivamente. Mediante estas listas no le impide establecer un punto de interrupción
en una clase
Que ha sido excluido. Si el depurador se detiene en un punto de interrupción, el paso
Los comandos se desactivará.

Para activar el seguimiento de una clase, puede ajustar la exploración incluir o excluir lista
Añadiendo o quitando una clase o un paquete:
1. Haga clic con el botón derecho en un proyecto en el navegador y elija Propiedades en el
proyecto
Menú contextual.
2. Active la casilla de verificación Ejecutar/Depurar/ nodo de perfil.

3. Elija una configuración de ejecución y haga clic en Editar.

4. En el cuadro de diálogo Editar configuración de ejecución seleccione el nodo del

depurador.
5. En las clases de seguimiento y rastreo de paquetes a incluir y clases y
Paquetes para excluir los parámetros, escriba el nombre de los paquetes o clases
Desea incluir o excluir en el campo apropiado, separados por un punto y coma (;).
Alternativamente, haga clic en Editar para abrir el rastreo de paquetes y clases
Incluir/excluir el diálogo y, a continuación, haga clic en Agregar o quitar. Si hace clic
en Agregar, la clase
Y aparece el cuadro de diálogo Explorador de paquetes. Si hace clic en Eliminar, la clase
seleccionada o
Paquete se elimina de la lista de seguimiento apropiado. Desplácese a la clase o

Ejecutar y depurar programas Java 19-17


Sobre el depurador

Paquete que desea agregar y haga clic en Aceptar. La clase o paquete se añade a la
Lista de seguimiento apropiado.
Dejando el incluir listas en blanco, en realidad se está especificando que desea
Habilitar el seguimiento de todos los paquetes excepto aquellos específicamente enumerados en la lista
de exclusión. Para
Ejemplo:
Incluyen:
Excluir:java;javax

19.6.15 Cómo localizar el punto de ejecución de un subproceso


Cuando se está depurando, la línea de código que es el punto de ejecución actual para el
Subproceso actual está resaltada y el punto de ejecución icono aparece en el margen izquierdo de
El editor de código fuente.
El punto de ejecución marca la siguiente línea de código fuente para ser ejecutado por el
depurador.

Para encontrar el punto de ejecución actual:


1. Elija Ejecutar > Encontrar punto de ejecución desde el menú principal.
2. Haga clic con el botón secundario en un subproceso en la ventana Subprocesos y elija Ir a

fuente de hilo.
El depurador muestra el bloque de código que contiene el punto de ejecución en el
Editor de código fuente.

19.6.16 Cómo ejecutar en la posición del cursor


Cuando se pasa por el código de la aplicación en el depurador, puede que desee ejecutar
En una ubicación determinada sin tener que solo paso o establecer un punto de interrupción.

Para ejecutar un programa específico ubicación:


1. En un editor de código fuente, coloque el cursor de texto en la línea de código donde
desea que el
Depurador para detener.
2. Ejecutar a la ubicación del cursor en cualquiera de las siguientes maneras:
■ En el editor de código fuente, haga clic con el botón derecho y elija Ejecutar hasta el
cursor.
■ Elija la opción > Ejecutar hasta el cursor en el menú principal.
■ Presione la tecla F4.
Cualquiera de las siguientes condiciones pueden provocar:
■ Cuando utilice el cursor, el programa se ejecuta sin parar, hasta el
Ejecución alcanza la posición marcada por el cursor de texto en el editor de código fuente.
■ Si tu programa nunca se ejecuta la línea de código donde el cursor de texto,
El comando Ejecutar hasta el cursor hará que el programa se ejecute hasta que encuentra un
Punto de interrupción o cuando el programa termina.

19.6.17 Cómo pausar y reanudar el depurador


Puede pausar el programa cuando el programa se ejecuta en el depurador. Puede
A continuación, utilice el depurador para examinar el estado del programa con respecto a esta
La ubicación del programa. Cuando haya terminado de examinar esa parte del programa, usted
Luego puede continuar ejecutando el programa.
Cuando se utiliza el depurador, el programa puede estar en uno de dos estados posibles:
Ejecutando o pausado por el depurador. Cuando el programa está esperando la entrada del
usuario,

19-18 Guía del usuario para Oracle JDeveloper


Sobre el depurador

Se considera aún en funcionamiento. Cuando el programa se encuentra en el modo de


funcionamiento, la pausa es
Disponible. Cuando el programa está en pausa por el depurador, el depurador disponible
Botones incluyen Reanudar, paso a paso , y.

Puede poner en pausa el depurador de las siguientes maneras:


■ Elija Ejecutar > Pausa en el menú principal.
■ Haga clic en el icono de pausa de la barra de herramientas de depuración.

Figura 19-5 Icono de pausa

Su programa puede ser pausada en una ubicación para la que no hay código fuente
disponible. En
Este caso, la fuente no encontrado, se muestra el cuadro de diálogo que le solicita el
archivo de origen
Ubicación o si desea generar archivos apéndice.
Además, el programa puede ser pausada en una ubicación donde está deshabilitado
porque el rastreo
La clase está en la lista de exclusión de rastreo. Por ejemplo, su programa puede estar en
pausa en el
JAVA.lang.Object. método Wait.
Mientras que el depurador se detiene, puede forzar la recolección de basura a ocurrir. Los
resultados de
La recolección de basura se reflejan inmediatamente en las clases y la ventana del montón.
Esto permite buscar fugas de memoria en su aplicación.
Para reanudar el depurador cuando está en pausa, elija Ejecutar > Reanudar.

19.6.18 Cómo terminar una sesión de depuración


A veces, mientras se depura, encontrará que es necesario reiniciar el programa desde el
Principio. Por ejemplo, es posible que tenga que reiniciar el programa si paso el pasado
Ubicación de un bug.

Para terminar la sesión de depuración actual:


■ Elija Ejecutar > Terminar - <Nombre del programa> opción de menú, o
■ Haga clic en Finalizar en la barra de herramientas de depuración.
Terminar una sesión de depuración cierra todas las ventanas del depurador. Sin embargo,
esta acción
No eliminar ningún punto de quiebre o relojes que ha establecido, lo que hace fácil
Reiniciar una sesión de depuración.

19.6.19 Cómo ver el registro del depurador


El Depurador muestra información de registro sobre el proceso de depuración. Puede ver
El Debugger Registrar en cualquier momento mientras el proceso depurado está todavía activo.

Para ver el registro de depuración mientras el proceso sigue activo, utilice uno de los dos
Siguientes formas:
■ En el menú Ver, seleccione Depurador y, a continuación, seleccione Registrar.
■ En la ejecute Manager, haga clic con el botón secundario en el proceso y
seleccione Ver registro en el contexto
Menú.

19.6.20 Cómo depurar un applet


JDeveloper le permite controlar el modo en que su programa está depurado de Applet.

Ejecutar y depurar programas Java 19-19


Sobre el depurador

Para depurar un applet:


1. En el navegador, seleccione el archivo HTML que contiene la etiqueta <applet>.
2. Haga clic en la barra de herramientas de depuración.

Arranca el applet. El depurador se detiene en los puntos de interrupción que se han fijado en
su
El código fuente del applet.

19.6.21 Cómo depurar un programa Javascript.


JDeveloper permite controlar cómo se depura un programa Javascript, incluidos
La configuración de tu navegador para que la depuración remota.

Para configurar las opciones del depurador de Javascript en JDeveloper:


1. Elija Aplicación > Propiedades del proyecto (predeterminado para establecer las preferencias que
se aplican a
Todos los proyectos) o elija Aplicación > Propiedades del proyecto (para definir preferencias
Sólo se aplican al proyecto actual).
2. Active la casilla de verificación Ejecutar/Depurar/ nodo de perfil.

3. Seleccione una configuración de ejecución. Para obtener más información,

consulte Section 19.3, "How to


Configure a Project for Running."
4. Haga clic en Editar.

5. Seleccione el nodo de Javascript en la configuración de lanzamiento.

6. Seleccione su navegador.

Elige Firefox/Mozilla y tendrás más opciones para controlar tu Javascript


La depuración. Si JDeveloper no está ya configurado para Firefox como la depuración
Explorador, siga estos pasos:
■ Introduzca la ruta del archivo ejecutable del navegador Firefox firefox.exe () en
el navegador
Línea de comandos, o haga clic en Examinar y seleccione el archivo ejecutable.
■ Haga clic en Instalar extensión depurado en el botón del navegador para instalar el
La depuración de extensión en Firefox. Firefox se abre con una página que provee un enlace.
Para instalar la extensión. Haga clic en Instalar para Windows OracleJSDebugAgent
Link e instale la extensión del agente de depuración de Javascript de Oracle. Reiniciar
Firefox
Para completar la instalación.
7. Haga clic en Aceptar para cerrar el cuadro de diálogo Editar configuración de ejecución y, a

continuación, cerrar el proyecto


Cuadro de diálogo de propiedades.

Para depurar un programa en Javascript:


1. En el Application Navigator, seleccione el código HTML/JSP/js que contiene el
El código de Javascript.
2. Haga clic con el botón derecho del ratón y elija Depurar desde el menú de contexto.

3. En el cómo debe ser la meta del diálogo iniciado, si depura un archivo JS o un


Servidor de archivos HTML sin programación, seleccione en el explorador sin
arrancar
Instancia de servidor. Si está depurando un archivo JSP o un archivo HTML con el servidor
Programación, elige en la instancia del servidor. Haga clic en Aceptar.
El programa comienza en el navegador Firefox y, en JDeveloper, el depurador se detiene en
El primer punto de interrupción que establezca en el código fuente.

19-20 Guía del usuario para Oracle JDeveloper


Utilizar el depurador de Windows

19.7 utilizando el depurador de Windows


JDeveloper proporciona una serie de ventanas de depuración de propósito especial para
ayudarle a
Analizar el código.

19.7.1 Usando la ventana Puntos de interrupción


Información acerca de establecer puntos de interrupción se puede ver en la ventana Puntos
de interrupción. Para obtener más
Información acerca de esta ventana, incluidos sus opciones de menú contextual, presione la
tecla F1 en el
Ventana Puntos de interrupción.

Para abrir la ventana Puntos de interrupción a muestra una lista de los puntos de interrupción:
■ Elija Ver > Debugger > Puntos de interrupción en el menú principal. Los puntos de
interrupción
Aparece la ventana.

Para cambiar las columnas que se muestran en la ventana Puntos de interrupción:


■ Haga clic con el botón derecho del ratón en la ventana Puntos de interrupción y
seleccione Preferencias en el contexto
Menú. En Columnas, seleccione las columnas que desea mostrar en la
Ventana Puntos de interrupción.
■ O, en la ventana Puntos de interrupción, haga clic con el botón secundario en el
encabezado de las columnas y seleccione el
Los nombres de columna deseada.

19.7.2 Cómo utilizar la ventana de datos inteligente


A diferencia de la ventana que muestra los datos de todos los argumentos, variables
locales y campos estáticos
Para el método actual, la ventana de datos inteligente sólo muestra los datos que parece
Ser relevante para el código fuente que se recorre. Específicamente, el depurador
Analiza el código fuente, cerca del punto de ejecución y considera las variables, campos y
Expresiones que se utilizan en las líneas de código que se recorre.
Para obtener más información,
consulte Section 19.6.15, "How to Locate the Execution Point for a
Thread."
La ventana de datos inteligente muestra además el valor de retorno de un método no void
Cuando se establece un punto de interrupción en el método y emitir un paso al final del
método
Comando o comandos paso a paso para salir. El valor de retorno no se muestran para pasar
por encima de o
Paso en comandos.
De forma predeterminada, el depurador analiza sólo una línea de código para cada
ubicación y análisis
Hasta dos ubicaciones. Puede ajustar esta configuración en el menú
Herramientas > Preferencias.
Depurador - Página de datos inteligente que también puede acceder haciendo clic con el botón
derecho del ratón en el Smart
Ventana de datos y seleccionando Preferencias desde el menú de contexto.

Para abrir la ventana Datos de Smart:


1. Establecer un punto de interrupción en el Editor de código fuente e iniciar una sesión de
depuración.
2. Haga clic en la barra de herramientas de depuración.

3. Cuando el depurador llega un punto de interrupción del depurador, seleccione

Ver > > Smart Data.

Para cambiar las columnas que se muestran en la ventana de datos inteligente:


■ Haga clic con el botón derecho del ratón en la ventana de datos inteligente y
seleccione Preferencias en el contexto
Menú. En Columnas, seleccione las columnas que desea que se muestren en el Smart
Ventana de datos.
■ Alternativamente, en la ventana de datos inteligente, haga clic con el botón
secundario en el encabezado de las columnas y
Seleccione los nombres de columna.

Ejecutar y depurar programas Java 19-21


Utilizar el depurador de Windows

Si el proyecto se genera correctamente, se inicia el depurador.

19.7.3 Cómo usar la ventana de datos


Puede utilizar los datos de la ventana para mostrar información acerca de las variables del programa.
El
Ventana de datos muestra los argumentos, variables locales y campos estáticos para el actual
Contexto, el cual es controlado por la selección en la ventana de la pila. Si se desplaza a un nuevo
Contexto, la ventana de datos se actualiza para mostrar los datos para el nuevo contexto. Si el
La clase actual fue compilado sin información de depuración, usted no será capaz de ver el
Las variables locales. El depurador analiza la variable local las ubicaciones de memoria en la pila
Bastidor para mostrar tanta información como sea posible.

Nota: De forma predeterminada, se muestra la ventana de datos de la variable


local.
Información durante la depuración de un programa. Para desactivar la variable local.
La información en la ventana de datos, desactive la casilla de verificación de la información
de depuración completa
El compilador página del cuadro de diálogo Propiedades del proyecto. La depuración
completa
Info ya está seleccionada por defecto.

Los datos de la ventana también muestra el actual valor de retorno de un método cuando no void
Se establece un punto de interrupción en el método y emitir un paso al final del comando o
método
Paso comando. El valor de retorno no se muestran para Paso o paso a paso
Los comandos.

Para abrir la ventana de datos:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de interrupción.
2. En la barra de herramientas, haga clic en Depurar.

3. Cuando el depurador se detiene en un punto de interrupción del depurador, seleccione

Ver > > Datos de


El menú principal.

Para ver los elementos de la matriz en la ventana de datos:


1. Empezar a depurar el proyecto y abrir ventana de datos.
2. Seleccione la matriz en la ventana de datos y ampliar para ver sus elementos. Si la matriz
Contiene más de 20 elementos, la ventana de datos se muestra en primer lugar con 20
elementos.
■ Para ver la siguiente 20 entradas, haga clic en Siguiente.
■ Para ver las 20 entradas anteriores, haga clic en Anterior.
■ Para ver las 20 primeras entradas, haga clic en Primera.
■ Para ver las últimas 20 entradas, haga clic en Última.
■ Para cambiar el tamaño de pantalla predeterminado de 20, seleccione la matriz, haga clic con el
botón derecho del ratón y seleccione
Ajustar el rango desde el menú contextual y escriba el nuevo valor en el nuevo
Campo de recuento. Haga clic en Aceptar cuando haya terminado.

Para cambiar las columnas que se muestran en la ventana de datos:


■ Haga clic con el botón derecho del ratón en la ventana de datos y seleccione Preferencias en el
menú contextual.
En Columnas, seleccione las columnas que desea mostrar en la ventana de datos.
■ O, en la ventana de datos, haga clic con el botón secundario en el encabezado de las
columnas y seleccione la deseada
Los nombres de columna.
Si el proyecto se genera correctamente, se inicia el depurador.

19-22 Guía del usuario para Oracle JDeveloper


Utilizar el depurador de Windows

19.7.4 Cómo usar la ventana Watches


U n reloj le permite supervisar la evolución de los valores de las variables o expresiones como
El programa se ejecuta. Después de escribir una expresión de inspección, los relojes
ventana muestra
El valor actual de la expresión. Como el programa se ejecuta, el valor del reloj
Cambios como el programa actualiza los valores de las variables en la expresión de inspección.
Un reloj evalúa una expresión según el contexto actual que está
controlado
Por la selección en la ventana de la pila. Si se desplaza a un nuevo contexto, la expresión es
Re-evaluado para el nuevo contexto. Si el punto de ejecución se mueve a una ubicación donde
cualquier
De las variables en la expresión de inspección no están definidos, toda la expresión de inspección
Se convierte en indefinido. Si el punto de ejecución devuelve a una ubicación donde el reloj
La expresión puede ser evaluada, los relojes de nuevo la ventana muestra el valor de la
Expresión de inspección.

Para abrir la ventana de relojes:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de
interrupción.
2. Haga clic en la barra de herramientas de depuración.

3. Cuando el depurador se detiene en un punto de interrupción del depurador, seleccione

Ver > > Relojes


Desde el menú principal.

Para cambiar las columnas que se muestran en la ventana de relojes:


1. Haga clic con el botón derecho del ratón en la ventana relojes y elija Preferencias en el
contexto
Menú. En Columnas, seleccione las columnas que desea mostrar en la
Relojes ventana.
2. Alternativamente, los relojes en la ventana, haga clic con el botón secundario en el

encabezado de las columnas y


Seleccione los nombres de columna

Para añadir un reloj:


■ Haga clic con el botón derecho en un elemento en la ventana de datos y elija Ver en el
menú contextual.
■ Arrastre y suelte las variables, campos y objetos de la ventana de datos de los relojes
Ventana.
■ Seleccionar texto en el editor de código fuente, haga clic con el botón derecho y
elija Observar en el contexto
Menú.

Para ver un campo estático:


Introduzca el nombre completo de la clase seguido de un punto (.) y el nombre del campo.
Para
Ejemplo:
Java.io.file.separator

Para ver la excepción actual mientras está detenido en un punto de interrupción de excepción,
escriba:
_Throw

19.7.5 Cómo usar la ventana del inspector


La ventana del inspector le permite singularizar una variable seleccionada, campo u objeto,
y
Muestra la misma información que está disponible en el Reloj o ventanas de datos. Para
obtener más
Información sobre esta ventana, incluyendo sus opciones de menú contextual, presione la
tecla F1 en el
Ventana de inspector.

Ejecutar y depurar programas Java 19-23


Utilizar el depurador de Windows

La ventana del inspector es ligeramente diferente de la de otras ventanas que flote por
Por defecto, y puede tener varias instancias de ventanas de inspector. Cada inspector
Ventana contiene un elemento de datos. Puede arrastrar una ventana a otro inspector y
Dock de ellos juntos.

Para abrir la ventana del inspector:


1. Establecer al menos un punto de interrupción en el Editor de código fuente.
2. Haga clic en la barra de herramientas de depuración.

3. Cuando el depurador llega a un punto de interrupción, seleccione una variable en el Editor de

código fuente
Haga clic con el botón derecho del ratón y seleccione inspeccionar.
Aparece la ventana flotante de la inspección y que contiene la variable seleccionada. Si
Desea inspeccionar algo más, introduzca una nueva expresión o variable en el texto
Campo, o bien, seleccione una de las anteriores de la lista desplegable.
Si no hay ninguna variable o expresión está seleccionado, aparece el cuadro de diálogo
la inspección pre-rellenada
Con el texto bajo el cursor en el editor como expresión a inspeccionar. Haga clic
en Aceptar
Para abrir la ventana del inspector.
Aparecerá la ventana Inspector flotando en el centro de la pantalla, pero puede
Acoplar la ventana Inspector con otras ventanas. Para evitar el acoplamiento, presione la tecla Ctrl
Tecla mientras mueve la ventana. Un inspector evalúa una expresión de acuerdo con la
Contexto actual de la ventana de la pila. Para obtener más información,
consulte Section 19.7.7, "How to
Use the Stack Window."
Si se desplaza a un nuevo contexto, la expresión es reevaluado para el nuevo contexto. Si el
Punto de ejecución se mueve a una nueva ubicación en ninguna de las variables en la expresión
No están definidos, toda la expresión se convierte en indefinido. Si el punto de ejecución devuelve
A un lugar donde la expresión puede ser evaluada, el inspector muestra de nuevo la
El valor de esa expresión.

Para cambiar las columnas que se muestran en la ventana del inspector:


■ Haga clic con el botón derecho del ratón en la ventana del inspector y
seleccione Preferencias en el contexto
Menú. En Columnas, seleccione las columnas que desea mostrar en la
Ventana de inspector.
■ O, en la ventana del inspector, haga clic con el botón secundario en el encabezado de las
columnas y seleccione el
Los nombres de columna deseada.

19.7.6 Cómo utilizar la ventana de montón


El heap ventana muestra información acerca de la pila en el programa en el que se
Depuración y le ayuda a detectar fugas de memoria en su programa. Puede ver todos
Las instancias de una clase, así como el por qué un objeto no ha sido recolectados.
Dos tipos de carpetas se muestran en la ventana del montón:
■ Carpeta de clase
Muestra el nombre de la clase y cuántas instancias de la clase existe en
Memoria y cuando se expande enumera los casos concretos y sus direcciones en la
Montón.
■ Carpeta de ruta de referencia
Contiene todas las referencias de "raíz" que, directa o indirectamente, a un
Objeto específico. Referencias de raíz son los campos estáticos, pila de variables, objetos
anclados. El
Recolector de basura no desechar un objeto si hay cualquier raíz referencias.

19-24 Guía del usuario para Oracle JDeveloper


Utilizar el depurador de Windows

Ampliar una referencia de raíz le mostrará la ruta desde la raíz de referencia


Referencia al objeto especificado.

Para abrir y usar la ventana del montón:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de
interrupción.
2. En la barra de herramientas, haga clic en Depurar.

3. Cuando el depurador llega al punto de interrupción del depurador, seleccione

Ver > > desde el montón


Menú principal.
4. Haga clic con el botón derecho del ratón en la ventana del montón y elija Agregar nuevo

tipo de contexto
Menú. De forma alternativa, puede arrastrar un nodo de clase de las clases ventana en
el montón
Ventana. O bien, haga clic con el botón derecho sobre un nodo de clase en las clases
ventana y elija Mostrar
En montón en el menú contextual. Información sobre las clases aparece en el montón
Ventana.

Para cambiar las columnas que se muestran en la ventana del montón:


■ Haga clic con el botón derecho del ratón en la ventana del montón y
seleccione Preferencias en el menú contextual.
En Columnas, seleccione las columnas que desea que se muestren en el montón
Ventana.
■ Alternativamente, en el montón de la ventana, haga clic con el botón derecho del
ratón sobre el título y seleccione columnas
Los nombres de columna deseada desde el menú de contexto.

19.7.7 Cómo usar la ventana Pila


La pila ventana muestra la pila de llamadas para el subproceso actual. Cuando resalte un
Línea en la ventana de la pila, la ventana de datos, relojes ventana, y todo Inspector
Windows se actualiza para mostrar los datos para el método de resaltado.

Para abrir la ventana de la pila:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de
interrupción.
2. Haga clic en la barra de herramientas de depuración.

3. Cuando el depurador se detiene en un punto de interrupción, desde el menú principal,

seleccione Ver >


Depurador > Pila.

Para ver la pila de un subproceso:


1. Empezar a depurar el proyecto y abrir la ventana de la pila.
2. Seleccione el subproceso de la lista desplegable, por encima de las columnas. La ventana Pila
Refleja inmediatamente la pila de la conversación seleccionada.

Para cambiar las columnas que se muestran en la ventana de la pila:


1. Haga clic con el botón derecho del ratón en la ventana de la pila y
seleccione Preferencias en el menú contextual.
En Columnas, seleccione las columnas que desea que se muestren en la pila
Ventana.
2. Alternativamente, en la ventana de la pila, haga clic con el botón derecho del ratón

sobre el título y seleccione columnas


Los nombres de columna deseada.

19.7.8 Cómo usar las clases ventana


Las clases ventana muestra las clases que han sido cargados y también puede incluir
Información útil, tal como el número de instancias de una clase. En conjunción con el
Ventana de clases, el depurador también incluye una herramienta de recolección de basura
cuando desee

Ejecutar y depurar programas Java 19-25


Utilizar el depurador de Windows

Para forzar una ejecución del recolector de basura de Java. Cuando se ejecuta el recolector de elementos no
utilizados, el
El impacto es visible inmediatamente en la ventana Clases. Usted sólo puede forzar una ejecución
del
Recolector de basura cuando se utiliza una máquina virtual que permite al depurador para hacer
Así.

Para abrir la ventana clases:


1. Establecer un punto de interrupción en el Editor de código fuente e iniciar una sesión de depuración.
2. Cuando el depurador llega un punto de interrupción del depurador, seleccione Ver > > Clases.

Las clases ventana muestra todas las clases que se cargan actualmente, cuántos
Instancias de esa clase están siendo utilizados, y la cantidad de memoria que el número de
Casos requiere.

Para elegir la información que se muestra en la ventana clases:


■ Haga clic con el botón derecho en un elemento en la ventana Clases y elija Preferencias del
Menú contextual. En Columnas, seleccione las columnas que desea mostrar en la
Ventana de clases.
■ Alternativamente, en las clases de la ventana, haga clic con el botón secundario en el
encabezado de las columnas y
Seleccione los nombres de columna.

Para cambiar el orden de visualización ascendente o descendente:


■ Haga clic en la parte superior de cada columna para cambiar el orden de clasificación.
Puede ordenar por:
- Nombre
- Contar
- La memoria
- Archivo
Si la casilla de verificación Mostrar los paquetes está seleccionada de forma
predeterminada, las clases se muestran en un
Estructura de árbol, donde cada rama representa un paquete. Además, el icono y la entrada siguiente
A cada clase o paquete indica si la clase está incluida o excluida de
El rastreo. El icono especial que se muestra en la figura 19-6 para un número de línea de la clase
sin tablas es
Utilizado para las clases para indicar que el seguimiento no es posible porque la clase ha sido
Peladas o ofuscado.

Figura 19-6 Icono que indica que no es posible el rastreo

En la ventana clases, seleccione Preferencias en el menú contextual para seleccionar qué


Ver columnas desde las siguientes opciones:
■ Contar
■ La memoria
■ Archivo

19.7.9 Cómo usar la ventana Monitores


Java soporta multihilo en el nivel del lenguaje mediante el uso de la sincronización.
La sincronización es la coordinación de las actividades y el acceso a datos entre múltiples
Las roscas. El mecanismo que utiliza Java para admitir la sincronización es el monitor. El
Ventana Monitores muestra el estado e información de control para monitores activos.

19-26 Guía del usuario para Oracle JDeveloper


Utilizar el depurador de Windows

Para abrir la ventana Monitores:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de
interrupción.
2. En la barra de herramientas, haga clic en el icono de depuración.

3. Cuando el depurador se detiene en el punto de interrupción del depurador, seleccione

Ver > > Monitores.

Para elegir la información que se muestra en la ventana Monitores:


■ Haga clic con el botón derecho en un elemento en la ventana Monitores y
elija Preferencias del
Menú contextual. En Columnas, seleccione las columnas que desea mostrar en la
Ventana de clases.
■ Alternativamente, en los monitores de la ventana, haga clic con el botón secundario en
el encabezado de las columnas y
Seleccione los nombres de columna.

19.7.10 Cómo usar la ventana Subprocesos


Las roscas de la ventana muestra los nombres y el estado de todas las roscas y rosca
Grupos en su programa.

Para abrir la ventana Subprocesos:


1. Abrir archivos de código fuente en el Editor de código fuente y establecer puntos de
interrupción.
2. Haga clic en la barra de herramientas de depuración.

3. Cuando el depurador se detiene en un punto de interrupción, elija Ver > > Hilos del

depurador
Desde el menú principal.
Los comandos incluidos Paso Paso, paso a paso, y Establecer instrucción siguiente
Aplicar en el subproceso actual. Para seleccionar un subproceso diferente, haga clic
con el botón secundario en un hilo y
Elija Seleccionar subproceso desde el menú contextual.
Cuando resalte un subproceso en la ventana Subprocesos, la ventana Pila
Se actualiza automáticamente para mostrar la pila para el subproceso de resaltado.

Para cambiar las columnas que se muestran en la ventana Subprocesos:


■ Haga clic con el botón derecho del ratón en la ventana Subprocesos y
seleccione Preferencias en el menú contextual.
En Columnas, seleccione las columnas que desea que se muestren en las roscas
Ventana.
■ Alternativamente, en la ventana Subprocesos, haga clic con el botón secundario en el
encabezado de las columnas y
Seleccione los nombres de columna.

19.7.11 Cómo configurar las preferencias para el depurador de Windows


Usted puede elegir para personalizar varios ajustes de la ventana Depurador incluida la
columna
Modo de cambio de tamaño y otras opciones que desee mostrar.

Sugerencia: si el depurador tiene problemas de conexión con el depurado (el


Programa que se está depurando), intente aumentar la conexión reintentar
Ajuste.

Para establecer cualquiera de las preferencias de la ventana Depurador:


1. Elija Herramientas > Preferencias - Página del depurador.
Aparece el panel de depuración con campos personalizables.
2. Realice su selección desde los campos y las opciones proporcionadas.

Ejecutar y depurar programas Java 19-27


Administrar puntos de interrupción

3. Para configurar las opciones para una determinada ventana del depurador, expanda el nodo Depurador
Y haga clic en el nodo de la ventana correspondiente. Por ejemplo, si desea cambiar la
Las columnas mostradas en la ventana de datos inteligente, haga clic en Smart Data.
4. Editar cualquiera de las opciones disponibles como desee.

5. Haga clic en Aceptar cuando haya terminado.

19.8 Administrar puntos de interrupción


Un breakpoint es un disparador en un programa que, cuando se alcanza, se
detiene la ejecución del programa
Le permite examinar los valores de algunas o de todas las variables de programa. Estableciendo
Los puntos de interrupción en las posibles áreas problemáticas de su código fuente, puede ejecutar
su programa
Hasta su ejecución alcanza una ubicación que desea depurar. Cuando su programa
Encuentre un punto de interrupción, la ejecución del programa se detiene y el depurador muestra el
La línea que contiene el punto de interrupción en el editor de código fuente. A continuación,
puede utilizar el depurador
Ver el estado de su programa. Los puntos de interrupción son flexibles ya que pueden
establecer antes
Comenzar la ejecución de un programa o en cualquier momento mientras se está
depurando. Figura 19-7 muestra
Un ejemplo de punto de interrupción en un archivo de código fuente de aplicaciones Java.

Figura 19-7 punto de interrupción en el Editor de código fuente

Los puntos de corte establecidos en las líneas de comentarios, líneas en blanco, declaraciones y
otros non-executable
Líneas de código no son válidos y no serán verificados por el depurador.
El JDeveloper depurador admite un número de diferentes tipos de puntos de interrupción:
■ Los puntos de interrupción de origen
■ Los puntos de interrupción de excepción
■ Método breakpoints

19-28 Guía del usuario para Oracle JDeveloper


Administrar puntos de
interrupción

■ Los puntos de interrupción de clase


■ Los puntos de interrupción de archivo
■ Los puntos de interrupción de interbloqueo
Los puntos de interrupción de interbloqueo son útiles en situaciones donde puede resultar
difícil encontrar el
Fuente del estancamiento. Cuando se produce un interbloqueo de punto de interrupción, el
depurador
Se detiene. El estancamiento punto de interrupción se activa automáticamente cuando se
inicie la depuración.
Información acerca de establecer puntos de interrupción se puede ver en la ventana Puntos
de interrupción.

19.8.1 verificados y no verificados acerca de los puntos de interrupción


Durante la depuración, puede colocar un punto de interrupción a la izquierda de
cualquier línea de código en la
Editor de código fuente. Sin embargo, para un punto de interrupción sea válido, se debe
establecer en un ejecutable
Línea de código. Antes de que un método es ejecutado en primer lugar, el depurador
comprueba todas válidas
Los puntos de interrupción en el método. Los puntos de corte establecidos en las líneas de
comentarios, líneas en blanco
Las declaraciones y otras líneas de código ejecutable no son válidos y no será
Verificado por el depurador.
Cuando un punto de interrupción ha sido verificada como válida, el icono que aparece en el
editor de código fuente
Margen y en la ventana Puntos de interrupción cambia el icono que aparece en Figure 19–8.

Figura 19-8 Icono de punto de interrupción verificada

19.8.2 La comprensión interbloqueos


Un bloqueo se produce cuando uno o más subprocesos en su programa
están bloqueados desde
Tener acceso a un recurso o a la espera de una condición que no puede ser satisfecho. Un
Interbloqueo comunes en Java es un monitor de ciclo de bloque de estancamiento.
Un monitor de ciclo de bloque estancamiento se produce cuando dos o
más subprocesos son incapaces de
Continuar porque cada uno está a la espera de introducir código sincronizado que uno de los
otros ha
Ya introducido.
Example 19–2 Muestra un típico callejón de sincronización de Java.

Ejemplo 19-2 Java Bloqueo de sincronización


Sincronizado (a)
{
...
Sincronizado (b)
{
...
}
...
}

Al mismo tiempo, el subproceso 2 se ejecuta el siguiente código:


Sincronizado (b)
{
...
Sincronizado (b)
{
...

Ejecutar y depurar programas Java 19-29


Administrar puntos de interrupción

}
...
}

U n i n t e r b l o q u e o s e p r o d u c i r á s i e l s u b p r o c e s o 1 e n t r a e n e l sincronizado
(a) como el subproceso 2 entra
El sincronizado (b). Subproceso 1 será impidió entrar sincronizado (b)
Hasta que el subproceso 2 termina el sincronizado (b) y el subproceso 2 será bloqueada de
Introducción sincronizado (a) hasta que el subproceso 1 termina el sincronizado (a). Es un
interbloqueo
También se denomina "abrazo mortal". Se trata de un ejemplo de dos hilos, pero la misma situación
Puede ocurrir por 3, 4, 5, etc. en las roscas. El interbloqueo puede detectar este tipo de punto de
interrupción
De interbloqueo.
Otro tipo de interbloqueo es cuando un subproceso se llama al método Wait sobre un
determinado
Objeto y no hay otros subprocesos llame al método notify sobre ese objeto. Los más comunes
La causa de este tipo de parálisis es la temporización. El subproceso puede tener notificantes llamado
notificar
Antes de que el subproceso en espera llamado esperar. Lo importante que hay que saber acerca de cómo
llamar esperar
Es que, incluso si ya se ha llamado a notificar antes muchas veces, el método wait espera
Hasta notificar es llamado de nuevo. También avise no devolverá ningún tipo de error si no
existe
Subproceso en espera. El punto de interrupción de interbloqueo no puede detectar este tipo de
estancamiento.
Si usted piensa que su programa está colgado, haga clic en Pausa para hacer una pausa en su
programa en el
Depurador, y abrir la ventana Monitores. Tal vez se puede ver que un subproceso es
Espera, investigar el código. Si puede ver que otro subproceso probablemente llamado notificar
Antes de que el primer subproceso denominado espere, hay una situación de estancamiento. Este tipo de
parálisis es muy
Difícil de detectar. Usted debe saber su código con el fin de averiguar qué otros
Rosca deberá notificar han llamado.

19.8.3 La comprensión del estancamiento breakpoint


El JDeveloper depurador establece un estancamiento persistente breakpoint cuando comienza a
ejecutarse.
Un interbloqueo breakpoint es útil en situaciones donde puede resultar difícil
encontrar el
Fuente del estancamiento. Cuando el depurador encuentra un punto de interrupción, el interbloqueo
Depurador se detiene. Puede detectar un monitor de interbloqueo Ciclo de bloque como se ha descrito
anteriormente. El
Ventana Monitores puede ser útil cuando se trabaja con los interbloqueos.
El estancamiento breakpoint tiene las siguientes características:
■ Es un punto de interrupción persistente que se crea automáticamente al utilizar JDeveloper.
■ No se puede eliminar, pero se puede deshabilitar.
■ Se detiene el depurador si un monitor Ciclo de bloque interbloqueo es detectado. Un
monitor
Ciclo de bloque estancamiento se produce cuando dos o más subprocesos son incapaces de
continuar
Porque cada uno está a la espera de introducir código sincronizado que uno de los otros ha
Ya introducido.
El JDeveloper depurador automáticamente crea un estancamiento persistente breakpoint; esto
Punto de interrupción se producirá cuando un monitor Ciclo de bloque es detectado. No se puede
eliminar un
Persistencia de punto de interrupción. No puede crear un nuevo estancamiento breakpoint, pero
puede editar
El actual estancamiento persistente, punto de interrupción.
No todas las máquinas virtuales de Java de detección de interbloqueo de apoyo; por ejemplo, el
HotSpot
VM no admite la detección de interbloqueo.

19.8.4 La comprensión agrupan los puntos de interrupción


Agrupar los puntos de interrupción permiten habilitar un conjunto de puntos de interrupción.
Cuando el depurador llega un
Cierto punto en su código, puede indicar al depurador para habilitar un punto de interrupción o un
Grupo de puntos que previamente se había deshabilitado.

19-30 Guía del usuario para Oracle JDeveloper


Administrar puntos de
interrupción

Por ejemplo, a pesar de que el código podría estar cogiendo


un NullPointerException,
Puede que no se comporta correctamente. En algunos casos, ocurren
NullPointerExceptions
Con mayor frecuencia de lo esperado que el depurador para detener repetidamente para
NullPointerExceptions, incluidos aquellos que no son de ninguna consecuencia para
el código.
Esta situación puede resolverse mediante la creación de un grupo de puntos de
interrupción, agregando este punto de interrupción
Para el grupo, y la desactivación del grupo de punto de interrupción para que el depurador no se
detiene en
Este punto de interrupción durante la depuración.
A continuación, puede crear un punto de interrupción en el código fuente que usted sabe
que está ejecutado sólo
Ante la problemática NullPointerException es arrojado. Puede definir las acciones
Para este punto de interrupción de la fuente de modo que cuando se produce la
interrupción de la fuente,
Activar automáticamente el grupo de punto de interrupción que contiene el punto de
interrupción de excepción.

19.8.5 Cómo editar un breakpoint


JDeveloper permite editar las opciones de un punto de interrupción después de haberlo
agregado en
El código fuente.

Para ver y modificar las opciones de un punto de quiebre:


1. Si la ventana Puntos de interrupción no está abierto, seleccione Ver > > Puntos de
interrupción del depurador
Desde el menú principal.
2. En la ventana Puntos de interrupción, seleccione un punto de interrupción.

3. Haga clic con el botón derecho del ratón y elija Editar, o haga clic en el icono Editar de

la barra de herramientas de punto de interrupción.


Aparece el cuadro de diálogo Editar el punto de interrupción con una ficha Definición,
una ficha Condiciones y
Una ficha Acciones.
4. Realice los cambios necesarios en las opciones de punto de interrupción.

5. Para aceptar los cambios, haga clic en Aceptar.

Desde el cuadro de diálogo Editar puntos de interrupción, puede:


■ Opción de establecer un punto de interrupción.
■ Establecer los hilos a los que se aplicará el punto de interrupción.
■ Establecer un recuento de pasos para el punto de interrupción.
■ Coloque el punto de interrupción en un grupo de punto de interrupción.
■ Elija qué acciones tomará el depurador cuando se produce el punto de interrupción.

Puede hacer clic con el botón derecho para editar un punto de interrupción situado en el editor de
código fuente:
1. Haga clic con el botón derecho del ratón sobre el icono de un punto de interrupción en
la encuadernación del editor de código fuente.
2. Seleccione Editar punto de interrupción.

Aparece el cuadro de diálogo Editar el punto de interrupción, donde puede especificar


la definición de
Punto de interrupción.

También puede pasar el cursor sobre un punto de interrupción en el editor de código fuente:
■ Con el cursor del ratón, desplace el puntero sobre un icono de punto de interrupción
en la cuneta de un editor
Ventana.

Ejecutar y depurar programas Java 19-31


Administrar puntos de interrupción

Figura 19-9 Cuadro de diálogo Editar puntos de interrupción

El cuadro de diálogo emergente que se muestra en la figura 19-9 muestra.


En el cuadro de diálogo, puede editar algunos de los más importantes puntos de
interrupción, tales atributos
Como habilitado/deshabilitado, estado y más.

19.8.6 Cómo establecer puntos de interrupción de la fuente


Fuente breakpoint es un punto de interrupción en el código fuente y es el tipo
predeterminado de
Punto de interrupción.

Puede establecer un punto de interrupción de origen en cualquiera de las siguientes maneras:


■ En el editor de código fuente, haga clic en el margen izquierdo junto a una línea de
código ejecutable.
■ En el editor de código fuente, haga clic con el botón derecho del ratón en el margen
izquierdo junto a una línea de código y, a continuación, elija
Alternar puntos de interrupción (F5).
Elija Ver > > Puntos de interrupción del depurador para mostrar la ventana Puntos de interrupción.

A continuación, haga clic con el botón derecho del ratón en cualquier parte de la ventana y
elija Agregar punto de quiebre de la
Menú contextual. En el submenú, seleccione la fuente como el tipo de punto de interrupción y, a
continuación,
El paquete completo, el nombre de archivo de origen y el número de línea en la información
El diálogo. El nombre de archivo de origen no deberían incluir ninguna información del
directorio, pero
Debe incluir la extensión del archivo. Por ejemplo:
Application1.java o MyWebApp.jsp

Probablemente deseará establecer al menos un punto de interrupción antes de iniciar la


depuración, pero
No es necesario. Mientras el programa se está ejecutando en el depurador, puede establecer
un
Punto de interrupción. El programa se detiene cuando se alcanza el punto de interrupción.

19.8.7 Cómo controlar el comportamiento de punto de interrupción


Puede controlar cómo se comporta el depurador cuando se produce un punto de interrupción.

Para controlar cómo se comporta el depurador cuando se produce un punto de quiebre:


1. En la ventana Puntos de interrupción en la barra de herramientas, haga clic en Add
Breakpoint; o seleccione un punto de interrupción
Y haga clic en Editar.
2. Haga clic en la ficha Acciones en el cuadro de diálogo Nuevo/Editar punto de interrupción. La ficha

Acciones permite
Puede cambiar estos comportamientos:
■ Detener la ejecución (valor predeterminado).
■ Bip
■ Interrupción del registro de ocurrencia (introduzca una etiqueta o una expresión)
■ Activar un grupo de puntos de interrupción
■ Deshabilitar un grupo de puntos de interrupción

19-32 Guía del usuario para Oracle JDeveloper


Administrar puntos de
interrupción

19.8.8 Cómo desactivar y eliminar los puntos de interrupción


Al deshabilitar un punto de interrupción, todos los ajustes de punto de interrupción siendo
definido, pero la
Punto de interrupción no se activa cuando se ejecuta el programa; el programa no se detiene
en un
Breakpoint desactivado. Deshabilitar un punto de interrupción es útil si ha definido un punto
de interrupción
Que no tenga que utilizar ahora, pero podría necesitar en un momento posterior.

Para desactivar los breakpoints:


■ En el editor de código fuente, haga clic en el símbolo de punto de interrupción en
el margen izquierdo y
Elija Deshabilitar punto de interrupción.
■ En la ventana Puntos de interrupción (Ver > > Puntos de interrupción del depurador)
haga clic con el botón secundario en el
Punto de interrupción que desee deshabilitar y seleccione Desactivar.
■ Para deshabilitar un grupo de puntos de interrupción en la ventana Puntos de interrupción,
seleccione el grupo que
Desea deshabilitar, haga clic con el botón derecho del ratón y elegir la
opción Desactivar grupo.
También puede deshabilitar los puntos de interrupción de la barra de herramientas de
punto de interrupción. Seleccione el punto de interrupción
Punto de interrupción o grupo y haga clic en Desactivar en la barra de herramientas.
■ Para deshabilitar todos los puntos de interrupción, haga clic con el botón derecho del ratón en
la ventana Puntos de interrupción, y
Elija Deshabilitar todo desde el menú de contexto.

Para volver a activar los puntos de interrupción deshabilitados:


■ Para habilitar un punto de interrupción que está deshabilitada, haga clic en el símbolo de
punto de interrupción deshabilitado
(O ENTRADA en la ventana Puntos de interrupción), y seleccione Activar.
■ Para habilitar todos los puntos de interrupción que se han ajustado, haga clic con el botón
derecho del ratón en la ventana Puntos de interrupción,
Y si elige Habilitar todas.
■ Para activar un grupo de puntos de interrupción, haga clic con el botón derecho en un grupo
de punto de interrupción en los puntos de interrupción
Ventana y elija Activar grupo.
También puede habilitar los puntos de interrupción de la barra de herramientas de punto
de interrupción. Seleccione el punto de interrupción
Punto de interrupción o grupo y haga clic en Habilitar en la barra de herramientas.

Para eliminar los puntos de interrupción:


Cuando ya no necesite examinar el código en una ubicación de punto de interrupción,
puede eliminar
El punto de interrupción. Puede eliminar los puntos de interrupción o utilizando el editor de
código fuente o en la
Ventana Puntos de interrupción.
■ En el margen izquierdo del editor de código fuente, haga clic en el punto de
interrupción que desea eliminar.
■ En el margen izquierdo del editor de código fuente, haga clic con el botón
secundario en el punto de interrupción que desea
Eliminar y elija Alternar puntos de interrupción.
■ En el editor de código fuente, coloque el cursor en la línea de código que contiene
el punto de interrupción.
Y presione la tecla F5.
■ Para eliminar todos los actualmente establecer puntos de interrupción, haga clic con el botón
derecho del ratón en la ventana Puntos de interrupción y
Seleccione Borrar todo.
■ Seleccione el punto de interrupción en la ventana Puntos de interrupción y haga clic
en Delete Breakpoint en
La barra de herramientas.

Precaución: no puede recuperar un punto de interrupción.

Ejecutar y depurar programas Java 19-33


Administrar puntos de interrupción

19.8.9 Cómo establecer puntos de interrupción de instancia


Los puntos de interrupción normalmente tienen efecto cuando sean alcanzados. Una instancia
breakpoint es
Asociado a una instancia específica de la clase que define el método donde la
Aparece el punto de interrupción.
Una instancia breakpoint breakpoint es una fuente que ha sido asociada con un
Ejemplo filtro que identifica las instancias seleccionadas. Instancia no persisten puntos de interrupción
Entre ejecuciones del depurador. Ejemplo filtros se muestran en el ejemplo columna Filtros
De la ventana Puntos de interrupción.

Para establecer un punto de interrupción de instancia:


1. Establecer el punto de interrupción de la fuente que se va a convertir en una instancia breakpoint. Debe
Estar en un método de la instancia de la clase. Para obtener más información, consulte Section 19.8.6,
"How to Set Source Breakpoints.".
2. Un segundo punto de interrupción en algún punto donde la instancia será deseada
Accesible.
3. Definir la instancia de filtro:
■ Iniciar o reanudar el depurador.
■ Cuando el depurador se detiene en el segundo punto de interrupción, encontrar la
instancia deseada
En la ventana de datos, ventana de datos inteligentes, relojes o ventana.
■ Haga clic con el botón derecho en la instancia, elija instancia filtros, y elija la fuente
Punto de interrupción que se convierta en una instancia breakpoint.
Repita el procedimiento para las demás instancias que desee rastrear.
4. Reanudar el depurador.

El depurador se detiene en el punto de interrupción de instancia sólo para las instancias


seleccionadas.

19.8.10 Cómo establecer puntos de interrupción de excepción


Los puntos de interrupción normalmente están conectadas a una línea concreta de código; se
pausa el depurador
Cuando una determinada línea de código está a punto de ser ejecutado. Además, se puede
configurar un
Interrupción para activarse cuando un determinado tipo de excepción. Excepción
Los puntos de interrupción no están asociados a una determinada línea de código.

Para establecer un punto de interrupción de excepción:


1. En la ventana Puntos de interrupción, haga clic en Agregar punto de interrupción en la barra
de herramientas de punto de interrupción. Desde
El submenú, elija Punto de interrupción de excepción.
La excepción aparece el cuadro de diálogo Crear puntos de interrupción.
2. En la pestaña Definición, escriba o seleccione el nombre de una clase de excepción.
3. Si lo desea, active o desactive la pausa para excepciones detectadas o descanso Uncaught
Excepciones las casillas. Ambas casillas están seleccionadas de forma predeterminada.
4. Haga clic en Aceptar.

El depurador se pausa ahora si una excepción del tipo especificado es lanzada.


De forma predeterminada, el depurador automáticamente crea un punto de interrupción de
excepción persistente
Uncaught tira para java.lang.Throwable. Este punto de interrupción se producirá cuando
Se produce una excepción no capturada. No se puede eliminar un punto de interrupción persistente,
aunque
Se puede deshabilitar.

19-34 Guía del usuario para Oracle JDeveloper


Administrar puntos de
interrupción

19.8.11 Cómo hacer un breakpoint condicional


Cuando usted hace un breakpoint condicional, el depurador se detiene cuando una
determinada
La condición se cumple. Cuando se establece por primera vez un punto de interrupción, el
depurador se detiene el programa
La ejecución cada vez que se encuentra el punto de interrupción. Sin embargo, el uso de la
edición
Los puntos de interrupción del diálogo, puede personalizar los puntos de interrupción de
modo que se activa sólo en
Ciertas condiciones.
La ficha Condiciones en el cuadro de diálogo Editar puntos de interrupción es donde puede
introducir una expresión que
Se evalúa cada vez que el depurador encuentra el punto de interrupción mientras se
ejecuta el
Programa. Si la expresión se evalúa como true, entonces el punto de interrupción se detiene
el programa.
Si la condición se evalúa como false, el depurador no se detendrá en ese punto de
interrupción
Ubicación.
Por ejemplo, supongamos que desea un punto de interrupción para hacer una pausa en
una línea de código sólo cuando el
MediumCount variable es mayor que 10.

Para establecer una condición de punto de interrupción:


1. Establecer un punto de interrupción en una línea de código haciendo clic a la izquierda de la
línea de la fuente
Editor.
2. Abra la ventana Puntos de interrupción del depurador seleccionando Ver > > Puntos de

interrupción.
3. En la ventana Puntos de interrupción, haga clic con el botón secundario en el punto

de interrupción se acaba de configurar y seleccione Edit.


4. En el cuadro de diálogo Editar puntos de interrupción, haga clic en Condiciones.

5. Escriba una expresión en el campo con la condición, por ejemplo, mediumCount > 1

6. Pulse OK.
Puede introducir cualquier expresión válida de lenguaje Java en el cuadro de diálogo Editar
puntos de interrupción, pero todos
Los símbolos de la expresión debe ser accesible desde el punto de interrupción, su ubicación
y el
La expresión no puede contener cualquier método de llamadas. Para una excepción de punto
de interrupción, puede
Desea usar el objeto de excepción en su condición mediante _throw.

También puede hacer doble clic en un punto de interrupción situado en el editor de código fuente
para establecer
Condiciones:
1. Haga clic con el botón derecho del ratón sobre el icono de un punto de interrupción en
la encuadernación del editor de código fuente.
2. Seleccione Editar punto de interrupción.
Aparece el cuadro de diálogo Editar el punto de interrupción, donde puede especificar
condiciones.

También puede pasar el cursor sobre un punto de interrupción en el editor de código fuente para
establecer condiciones:
■ Con el cursor del ratón, desplace el puntero sobre un icono de punto de interrupción
en la cuneta de un editor
Ventana.
Editar puntos de interrupción de diálogo emergente que se muestra en la figura 19-
9 muestra. Puede establecer
Las condiciones en el diálogo.

19.8.12 mediante recuento de pasos breakpoints


El pase de campo Count especifica el número de veces que un punto de interrupción debe
ser aprobada
Para el punto de interrupción para ser activado. Recuento de pasos son útiles cuando usted
piensa que es un bucle
Fallando en la enésima iteración. El depurador se detiene el programa la enésima vez que
la
Punto de interrupción se encontró durante la ejecución del programa. El valor
predeterminado es 1.
Si el Pase columna Count es mostrado en la ventana Puntos de interrupción, puede
ver el pase
Valor de recuento disminuir cada vez que el punto de interrupción de línea de código se
encontró durante el

Ejecutar y depurar programas Java 19-35


Administrar puntos de interrupción

La ejecución del programa. Si el recuento de pasos es igual a 1 cuando la línea de punto de


interrupción es encontrado,
El punto de interrupción se activa y el programa se detiene en esa línea.
Cuando el recuento de pasos se usan junto con las condiciones de punto de interrupción, el punto
de interrupción se detiene
La ejecución del programa, la n-ésima vez que la condición sea true; la condición debe ser
True para el recuento de pasos que se decrementa.

19.8.13 Cómo examinar los puntos de interrupción con la ventana Puntos de interrupción
Para ver la lista de puntos de interrupción, elija Ver > > Puntos de interrupción del depurador del
principal
Menú. Los puntos de interrupción que se han verificado como válidas por el depurador se indican
mediante
El icono se muestra en la figura 19-8. Puede utilizar la ventana Puntos de interrupción para
encontrar rápidamente
La ubicación del punto de interrupción en el código fuente.

Para usar la ventana Puntos de interrupción para localizar un punto de interrupción en el editor de código
fuente:
1. En la ventana Puntos de interrupción, seleccione un punto de interrupción.
2. Haga clic con el botón derecho del ratón y elija Ir a código fuente en el menú contextual.

19.8.14 Cómo administrar grupos breakpoint


Puede activar o desactivar varios puntos de interrupción con una acción única, creando un
Grupo de punto de interrupción y poner breakpoints en ella. Una vez que haya creado un breakpoint
Grupo, puede habilitar, deshabilitar o quitar como un único punto de interrupción.
También puede arrastrar y soltar un punto de interrupción dentro o fuera de un grupo en el punto
de interrupción
Ventana.

Para crear un grupo de punto de interrupción:


1. En la ventana Puntos de interrupción, haga clic con el botón derecho en un punto de
interrupción y elija Editar desde el
Menú contextual.
Aparece el cuadro de diálogo Editar el punto de interrupción.
2. En el campo Nombre de grupo de punto de interrupción, introduzca un nombre de grupo

para este punto de interrupción.


3. Haga clic en Aceptar.

Se crea un nuevo grupo en la ventana Puntos de interrupción, y es indicada


por una carpeta
Icono. El punto de interrupción se acaba de editar se pone automáticamente en el nuevo
grupo.

Para mover un punto de interrupción en un breakpoint grupo:


Arrastre y suelte el punto de interrupción en el grupo de punto de interrupción, o siga estos
pasos.
1. En la ventana Puntos de interrupción, haga clic con el botón derecho en un punto de

interrupción y elija Editar desde el


Menú contextual.
Aparece el cuadro de diálogo Editar el punto de interrupción.
2. Desde el punto de interrupción en el campo Nombre del grupo, seleccione un grupo desde el

punto de interrupción
Lista desplegable, o escriba un nuevo nombre de grupo.
3. Haga clic en Aceptar.

El punto de interrupción se agrega al grupo especificado.


Para habilitar, deshabilitar o quitar un punto de interrupción, de grupo en la ventana Puntos de
interrupción,
Haga clic con el botón derecho en un grupo de puntos de interrupción, y elija Activar
Grupo, Grupo, deshabilitar o eliminar
Grupo en el menú contextual.

19-36 Guía del usuario para Oracle JDeveloper


Examinar el estado del programa en la ventana del
depurador

También puede habilitar o deshabilitar un grupo desde el punto de interrupción en la barra


de herramientas. Con el grupo
Nombre seleccionado en la ventana Puntos de interrupción, haga clic en Activar o desactivar el
icono de la barra de herramientas.
Todos los puntos de interrupción del grupo seleccionado estará activado o
desactivado.

19.9 Examinar el estado del programa en la ventana del depurador


Aunque puede ver su programa en marcha y paso a paso a través de ella, usted
Normalmente es necesario para examinar los valores de variables de programa para
descubrir errores. Para
Ejemplo, es útil saber el valor de la variable de índice como paso aunque un
Loop, o los valores de los parámetros pasados en una llamada a un método. Cuando el
programa es
Pausa en el depurador, puede examinar los valores de variables, argumentos, campos
Y elementos de matriz.

19.9.1 Cómo inspeccionar y modificar elementos de datos


Usted puede inspeccionar y cambiar los valores de los elementos de datos con los datos, los
datos Smart,
Inspector, o relojes windows durante el curso de sus sesiones de depuración.
Cuando se inspeccione un elemento de datos se evalúan con diferentes expresiones
mientras su
Se ejecuta la sesión de depuración. Si lo desea, puede modificar los valores de los datos de
programa como
Una forma de probar hipótesis correcciones de errores durante la ejecución de un programa. Si
usted encuentra que un
Modificación corrige un error de programa, puede salir de la sesión de depuración, arreglar
su
En consecuencia, el código de programa y recompilar el programa para realizar la corrección
permanente.
Puede modificar los valores de los datos de programa durante una sesión de depuración
como una forma de probar
Hipotético de correcciones de errores durante la ejecución de un programa. Si usted
encuentra que una modificación corrige un
Error del programa, puede salir de la sesión de depuración, corregir el código del programa
en consecuencia,
Y recompilar el programa para realizar la corrección permanente.
Cuando se modifica el valor de una variable, la modificación es efectiva para ese específico
Programa ejecutado solamente; los cambios que se realizan a través de los datos o los relojes
de windows
No afecta el código fuente del programa o el programa compilado. Para hacer el cambio.
Permanente, debe modificar el código fuente del programa en el editor de código fuente y, a
continuación,
Volver a compilar el programa.
El nuevo valor debe ser compatible con el tipo de la variable que desea asignar.
Una buena regla general es que si la cesión causaría un tiempo de
compilación o en tiempo de ejecución.
Error, no se trata de una modificación legal valor.

Inspeccionar un elemento de datos:


1. Abra la ventana de datos mientras que el depurador se detiene en un punto de
interrupción.
2. Haga clic con el botón derecho en un elemento en la ventana de datos y

seleccione inspeccionar desde el contexto


Menú.
La ventana del inspector flotante se abre mostrando el nombre del elemento, el valor, y
otros
Información relacionada. Las columnas que se muestran en esta ventana dependen de
esos
Configuración de columnas que estaban habilitados en Herramientas > Preferencias:
Depurador -
Página de inspector. Para obtener más información,
consulte Section 19.7.5, "How to Use the
Inspector Window."
3. Para evaluar el elemento de una expresión, elija Editar expresión desde el contexto
Menú.
También puede agregar una expresión de inspección o inspeccionar el elemento de
datos.
4. Cuando termine, cierre la ventana del inspector.

Ejecutar y depurar programas Java 19-37


Examinar el estado del programa en la ventana del depurador

Inspeccionar rápidamente un elemento de datos:


Si sólo desea ver un valor del elemento de datos y no desea evaluarlo para cualquier
Expresión, puede utilizar la función de Inspección rápida.
1. Abra la ventana de datos mientras que el depurador se detiene en un punto de interrupción.

2. Configurar los datos de la ventana para mostrar la columna de Inspección rápida. Haga clic con

el botón secundario en
La cabecera de la ventana de datos columnas y elija Inspección rápida. La rápida
Inspeccionar es la primera columna de la ventana.
3. Seleccione el elemento de datos y haga clic en el icono esférico de color verde.

4. S e a b r e u n a v e n t a n a s e c u n d a r i a q u e m u e s t r a a l o s n i ñ o s d e l e l e m e n t o

seleccionado, permitiéndole
Inspeccionar variables rápidamente profunda en una jerarquía de objetos. La inspección
rápida de windows
Se cierran automáticamente cuando se mueve el puntero del ratón fuera del elemento de datos.
JDeveloper también le permite inspeccionar un elemento de datos sin añadir en la ventana de
datos.
Cuando el depurador se detiene en un punto de interrupción en el Editor de código fuente,
coloque el puntero del ratón
A través de un elemento de datos para ver su nombre, valor y tipo. Si el elemento de datos es un
objeto o
Una matriz, puede inspeccionar los niños del elemento seleccionado en lo profundo de la jerarquía
de objetos.

Para modificar el valor de una variable en la ventana de datos:


1. Abra la ventana de datos mientras que el depurador se detiene en un punto de interrupción.
2. Haga clic con el botón derecho en un elemento en la ventana de datos y elija Modificar

valor de la
Menú contextual.
Aparece el cuadro de diálogo para modificar el valor seleccionado con el nombre del
elemento y su actual
Valor.
3. Introducir un nuevo valor para el elemento.
■ Si se modifica un valor primitivo, puede introducir un nuevo valor.
■ Si está modificando una referencia de puntero (distinta de una cadena), puede
introducir el
Dirección de memoria de un objeto existente o matriz.
■ Si se modifica una cadena, puede introducir un nuevo valor de cadena o el
Dirección de memoria de una cadena existente.
4. Haga clic en Aceptar para cambiar el valor del elemento y cerrar el diálogo.

El nuevo valor aparece en los datos, los datos Smart, Inspector o relojes de windows.

19.9.2 Cómo configurar Expression relojes


U n reloj le permite supervisar la evolución de los valores de las variables o expresiones como
El programa se ejecuta. Después de especificar una expresión de inspección, la ventana
Inspección muestra
El valor actual de la expresión. Como el programa se ejecuta, el valor del reloj
Cambios como el programa actualiza los valores de las variables en la expresión de inspección.
Un reloj evalúa una expresión según el contexto actual que está controlado
Por la selección en la ventana de la pila. Si se desplaza a un nuevo contexto, la expresión es
Reevaluado para el nuevo contexto. Si el punto de ejecución se mueve a una ubicación donde
cualquier
De las variables en la expresión de inspección no están definidos, toda la expresión de inspección
Se convierte en indefinido. Si el punto de ejecución devuelve a una ubicación donde el reloj
La expresión puede ser evaluada, los relojes de nuevo la ventana muestra el valor de la
Expresión de inspección.

Para abrir la ventana de relojes:


■ Elija Ver > > Relojes depurador desde el menú principal.

19-38 Guía del usuario para Oracle JDeveloper


Examinar el estado del programa en la ventana del
depurador

Para añadir un reloj desde el Editor de código fuente:


1. Seleccione la expresión que desea ver con el cursor.
2. Haga clic con el botón derecho del ratón y seleccione Ver en el menú contextual para

agregar la expresión a la
Relojes ventana.
Aparece un cuadro de diálogo con la expresión.
3. Editar la expresión, si es necesario.

4. Haga clic en Aceptar.

O bien, agregar un reloj de las siguientes maneras:


■ Seleccione un elemento de datos en la ventana de datos. A continuación, haga clic con el
botón derecho del ratón y seleccione Ver.
■ Haga clic con el botón derecho del ratón en la ventana relojes y elija Agregar
inspección.
■ Utilice el ratón para arrastrar un elemento de datos de la ventana de datos y colóquelo
en el
Relojes ventana.

Para editar un reloj:


1. Seleccione la expresión en los relojes ventana y, a continuación, haga clic con el botón
derecho del ratón y seleccione Editar.
Watch.
Aparece el cuadro de diálogo Modificar los elementos a controlar.
2. Introduzca una expresión nueva o modificar la existente y haga clic en Aceptar.

Para eliminar un reloj:


■ Seleccione la expresión en los relojes ventana, presione la tecla Supr o haga clic con el botón
derecho
Ver y seleccionar Eliminar en el menú contextual. También puede eliminar todos los
Relojes eligiendo Eliminar todos los relojes desde el menú de contexto.

Precaución: no puede restaurar el borrado de un reloj.

19.9.3 Cómo modificar las expresiones en la ventana Inspector


Puede modificar una expresión existente en la ventana del inspector.

Para modificar una expresión en la ventana Inspector:


1. En la ventana del inspector, haga clic con el botón derecho del ratón y elija Editar
expresión desde el contexto
Menú.
Aparece el cuadro de diálogo Editar expresión.
2. Introduzca una nueva expresión.

3. Haga clic en Aceptar.

19.9.4 Cómo mostrar y ocultar los campos de la lista de clases de filtrado


Durante la depuración, puede utilizar filtros para reducir el número de campos que se
muestran
Al expandir un objeto en una ventana del depurador relacionadas con datos. Puede
realizar este
Tarea en la ventana de datos inteligente, la ventana de datos, la ventana del inspector, los
relojes
Ventana, y el lado izquierdo de la ventana monitores a través del objeto
Cuadro de diálogo de preferencias. Mostrar menos campos limita su enfoque a la hora de
depurar y
Puede hacer que sea más fácil de localizar y aislar problemas potenciales en su programa.

Ejecutar y depurar programas Java 19-39


Depurar programas Java remotos

Por ejemplo, puede crear filtros para las clases en las ventanas de manera que los datos
Depurador muestra sólo los campos de interés para usted. Esto reduce drásticamente el desorden
Y le permite encontrar más rápidamente los datos pertinentes.

Para mostrar u ocultar los campos de la lista de clases de filtrado:


1. Seleccione un objeto en una ventana del depurador relacionadas con datos. Haga clic con el botón
derecho del ratón y elija Objeto
Preferencias desde el menú de contexto.
Elija Objeto Preferencias permite ir directamente al cuadro de diálogo de preferencias de objeto
Para este objeto específico desde el que se pueden especificar filtros para controlar qué
campos son
Muestra y los campos que no se muestra cuando se expande un objeto.
2. En el cuadro de diálogo de preferencias de objeto, puede atravesar fácilmente la jerarquía

de superclase
El objeto seleccionado, la definición o actualización de los filtros para cada superclase. Seleccione un
Clase en la jerarquía de tipo y elija los campos que desea visualizar u ocultar en el valor
Columna de la ventana del depurador.
3. Haga clic en las flechas para filtros de lanzadera desde la lista de campos para mostrar a

los campos para ocultar


Lista.
4. Haga clic en Aceptar cuando haya terminado.

19.10 Depurar programas Java remotos


Además de la depuración de código localmente en el JDeveloper IDE, también puede depurar
código
Que se encuentra en un equipo remoto o ejecutándose en otra instancia de VM. Este
Significa que puede usar el depurador para depurar código que ya se ha implementado.
El depurador puede conectar simultáneamente a varias máquinas virtuales remotos, de modo que
puede
Perfección depurar aplicaciones distribuidas, tales como JSPs implementado en un servidor web
Acceder EJBs desplegados en un servidor de aplicaciones.
La principal diferencia entre la depuración remota y local es el modo de iniciar la depuración
La sesión de depuración. Para la depuración local, JDeveloper inicia automáticamente la
Programa que desea depurar (llamado un proceso depurado) y, a continuación, asigna la
Depurador para ese programa. Para la depuración remota, debe iniciar manualmente el
Programa que desea depurar. Además, si se depura un JSP o un servlet, debe
Iniciar manualmente un navegador para invocar tu JSP o servlet.
Una vez que el código depurado es lanzada y el JDeveloper depurador está conectado a él, remota
La depuración es muy similar a la depuración local. Recuerde que puede utilizar remote
La depuración cuando el proceso depurado se ejecuta en la misma máquina que JDeveloper
O cuando el proceso depurado se ejecuta en una máquina diferente.
A diferencia de depuración local, debe elegir el protocolo a utilizar antes de iniciar su
Sesión de depuración remota. Los protocolos de depuración remota se configuran en
Depurador remoto - Página del cuadro de diálogo Editar configuración de ejecución.
También puede depurar páginas Web como JSPs o servlets utilizando el analizador de HTTP. Para
Si desea más información, consulte Chapter 8, "Auditing and Profiling Applications."

Adjuntar a JPDA
Seleccione depurador para adjuntar a la solicitud a la dirección especificada. Para obtener más
Información acerca de sun java platform debugger architecture (JPDA) conexión
Y la invocación, consulte
Http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.
Html

19-40 Guía del usuario para Oracle JDeveloper


Depurar programas Java remotos

Escuche JPDA
Seleccione esta opción para especificar que el depurador escuche un código depurado para
adjuntar al depurador.
También puede elegir esta opción si la depuración remota programas PL/SQL.

19.10.1 Cómo iniciar un proceso de Java en modo de depuración


Después de haber configurado un proyecto para la depuración remota, puede iniciar su
control remoto
Sesión de depuración emitiendo el comando apropiado basado en la depuración
Protocolo y el medio ambiente.
Para iniciar el proceso de java, escriba lo siguiente en la línea de comandos:
Java [-cliente|server] -cp <project_directorio>\classes
-Agentlib:jdwp<opción1>=[<valor1>]<opción2>=[<valor2>]... <java_main_class>

Las opciones disponibles son:


■ Server(=n/año)
Si se establece en Sí y, a continuación, el proceso Java espera un depurador a
adjuntar. Si se establece en n (por defecto),
El proceso se adhiere a la aplicación del depurador en la dirección especificada.
■ Dirección
Especifica el puerto para la conexión. Valores predeterminados para 4000.
■ Timeout
Intervalo de tiempo tras el cual se agota el tiempo de espera del intento de conexión.
Por omisión 2 segundos.
■ Suspender =(y/n).
Si se establece en Sí (por defecto), el proceso de Java se ejecuta después de que el
depurador se conecta a él. Si se establece en
N, el proceso depurado comienza de inmediato, sin esperar a que el depurador
Conectarse a ella.

Ejemplos de línea de comandos:


■ Java -cp <project_directorio>\classes
-Agentlib:jdwp=transporte=dt_
Server=socket,y,suspender=n, direcci n=4000
Escuchar un depurador conexión en el puerto 4000, pero comenzar la ejecución sin
Esperando el depurador. Timeout after 2s (valor predeterminado). Implementar el
cliente VM
(Valor predeterminado).
■ -Server java -cp <project_directorio>\classes
-Agentlib:jdwp=transporte=dt_
Socket,server=n,suspender=y, timeout=3,address=8000
Adjuntar un depurador a la conexión en el puerto 8000. Sólo después de comenzar la
ejecución
Conectando con el depurador. Timeout after 3s. Implementar la máquina virtual del
servidor.
Para obtener más información sobre Sun Connection JPDA e invocación, consulte
Http://www.oracle.com/technetwork/java/javase/documentation/
Index-jsp-135444.html.
19.10.2 cómo la depuración remota utilizando el depurador de Javascript
JDeveloper permite la depuración remota un programa Javascript en las instancias locales y
Las instancias de servidor.
Antes de iniciar la depuración remota, instalar el plugin de Firefox para depuración de Javascript
Y CONFIGURAR JDeveloper para Javascript la depuración remota.

Ejecutar y depurar programas Java 19-41


Depurar programas Java remotos

Para la depuración remota un programa en Javascript (HTML/JS, archivos):


1. Habilitar la depuración remota en JDeveloper.
■ Elija Aplicación > Propiedades del proyecto.
■ En el cuadro de diálogo Propiedades del proyecto, active la casilla de
verificación Ejecutar/Depurar/ nodo de perfil. Desde el
Ejecutar lista de configuraciones, seleccione una configuración de ejecución y haga clic
en Editar.
■ En la página Configuración de lanzamiento de la edición de diálogo de configuración,
seleccione Ejecutar
La depuración remota.
■ Seleccione el nodo remoto bajo Herramienta Configuración > depurador.
■ En la página, seleccione el protocolo remoto como adjuntar a Mozilla/Firefox.
■ Opcionalmente, puede establecer el nombre de la máquina host, el puerto y la
información de tiempo de espera. De forma predeterminada,
JDeveloper utiliza el puerto 4000 y 2 segundos los valores de tiempo de espera.
■ Haga clic en Aceptar para cerrar el cuadro de diálogo Editar configuración de ejecución y, a
continuación, cerrar el
Cuadro de diálogo Propiedades del proyecto.
2. Cierre todas las instancias abiertas de Firefox, si las hubiere.

3. En JDeveloper, establecer puntos de interrupción en el programa Javascript.

4. Abrir ventana de comandos e iniciar Mozilla Firefox con el siguiente comando:


Firefox AnHtmlFile -oraclejsdebugport=<puerto> <otro navegador
Argumento>
Por ejemplo:
C:\>firefox file://C:/Shopcart/servlet/public_html/index.html
-Oraclejsdebugport=4000
Firefox no abre, pero su proceso se iniciará en el fondo. Ventanas abiertas
El Administrador de tareas y compruebe que se está ejecutando el proceso de firefox.
5. En JDeveloper, iniciar el depurador remoto. En Navigator, seleccione la aplicación
Proyecto, haga clic con el botón derecho del ratón y seleccione Iniciar Depurador remoto.
6. El programa comienza en el navegador Firefox y, en JDeveloper, el depurador se detiene en
El primer punto de interrupción que se han fijado en su código fuente. Ahora, puede continuar
Depurar un programa Javascript disponible mediante las opciones del depurador.

Para la depuración remota un programa Javascript en una instancia de servidor (JSP/Servlets/HTML


Archivos):
1. Inicie JDeveloper integrado de WebLogic Server. En el menú Ejecutar, elija Inicio
Instancia de servidor.
2. Implementar el proyecto en el sistema integrado de WebLogic Server.

3. Habilitar la depuración remota en JDeveloper.


■ Elija Aplicación > Propiedades del proyecto.
■ En el cuadro de diálogo Propiedades del proyecto, active la casilla de
verificación Ejecutar/Depurar/ nodo de perfil. Desde el
Ejecutar lista de configuraciones, seleccione una configuración de ejecución y haga clic
en Editar.
■ En la página Configuración de lanzamiento de la edición de diálogo de configuración,
seleccione Ejecutar
La depuración remota.
■ Seleccione el nodo remoto bajo Herramienta Configuración > depurador.
■ La página Remote, seleccione Protocolo como adjuntar a Mozilla/Firefox.

19-42 Guía del usuario para Oracle JDeveloper


Depurar programas Java remotos

Opcionalmente, puede establecer el nombre de la máquina host, el puerto y la


información de tiempo de espera. De forma predeterminada,


JDeveloper utiliza el puerto 4000 y 2 segundos los valores de tiempo de espera.
■ Haga clic en Aceptar para cerrar el cuadro de diálogo Editar configuración de ejecución
y, a continuación, cerrar el
Cuadro de diálogo Propiedades del proyecto.
4. Cierre todas las instancias abiertas de Firefox, si las hubiere.

5. En JDeveloper, establecer puntos de interrupción en los archivos de programa.

6. Abrir ventana de comandos e iniciar Mozilla Firefox con el siguiente comando:


Firefox webaddress -oraclejsdebugport=<puerto> <otro navegador
Argumento>
Por ejemplo:
C:\>firefox http://130.35.102.18:7101/Shopcart/index.jsp
-Oraclejsdebugport=4000
Firefox no abre, pero su proceso se iniciará en el fondo. Ventanas abiertas
El Administrador de tareas y compruebe que se está ejecutando el proceso de firefox.
7. En JDeveloper, iniciar el depurador remoto. En Navigator, seleccione la aplicación
Proyecto, haga clic con el botón derecho del ratón y seleccione Iniciar Depurador remoto.
8. El programa comienza en el navegador Firefox y, en JDeveloper, el depurador se detiene

en
El primer punto de interrupción que se han fijado en su código fuente. Ahora, puede
continuar
La depuración del programa utilizando las opciones del depurador.

19.10.3 Cómo utilizar un proyecto configurado para la depuración remota


Cualquier proyecto puede ser configurado para realizar la depuración remota.

Configurar un proyecto para la depuración remota:


1. Haga clic en la barra de herramientas de depuración.
La atribuyen a aparece el cuadro de diálogo correspondiente.
2. En el cuadro de lista de host, introduzca o seleccione el nombre o la dirección IP de la

máquina donde
El control remoto ha sido depurado comenzó.
3. En la lista de puertos, escriba o seleccione el número de puerto para el depurado

remoto.
4. Haga clic en Aceptar.

En la ventana de registro, una vez que se ha conectado el depurador, una conexión


exitosa
Mensaje aparece.
5. Si la depuración remota de un servlet o JSP, querrá tener acceso a su JSP o
Servlet con el lanzamiento de su navegador. Si la depuración remota, un EJB.
Desea ejecutar un cliente EJB que accederán a la EJB.
6. Continuar con su sesión de depuración como de costumbre.

7. Para desasociar el depurador del proceso de depuración remota sin terminar


El proceso depurado, elija la opción de menú Ejecutar > Separar. Esta opción es
Apropiado para la depuración remota de un servidor de aplicaciones.
8. Para terminar el proceso de depuración remota, seleccione el menú Ejecutar > Terminar
Opción, o seleccione el icono Terminar.

Ejecutar y depurar programas Java 19-43


Depurar programas Java remotos

19.10.4 Cómo configurar la depuración remota JPDA


En los siguientes pasos, usted configurará JDeveloper para Java Platform Debugger
Architecture (JPDA) la depuración remota.

Para configurar el proyecto para la depuración remota:


1. Hacer cambios en la sección de JSP global-web-application.xml de la siguiente manera:
<init-param>
<param-name>debug</param-name>
<param>clase valor</param-value>
</init-param>

2. Iniciar comandos integrados para WebLogic Server (asegúrese de que es la primera -server
Parámetro).
Value="-server -agentlib:jdwp=transporte=dt_
Server=socket,y,suspender=n, direcci n=4000 -Xms512m
-Xmx750m -XX:PermSize=128m -XX:MaxPermSize=256m
-Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy
-Djava.awt.headless=true -Dhttp.webdir.enable=false"/>

Para configurar JDeveloper para depuración remota:


1. Elija Aplicación > Propiedades del proyecto, active la casilla de
verificación Ejecutar/Depurar/ nodo perfil
Seleccione una configuración de ejecución y haga clic en Editar.
2. Seleccione la depuración remota y perfilado de casilla de verificación.

3. En el depurador remoto - Página, compruebe que el protocolo está configurado para adjuntar a

JPDA.
4. Cerrar el cuadro de diálogo de preferencias.

5. Establecer puntos de interrupción en su código y depuración de la lista desplegable, seleccione el

botón
Realizar la configuración deseada. Complete el diálogo de conexión y verifique la conexión
Para el depurado.
6. Acceso a servidor JSP previamente implementada a través de un navegador. El punto de
interrupción debe ser
Hit y todo funciona como se espera.
19-44 Guía del usuario para Oracle JDeveloper
20
Implementación de interfaces de usuario Java
20

Swing

En este capítulo se describe cómo utilizar las herramientas y características que


JDeveloper proporciona a
Ayudarle a desarrollar interfaces de Java Swing. Explica las tareas fundamentales que realice
Al trabajar con los componentes de la interfaz de usuario de JDeveloper y herramientas de
diseño. Se incluye un
Descripción de la interfaz de usuario Depurador, que se utiliza para depurar las interfaces de
usuario específicamente para
AWT y Swing cliente basadas en aplicaciones y applets.
Este capítulo incluye las siguientes secciones:
■ Section 20.1, "About Implementing Java Swing User Interfaces"
■ Section 20.2, "Understanding the JDeveloper User Interface Design Tools"
■ Section 20.3, "Controlling the Look and Feel of a Swing Application"
■ Section 20.4, "Working with Java Swing and AWT Components"
■ Section 20.5, "Working with Layout Managers"
■ Section 20.6, "Prototyping Your UI with Layout Properties"
■ Section 20.7, "Working with Containers and Components"
■ Section 20.8, "Working with Components in a Container"
■ Section 20.9, "Working with Menus"
■ Section 20.10, "Working with Event Handling"
■ Section 20.11, "Working with Applets"
■ Section 20.12, "Working with the UI Debugger"

20.1 sobre la implementación de interfaces de usuario Java Swing


Utilizando el Editor Visual de Java en JDeveloper, usted puede rápidamente y fácilmente
montar el
Elementos de la interfaz de usuario (UI) para una aplicación o applet Java usando Swing
Los componentes. Construir la interfaz de usuario con JavaBeans desde el componente
seleccionado
Paleta de colores, tales como botones, campos de texto, listas, cuadros de diálogo y menús. A
continuación, establezca los valores
De las propiedades del componente y adjuntar el código del controlador de eventos para los
eventos de componente.

20.2 Comprender las herramientas de diseño de la interfaz de usuario de


JDeveloper
Con JDeveloper herramientas, puede diseñar visualmente y el Programa de las clases de
Java para producir
Nuevo compuesto o componentes complejos.
JDeveloper UI Design Tools incluyen los siguientes:

Implementación de interfaces de usuario Java Swing


20-1
Comprender las herramientas de diseño de la interfaz de usuario de JDeveloper

■ Un Editor Visual de Java en la que puede crear y organizar grupos y otras


UI
Los componentes dentro de un marco u otro contenedor de IU. Puede acceder al Editor Visual de
Java
Haciendo clic con el botón derecho en el archivo en el navegador y elija Abrir. Haga clic en
la ficha Diseño
Para trabajar en el editor visual. Para obtener más información, consulte Section 18.3.1, "Editing Code
with the Java Visual Editor."
■ Un editor del menú en el que puede crear y editar una barra de menús,
menús y elementos de menú, y
Los componentes del menú emergente. Puede acceder al Editor de menús cuando tenga el Java
Editor visual abierto por la caída de un elemento de menú en su contenedor de IU
La paleta de componentes. También puede editar un menú existente componente haciendo clic
El elemento de menú en la ventana de estructura. Para obtener más información, consulte
Section 20.9.2, "Using the Menu Editor."
■ Una paleta de componentes que contienen componentes visuales y no
visuales. Mostrar
La paleta de componentes para los componentes que seleccione en el Editor Visual de Java. A
Mostrar la paleta de componentes de un archivo abierto, elija Ver > Componente
Paleta. Para obtener más información, consulte Section 11.1.4, "How to Use the Component
Palette."
■ Estructura de una ventana que muestra una vista jerárquica de todos los
componentes
El archivo de origen, y sus relaciones. Puede acceder a la ventana Estructura debajo
La ventana Navigator o, si está acoplado, seleccionando Ver > Estructura. Para obtener más
Información, consulte Section 3.11.6, "Structure Window."
■ El Inspector de propiedades, que se utiliza para inspeccionar y ajustar las propiedades del
componente y a
Métodos de conexión para eventos de componente. Los cambios realizados en el Inspector se
reflejan
Visualmente en el Editor Visual de Java y código fuente. Mostrar la propiedad
Inspector para un archivo en particular que se abre en el Editor Visual de Java. Para mostrar
El Inspector de propiedades de un archivo abierto, elija Ver > Inspector de propiedades. Para
Si desea más información, consulte Section 11.1.3, "How to Use the Property Inspector."
Si desea utilizar las herramientas de diseño de la interfaz de usuario en un archivo, debe
cumplir los siguientes
Requisitos:
■ Debe ser un archivo Java.
■ Debe estar libre de errores de sintaxis.
■ Debe contener una clase pública (el nombre del archivo debe ser el mismo que el nombre
de la
Clase pública).
■ Debe seguir las convenciones de codificación JDeveloper:
- Todos los controles de interfaz de usuario son declaradas como miembros de
clase o como variables locales dentro
JbInit().
- Todos los valores de la propiedad UI hecho en jbInit(). Esto es necesario para
que el
JDeveloper Java Editor visual y el Inspector de propiedades para reflejar los ajustes.
- Todos los valores de propiedad establecida como expresiones implican sólo
miembro o controles de IU
Valores estáticos.
■ Debe tener un constructor predeterminado.
Cualquier archivo que cumpla los requisitos anteriores puede ser visualmente diseñado
utilizando Java
Editor visual y el Inspector de propiedades. También puede diseñar visualmente un no -clase UI.

Nota: Estos requisitos se satisfacen cuando crea sus archivos


Con cualquiera de los diálogos de JDeveloper.

20-2 Guía del usuario para Oracle JDeveloper


Controlar el aspecto y la sensación de una aplicación
Swing

La primera vez que se agrega un componente a su diseño, el JDeveloper Java Editor Visual
Asegura que su clase tiene un constructor predeterminado, un privado jbInit(), método y
Que este método jbInit() es llamado correctamente desde el constructor predeterminado. Si
JDeveloper no encontrar este código, se va a agregar. También añadirá cualquier
importaciones necesarias
Por el componente.
Cuando se abre el archivo en el Editor Visual, Java JDeveloper actualiza la estructura
Árbol de la ventana. Por ejemplo, si su clase tiene una trama y un menú, habrá los
subárboles
Para la interfaz de usuario y el menú. Si usted suelte los demás componentes JavaBeans en la
estructura
Una ventana aparecerá la carpeta "Otros", de modo que puede seleccionar y editar estos
elementos en la
Inspector de propiedades.

20.3 controlar el aspecto y la sensación de una aplicación Swing


JDeveloper incluye los componentes de la GUI de Swing. Las clases de giro permiten
Especificar un aspecto y una interfaz de usuario. Usted puede tomar ventaja de este nuevo
Java
Pluggable aspecto para crear aplicaciones que tienen el aspecto de un usuario.
Escritorio nativo para Windows o máquinas Solaris. También puede lograr una apariencia
uniforme
Y sienten en sus aplicaciones en plataformas Java con el aspecto y tacto de metal.
Hay cuatro opciones de apariencia y JDeveloper:
■ Oracle
■ Metal
■ CDE/Motif
■ Windows
También hay varias consideraciones a la hora de configurar la apariencia y el funcionamiento
utilizando la interfaz de usuario
Manager:
■ La línea de código para personalizar el aspecto y declaración está dentro de un bloque
try/catch. Este
La colocación es necesario para compilar.
■ Este código debe ejecutarse antes de que alguno de los componentes está
instanciado. Por eso es
Coloca en laaplicación <>.java static método main().
■ La clase UIManager vive en el com.sun.java.swing paquete.

20.3.1 Cómo cambiar la apariencia de Oracle

Para cambiar el aspecto y tacto de Oracle:


1. Abra el archivo de aplicación en el Editor de código.
2. En el método Main, agregue el siguiente código:
Try {
UIManager.setLookAndFeel(nuevo oracle.bali.ewt.olaf.OracleLookAndFeel();
}
Catch (Exception e) {
}
Es necesario tener el aspecto y tacto de Oracle (OLAF) share.jar y
Jewt4.jar desde el directorio jlib en el classpath.

Implementación de interfaces de usuario Java Swing


20-3
Trabajo con componentes de AWT y Swing de Java

20.3.2 Cómo cambiar la apariencia de Windows


Para cambiar el aspecto de Windows:
1. Abra el archivo de aplicación en el Editor de código.
2. En el método Main, agregue el siguiente código:
Try {
UIManager.setLookAndFeel(nueva
Com.sun.java.swing.plaf.windows.WindowsLookAndFeel();
}
Catch (Exception e) {
}

Es necesario tener el aspecto y tacto de Oracle (OLAF) share.jar y


Jewt4.jar desde el directorio jlib en el classpath.

20.3.3 Cómo cambiar el aspecto y tacto de metal


El aspecto y tacto de metal es el predeterminado para los componentes Swing. Si desea utilizar el
Metal
En apariencia, no tiene que cambiar su código.

Para cambiar el aspecto y tacto de metal:


1. Abra el archivo de aplicación en el Editor de código.
2. En el método Main, agregue el siguiente código:
Try {
UIManager.setLookAndFeel(nueva
Javax.swing.plaf.metal.MetalLookAndFeel();
}
Catch (Exception e) {
}

Nota: Es necesario tener el aspecto y tacto de Oracle (OLAF)


Compartir.jar y jewt4.jar desde el directorio en el jlib
Classpath.

20.4 Trabajar con Java Swing yAWT componentes


Utilizar Swing y AWT componentes JavaBeans para ensamblar la interfaz de usuario (IU) para un
Aplicación o applet Java. Construir la interfaz de usuario en el Editor Visual Java seleccionando
JavaBeans desde la paleta de componentes, tales como botones, campos de texto, listas, diálogos y
Los menús. A continuación, puede establecer los valores de las propiedades del componente y
adjuntar el evento-handler
Código para los eventos de componente. Herramientas para diseñar visualmente y el Programa de las
clases de Java para
Producir nuevo compuesto o complejo de componentes.

20.4.1 Usando Swing componentes JavaBeans


Los componentes Swing son componentes ligeros que son auto-representación y no utilizar
Recursos de ventanas como lo hacen los componentes de AWT. En muchos casos, estos
componentes
Los componentes de AWT correspondiente, pero la versión de giro se ha mejorado para permitir
mayor
Flexibilidad y compatibilidad entre plataformas.
20-4 Guía del usuario para Oracle JDeveloper
Trabajo con componentes de AWT y Swing de Java

Nota: Los componentes Swing dependen de la funcionalidad subyacente en


Swing
Los contenedores. Si va a utilizar Swing JavaBeans, debe crear
El programa utilizando un JFrame, JPanel u otro contenedor que
Implementa la funcionalidad básica de giro.

Table 20–1 Contiene el Swing componentes JavaBeans.

Tabla 20-1 Swing componentes JavaBeans


El componente Descripción
JButton U n s i m p l e p ul s a d o r . U n JB utto n p ue d e te ne r un i c o no
incrustado.
JCheckBox U na c a j a c ua d r a d a uti l i z a d a p a r a m os tr a r b o o l e a n
( t r u e / fa l s e ) v a l o r e s . Cua nd o
Su valor está establecido en true, el cuadro muestra una marca de
verificación de forma predeterminada.
Usted tiene la opción de configurar su propia marca gráfica.
JComboBox Similar a la opción Control en AWT, muestra una lista de valores
Que el usuario puede seleccionar en tiempo de ejecución. JComboBox
tiene la propiedad
Editable que permite que el usuario escriba un nuevo valor en tiempo de
ejecución.
JEditorPane J Te xtCo m p o ne nt e s p e c i a l i z a d o q ue m ue s tr a te xto c o n
fo r m a t o
3.2 HTML o RTF. Está diseñada para que usted pueda crear la
ayuda
Páginas para su aplicación o applet.
JLabel U n c om p o ne nte d e te xto q ue l e p e r m i te m o s tr a r una
cadena de texto y
Icono opcional. Propiedades adicionales le permiten ajustar el
Posición del texto en relación con el icono.
JList Muestra una lista de objetos.
Sugerencia: El JList, a diferencia de la AWT componente List, no tiene
un
Mecanismo de desplazamiento integrado en el componente. Hacer
desplazable
Lista, debe colocar la lista en un componente JScrollPane
Contenedor.
JPasswordField U n J Te xtF i e l d q ue p o r d e fe c to m ue s tr a a s te r i s c o s ( * ) e n
lugar de la
Los caracteres introducidos por el usuario.
JProgressBar Muestra una barra de progreso que muestra gráficamente el
porcentaje
De la terminación de un proceso.
JRadioButton Este componente está diseñado específicamente para que se
comporte como un Radio
Botón. Cuando se agrupan con otras en una JRadioButtons
ButtonGroup, sólo uno de los botones del grupo puede ser
Seleccionar un elemento a la vez. El ButtonGroup es un non-visual
Componente.
JScrollBar U n c o ntr o l g r á fi c o , e l usua r i o p ue d e us a r p a r a e sta b l e c e r
u n v a l o r e n t e r o . E s te
Puede mostrarse con componente horizontal o un
Orientación vertical.
JSeparator U n c om p o ne nte q ue d i b uj a una l í ne a r e c ta . E s tá p e ns a d o
para ser utilizado
Como un componente en un JMenu, sino porque es un componente real,
Puede utilizarla para dibujar una línea en la interfaz de usuario que
separa un conjunto de
Controles desde otra. La JSeparator pueden mostrarse en
Orientación horizontal o vertical.
JSlider Similar a un JScrollBar, este control permite al usuario establecer una
Valor entero utilizando un control gráfico. JSlider permite establecer
Marcas de graduación principales y secundarias, y para mostrar un borde
alrededor de la
Control.

Implementación de interfaces de usuario Java Swing


20-5
Trabajo con componentes de AWT y Swing de Java

Tabla 20-1 (Cont.) Swing componentes JavaBeans


El componente Descripción
JTable Muestra información en una cuadrícula bidimensional, similar a un
Aplicación de hoja de cálculo.

Sugerencia: El JTable, a diferencia de la AWT componente List, no tiene un


Mecanismo de desplazamiento integrado en ella. Para hacer una tabla
desplazable, necesita
Para colocar el componente JScrollPane lista en un recipiente.
JTextArea Un área de texto editable que muestra una sola cadena en varios
Filas, cada una de las cuales termina en un carácter de nueva línea.
Sugerencia: Para hacer una JTextArea desplazables, necesita ser
Aparece en un contenedor JScrollPane.
JTextField Un área de texto editable que muestra una cadena única en una sola
fila.
JTextPane U n c om p l e to e d i to r d e te xto q ue p e r m i te e l c o ntr o l d e a j us te d e
palabra, imagen
Visualización y definición de estilo.

Sugerencia: para hacer un desplazable JTextPane, necesita ser


Cayó en un contenedor JScrollPane.
JTree Muestra la información jerárquica, como directorios de archivos, en un
Formato de árbol.

Sugerencia: El JTree, a diferencia de la AWT componente List, no tiene un


Mecanismo de desplazamiento integrado en ella. Hacer un árbol desplazable,
necesita
Para colocar el componente JScrollPane lista en un recipiente.
JToggleButton Los botones de alternar son similares a los controles JCheckBox. Cuando son
Empuja (true) permanecen fieles hasta que se establece en false por
Pulsando de nuevo. JToggleButtons puede colocarse en un
ButtonGroup para que sólo uno en el grupo puede ser cierto en uno
Tiempo. Los botones de alternar son útiles en las barras de herramientas para
mostrar una herramienta en un
Estado activo. Los botones de la paleta de componentes son ejemplos
Botones de alternar.

20.4.2 mediante AWT JavaBeans


AWT componentes JavaBeans use los controles estándar de la plataforma subyacente a
Mostrar la interfaz de usuario. Esta arquitectura hace que los componentes de AWT y sencilla
Fácil de implementar, pero limita el control sobre la presentación final de la interfaz de usuario y
Reduce la flexibilidad. También se requieren más recursos del sistema para funcionar, por lo que
A veces se denominan componentes pesados. Son componentes Swing.
Implementada en Java para ser auto-representación y, por lo tanto, hacer menos uso de sistema
Los recursos, que es el motivo por el que se denominan componentes ligeros. Swing
Los componentes pueden ser más complejas de implementar, pero ofrecen una mayor flexibilidad y
Consistencia entre plataformas de host.
Table 20–2 Contiene el AWT componentes JavaBeans.

Tabla 20-2 AWT componentes JavaBeans


El componente Descripción
Botón Muestra un simple botón pulsador
20-6 Guía del usuario para Oracle JDeveloper
Trabajo con componentes de AWT y Swing de Java

Tabla 20-2 (Cont.) AWT componentes JavaBeans


El componente Descripción
Casilla de verificación Verdadero/Falso, Activado/Desactivado el control de tipo boolean.
Como un componente independiente,
La casilla de verificación aparece como un cuadrado con una X para indicar
cuando su
Valor está establecido en true. Cuando se establece como miembro de
un grupo de casillas de verificación,
La casilla se convierte en un círculo (botón de radio): un punto en el círculo
Indica que su valor se establece en true. Añadir un componente checkbox
A un CheckboxGroup estableciendo su propiedad CheckboxGroup
El nombre de la CheckboxGroup al que pertenece.
CheckboxGroup Componente no visual utilizado para integrar el comportamiento de un
conjunto de
Casilla de verificación de los componentes. Sólo un elemento en un grupo
de casillas de verificación puede
Se puede establecer en True al mismo tiempo. Se añaden componentes
Checkbox para
La CheckboxGroup estableciendo la propiedad CheckboxGroup
El nombre de la correspondiente CheckboxGroup. El valor predeterminado
Valor de un CheckboxGroup puede configurarse estableciendo su
SelectedCheckbox propiedad en el nombre de la casilla de verificación
Componente.
Sugerencia: en función del orden en el que se agregan la casilla
Componentes y CheckboxGroup, CheckboxGroup puede ser
Instancia antes de las casillas de verificación. Para asegurar que la
correcta
El valor predeterminado está establecido, puede mover el
SelectedCheckbox y actual
Declaraciones de inicialización a la parte inferior del método JbInit
Que todos sus integrantes se instancian antes el valor predeterminado es
Set.
Elección Muestra un menú emergente. La etiqueta de la elección es el control
Elemento seleccionado actualmente. Esto es similar a un combobox.
Etiqueta Muestra una etiqueta de texto no editable en la aplicación, aunque su
El valor puede cambiar mediante programación.
Lista Muestra una lista desplegable de elementos de datos. El usuario
puede ser capaz de
Seleccione uno o más elementos en función de los valores de las
propiedades de
La lista.
MenuBar Muestra una barra de menú. Cualquier contenedor puede agregar un
control de barra de menús
Como un niño, sin embargo sólo fotograma tiene el setMenubar(), método
Que va a la barra de menú principal en una ubicación específica y no
Interferir con las ubicaciones de los otros niños. Barras de menús son
No disponible en los applets.
PopupMenu Muestra un menú emergente con una lista de comandos. Los menús
emergentes
Pueden adjuntarse a los paneles, y están disponibles para su uso en los
applets.
Para obtener más información acerca de la creación de menús,
consulte Section 20.9,
"Working with Menus".
Grupo U n c o nte ne d o r q ue s e uti l i z a p a r a m os tr a r un g r up o d e
controles. Cada
Panel puede tener su propio diseño para proporcionarle el control sobre
el
La posición de los componentes en relación el uno con el otro.
Scrollbar U n c o ntr o l d e s l i z a nte q ue p e r m i te q ue e l us ua r i o
e s t a b l e z c a u n v a l o r e nte r o . E l
Scrollbar puede configurarse para mostrar horizontalmente o
verticalmente.
ScrollPane U n ti p o d e p a ne l q ue ti ene b a r r a s d e d e s p l a z a m ie nto
horizontal y vertical
Disponible que permite mostrar un componente secundario que es
Mayor que el componente ScrollPane.
TextArea U n c om p o ne nte d e te xto q ue m ue s tr a una s o l a c ad e na d e
texto en múltiples
Filas, cada una termina con un carácter de nueva línea. El texto puede
ser desplazado
Arriba y abajo, izquierda y derecha.
TextField. Un componente de texto editable que muestra una sola cadena
de texto
En una sola fila.

Implementación de interfaces de usuario Java Swing


20-7
Trabajar con los administradores de diseño.

20.5 Trabajar con los administradores de diseño.


Utilizar JDeveloper es administradores de diseño para controlar el modo en que los componentes
se encuentran en tamaño y
El recipiente cada vez que se muestra. Un gestor de diseño organiza automáticamente la
Componentes en un contenedor de acuerdo a un conjunto específico de reglas específicas para ese
diseño
Manager.
Un programa Java puede implementarse en más de una plataforma. Si utiliza UI
estándar
Las técnicas de diseño de especificar posiciones absolutas y tamaños de los componentes de IU,
Su interfaz de usuario puede que no tengan un buen aspecto en todas las plataformas. Lo que
queda bien en su desarrollo
El sistema podría quedar inservible en otra plataforma. Para resolver este problema, Java
proporciona una
Sistema de gestores de diseño portátil. Los administradores de diseño le permiten especificar reglas
y
Limitaciones para el diseño de la interfaz de usuario de una manera que sea portátil.
Los administradores de diseño ofrecen las siguientes ventajas:
■ Posicionado correctamente los componentes que son independientes de las fuentes, las
resoluciones de pantalla,
Y las diferencias de plataforma.
■ Colocación de componentes inteligentes para contenedores que se ajuste el tamaño
dinámicamente al
El tiempo de ejecución.
■ Facilidad de traducción con cadenas de diferentes tamaños. Si una cadena aumenta de
tamaño, el
Componentes queden correctamente alineados.
U n c o n t e n e d o r d e I U J a v a u t i l i z a u n o b j e t o e s p e c i a l l l a m a d o u n gestor de diseño para
controlar cómo
Los componentes están ubicados en el contenedor de tamaño y cada vez que se muestra. Un diseño
Manager organiza automáticamente los componentes en un contenedor según un
Conjunto particular de reglas específicas para ese gestor de diseño.
El gestor de diseño establece el tamaño y la ubicación de los componentes basados en diversos
Factores tales como:
■ El gestor de diseño de reglas de diseño
■ El diseño del administrador de configuración de propiedades, si cualquier
■ Las limitaciones de diseño asociadas a cada componente (para obtener más información, consulte
Section 20.5.24, "Understanding Layout Constraints").
■ Ciertas propiedades comunes a todos los componentes, tales como preferredSize,
MinimumSize maximumSize alignmentX , ,, y alignmentY
■ El tamaño del contenedor
En Java, ciertos tipos de contenedores específicos de uso los administradores de diseño por
defecto.
■ Todos los paneles (incluyendo applets) utilizan FlowLayout.
■ Todas las ventanas (incluyendo marcos y cuadros de diálogo) use BorderLayout.
Cuando se crea un contenedor en un programa Java, puede aceptar el diseño por defecto.
Manager para ese tipo de contenedor, o puede alterar el valor por omisión especificando un
Otro tipo de gestor de diseño.
Normalmente, cuando se codifica la IU manualmente, puede invalidar el gestor de diseño
Antes de agregar componentes al contenedor. Cuando se utiliza el Editor Visual de Java
Puede cambiar el diseño cuando quieras. JDeveloper ajustará el código según sea necesario.
El Editor visual de Java en JDeveloper utiliza un gestor de diseño predeterminado para cada
contenedor,
Generalmente diseño nulo. Si desea utilizar un gestor de diseño diferente a la predeterminada,
Puede hacerlo explícitamente mediante la adición de un gestor de diseño en el código fuente del
contenedor, o
Seleccionando un diseño del contenedor de diseño Lista de propiedades en el Inspector de
propiedades.

20-8 Guía del usuario para Oracle JDeveloper


Trabajar con los administradores de
diseño.

Nota: Si desea cambiar las propiedades de un gestor de diseño


Utilizando el Editor Visual de Java, debe especificar explícitamente un diseño para
un
Recipiente para sus propiedades serán accesibles en el Inspector de propiedades.

Elegir un gestor de diseño basado en el diseño general que desee para el contenedor.
Algunos diseños pueden ser difíciles para trabajar con Java en el Editor visual porque
Tomar inmediatamente sobre colocación y cambio de tamaño de un componente tan
pronto como se agregue a
El contenedor. Para aliviar este problema durante la fase inicial de diseño de prototipos,
JDeveloper
Proporciona un diseño predeterminado denominado null, que deja los componentes
exactamente donde usted
Colocarlos y en el tamaño que se especifique. Comenzando con un nulo prototipos hace más
fácil
En su recipiente. Más tarde, después de la adición de componente s al contenedor,
puede cambiar a
Un portátil de diseño apropiado para su diseño.
En algunos diseños, usted podría utilizar los paneles anidados para agrupar los
componentes en el principal
Bastidor, utilizando diferentes diseños para el bastidor y cada uno de sus grupos.

Nota: Si realmente quieres diseñar un panel sin un gestor de diseño,


Puede configurar el gestor de diseño en el código fuente a null. Sin embargo,
Usted no debe dejar de esta manera para la implementación.

Experimente con diferentes diseños para ver su efecto sobre los componentes del

contenedor. Si
Usted encontrar el gestor de diseño que has elegido no da los resultados deseados, pruebe
Uno diferente, o intentar anidar varios paneles con diferentes diseños para conseguir la deseada
Efecto.

20.5.1 Descripción propiedades Tamaño


Los administradores de diseño utilice varias piezas de información para determinar cómo
posicionar y
El tamaño de los componentes en su recipiente. Los componentes proporcionan un
conjunto de métodos que permiten
Los administradores de diseño para diseñar componentes de forma inteligente. Todos estos
métodos permiten un
Componente para comunicar su tamaño deseado para el gestor de diseño.
Los métodos de la tabla 20-3 son propiedad getters y representan los siguientes:

Tabla 20-3 Propiedades de tamaño


Método Descripción
GetPreferredSize() El tamaño de un componente escogería ser, es decir, el tamaño ideal
Para el componente para que se vean mejor. Dependiendo de las reglas
Diseño concreto, el administrador podrá o preferredSize
No se considerará en el tendido del contenedor.
GetMinimumSize() Cómo el componente puede ser pequeño y todavía ser utilizable.
El
MinimumSize de un componente puede ser limitada, por ejemplo,
El tamaño de una etiqueta. La mayoría de controles minimumSize es el
mismo
Como preferredSize. Los administradores de diseño generalmente respeto
MinimumSize preferredSize más que ellos.
GetMaximumSize() El tamaño más grande, útil para este componente. Esto se utiliza para
que
El gestor de diseño no se pierde espacio en un componente que no
Utilizar eficazmente. Por ejemplo, podría limitar el BorderLayout
Tamaño del componente central hasta su tamaño máximo y, a continuación,
cualquiera
Dar el espacio para el Edge Components, o limitar el tamaño de la
Cuando se modifica el tamaño de la ventana exterior.
GetAlignmentX() Cómo el componente desearía estar alineados a lo largo del eje x,
En relación con otros componentes.

Implementación de interfaces de usuario Java Swing


20-9
Trabajar con los administradores de diseño.

Tabla 20-3 (Cont.) Las propiedades de tamaño


Método Descripción
GetAlignmentY() Cómo el componente quisiera estar alineadas a lo largo del eje Y.
En relación con otros componentes.

Para comprender cómo cada layout Manager utiliza estos pedazos de información, consulte la
Diseños individuales enumerados en Section 20.5.2, "Understanding Layouts Provided with
JDeveloper".

20.5.2 Descripción diseños proporcionados con JDeveloper


JDeveloper proporciona los siguientes administradores de diseño estándar de Java AWT.
, FlowLayout GridLayout BorderLayout CardLayout , ,, y GridBagLayout.
Para Swing, BoxLayout2 y OverLayout2 han sido incluidos.
FormLayout JDeveloper proporciona también, un contenedor basado en cuadrícula que ubica los
componentes
En una cuadrícula de filas y columnas, permitiendo que los componentes especificados para
abarcar varios
Filas o columnas. FormLayout es proporcionada por JGoodies formularios, una fuente abierta
Marco incluyó con JDeveloper.
Además, JDeveloper proporciona estos diseños personalizados:
■ XYLayout que mantiene los componentes se colocan en un contenedor en su tamaño original y
Ubicación (coordenadas x,y).
■ PaneLayout, utilizado por el control SplitPanel.
■ VerticalFlowLayout, que es muy parecido al FlowLayout excepto que
Organiza los componentes verticalmente en lugar de horizontalmente.
Puede crear diseños personalizados de su propio, o experimentar con otros diseños como el
Queridos en el sol.awt clases, o gestores de diseño de terceros, muchos de los cuales son
Dominio público en la Web. Si desea utilizar un diseño personalizado en Java Visual
Editor, usted puede tener que proporcionar un archivo de clase de Java Helper para ayudar al
Editor Visual de Java
Utilice el diseño.

20.5.3 Usar BorderLayout


BorderLayout organiza un contenedor de componentes en áreas llamadas Norte, Sur, Este,
El oeste y el Centro.
■ Los componentes en el norte y el Sur han dado su altura preferida y son
Se extendía por toda la anchura del contenedor.
■ Los componentes en el Este y el Oeste son dado su ancho preferido y son
Estira verticalmente para rellenar el espacio entre las zonas norte y sur.
■ Un componente en el centro se expande para llenar el espacio restante.
20-10 Guía del usuario para Oracle JDeveloper
Trabajar con los administradores de
diseño.

Figura 20-1 BorderLayout

El BorderLayout que aparece en la figura 20-1 es buena para forzar los componentes a uno
O más bordes de un contenedor, y para llenar el centro del recipiente con un
Componente. También es el diseño que desea utilizar para causar un solo componente para
Llenar completamente el recipiente.
Usted encontrará probablemente BorderLayout ser las más útiles para el gestor de diseño
Grandes contenedores en su interfaz de usuario. Anidando un panel dentro de cada área de
la
BorderLayout, luego rellenar cada uno de los paneles con otros paneles de diversos
Los diseños, usted puede conseguir bastante complicados diseños de interfaz de usuario.
Los componentes están situados en una de las cinco áreas dentro de un BorderLayout,
basada en la
Propiedad constraints. Puede establecer la propiedad Constraints para el componente en la
Inspector a uno de los siguientes valores: Norte, Sur, Este, Oeste o centro.
Por ejemplo, poner una barra de herramientas en la parte superior de un contenedor
BorderLayout, puede
Crear un panel FlowLayout de botones y colocarlo en la zona norte del contenedor.
Esto se lleva a cabo seleccionando el grupo y eligiendo al norte para su propiedad Constraints
en
El Inspector.

Para establecer la propiedad Constraints:


1. Seleccione el componente que desea colocar, ya sea en Java o el editor visual
Ventana de estructura.
2. Seleccione las limitaciones en el Inspector de propiedades y, a continuación, haga clic

en el campo Valor.
3. Haga clic en la flecha hacia abajo sobre las limitaciones de la p ropiedad y

seleccione la lista desplegable


Área del componente que desee ocupar.
4. Presione Entrar o haga clic en cualquier parte en el Inspector de propiedades para

confirmar el cambio
Al código.
Si utiliza el Editor Visual de Java para cambiar el diseño de un contenedor existente
para
BorderLayout, los componentes cerca de los bordes se mueven automáticamente para
llenar el más cercano
Borde. Un componente cerca del centro puede ser ajustado al centro. Si un elemento se mueve a
un
Ubicación no deseada, puede corregir las limitaciones en el Inspector de propiedades, o
arrastre
El componente a una nueva posición en el Editor Visual de Java.
Cada una de las cinco áreas puede contener cualquier número de componentes (o panel
de
Los componentes), sin embargo, a menos que el componente superior no es opaco, inferior
Los componentes de la misma zona será cubierto por el superior.
Las siguientes son algunas pautas generales para trabajar con varios componentes y
BorderLayout:
■ Asegúrese de que el contenedor no tiene más de cinco componentes.
■ Utilice XYLayout primero para mover los componentes para su intención aproximada
Posiciones, con sólo un componente cerca de cada borde.
■ Agrupar varios componentes en un área en un grupo antes de la conversión.

Implementación de interfaces de usuario Java Swing


20-11
Trabajar con los administradores de diseño.

Nota: BorderLayout ignora el orden en el que se añaden componentes


Para el contenedor.

De forma predeterminada, un BorderLayout no supone ningún espacio entre los

componentes que gestiona.


Sin embargo, puede usar el Inspector para especificar el espacio horizontal o vertical en píxeles.
Para un t BorderLayou asociado a un contenedor.
Para modificar el espacio circundante , seleccione los componentes BorderLayout BorderLayout
En la ventana Estructura de objeto (que aparece inmediatamente debajo del contenedor
Controles) y, a continuación, modifique el valor de píxel en el Inspector de propiedades para el
vgap y hgap
Propiedades.

20.5.4 Usar BoxLayout2


BoxLayout2 le permite organizar los componentes de un contenedor vertical o
Horizontalmente. Anidando componentes en contenedores, puede lograr diseños complejos.
Figure 20–2 Muestra tres paneles (P1, P2, P3) dispuestas verticalmente. Cada panel contiene
Dos botones dispuestos verticalmente.

Figura 20-2 BoxLayout2

Cuando utilice BoxLayout2 para un componente, puede especificar si desea que su eje principal
es el
Co lo cació n superior (eje Y) o eje X (colocación de izquierda a derecha). Los
componentes están ordenado s
(De izquierda a derecha o de arriba a abajo), en el mismo orden en el que se agregaron a la
Contenedor.
BoxLayout2 intenta distribuir componentes en sus anchos preferidos (de izquierda a
Diseño derecho) o el alto (para diseño de arriba a abajo). Los componentes no se ajustará si el
Se cambia el tamaño del contenedor.
Si todos los componentes no están a la misma altura en un diseño horizontal, BoxLayout2
Intenta hacer todos los componentes tan alto como el componente más alto. Si eso no es
Es posible para un componente en particular, entonces BoxLayout2 alinea ese componente
Verticalmente, según la alineación y del componente.
Si los componentes no son todas del mismo ancho en una alineación vertical, BoxLayout2
Intenta hacer todos los componentes en la columna tan ancha como el mayor componente; si
Que falla, se alinea horizontalmente según su X alineaciones.

20.5.5 Usar CardLayout


Lugares CardLayout componentes (normalmente paneles) en la parte superior de uno al otro en una
pila como una
Una baraja de cartas. Puede ver sólo una a la vez, y puede desplazarse a través de los paneles
mediante
Otro control para seleccionar el panel que llega a la parte superior.
20-12 Guía del usuario para Oracle JDeveloper
Trabajar con los administradores de
diseño.

CardLayout es una buena disposición para usar cuando usted tiene un área que puede
contener diferentes
Componentes en diferentes momentos. Esto le proporciona una manera de gestionar dos o más
paneles
Que tienen que compartir el mismo espacio de pantalla.

20.5.5.1 Cómo crear un contenedor CardLayout


Puede ver un ejemplo del uso de CardLayout mirando a los asistentes en JDeveloper.
El Cancelar, Siguientey Atrás botones del panel de control que aparece al lado.

Para crear un contenedor CardLayout:


1. Crear una nueva aplicación.
2. Haga clic con el botón secundario en el archivo de marco en el navegador y elija Abrir.

3. Agregar un grupo a la IU en el Editor Visual de Java y establezca su propiedad

layout para
CardLayout. Para obtener más información,
consulte Section 20.7.9, "How to Create a Panel".
4. Soltar un nuevo panel en el panel CardLayout. Este nuevo panel se llene completamente
El panel CardLayout.

Nota: El primer componente que se agrega a un panel CardLayou t


Siempre llene el panel.

5. Establezca la propiedad layout para este nuevo panel para XYLayout y añadir la

deseada
Los componentes.
6. Haga clic en un panel sobre la paleta de componentes y, a continuación, haga clic

en el panel CardLayout en
El componente en la estructura de árbol de la ventana para agregar a la pila
en CardLayout
Panel.
7. Establecer este segundo panel a XYlayout y añadir componentes.

8. Repita los pasos 6 y 7 para cada nuevo panel que desee agregar a la pila.

20.5.5.2 Cómo especificar el espacio que rodea un recipiente CardLayout


Utilizando la estructura de la ventana, puede especificar la cantidad de desplazamiento
horizontal y vertical
Espacio alrededor de una pila de componentes en un CardLayout.

Para especificar el espacio que rodea un recipiente cardLayout:


1. Seleccione el objeto cardLayout en la ventana Estructura, que aparece inmediatamente
A continuación el contenedor que controla.

Figura 20-3 cardLayout


2. Haga clic en el hgap (gap) horizontal o vertical vgap (gap) en el Inspector de
propiedades.
3. Introduzca el número de píxeles que desee para el hueco.

Implementación de interfaces de usuario Java Swing


20-13
Trabajar con los administradores de diseño.

4. Presione Entrar o haga clic en cualquier otra parte del inspector para registrar los cambios.

20.5.6 Usar FlowLayout


FlowLayout organiza los componentes en las filas de izquierda a derecha y de arriba a abajo
Utilizando cada componente's preferredSize. FlowLayout líneas arriba como muchos componentes
como
Puede en una fila y, a continuación, se mueve a una nueva fila. Normalmente, se utiliza para organizar
FlowLayout
Botones en un panel.

Figura 20-4 FlowLayout


Nota: Si desea un panel que organiza los componentes
Verticalmente en lugar de horizontalmente,
consulte Section 20.5.21, "Using
VerticalFlowLayout".

Usted puede elegir cómo distribuir los componentes en las filas de

un FlowLayout
Contenedor mediante la especificación de una justificación de la alineación
izquierda, derecha o centro. También puede
Especificar la cantidad de espacio (el espaciado horizontal y vertical) entre
componentes y
Filas. Utilice el Inspector para cambiar la alineación y el hueco cuando estás
propiedades
En el Editor Visual de Java.

Alineación
■ Los componentes de los grupos de izquierda en el borde izquierdo del
contenedor.
■ Centro - centros de los componentes en el contenedor.
■ Los componentes de los grupos de derecha en el borde derecho del
contenedor. El valor predeterminado
Alineación en un FlowLayout es el centro.
Para cambiar la alineación, seleccione el objeto FlowLayout en la ventana Estructura,
A continuación, especifique un valor en el Inspector de propiedades de la
propiedad Alignment
Siguiente:
- 0=izquierda
- 1=CENTRO
- 2=derecha

Gap
El espacio predeterminado entre los componentes de un FlowLayout es de 5
píxeles.
Para cambiar el espacio horizontal o vertical, seleccione el objeto FlowLayout en el
Estructura de la ventana y, a continuación, modifique el valor del píxel de
la hgap (holgura horizontal) o vgap
(Separación vertical) en el Inspector de propiedades.

20-14 Guía del usuario para Oracle JDeveloper

También podría gustarte