Paso 1: Usar el adaptador de E-Business de Oracle para crear y publicar un servicio WCF
Tiempo de finalización: 15 minutos
Objetivo: Puede usar el Asistente para desarrollo del servicio de adaptador de LOB de WCF para generar un servicio WCF a partir de los artefactos de Oracle E-Business Suite que se pueden hospedar en un entorno de hospedaje, como Internet Information Services (IIS) o el Servicio de activación de procesos de Windows (WAS). En este tema se muestra cómo usar el asistente para generar un archivo de servicio WCF.
Requisitos previos
Antes de ejecutar el asistente, instale lo siguiente:
SDK del adaptador de línea de negocio (LOB) de Microsoft Windows Communication Foundation (WCF) con la opción Completar o la opción Personalizada (y elegir Herramientas dentro de esta opción). Esto instala la plantilla de Visual Studio para el Asistente para desarrollo del servicio adaptador.
Adaptador de Microsoft BizTalk para Oracle E-Business Suite desde el paquete de adaptadores de BizTalk.
Para obtener más información sobre estos requisitos previos, consulte la guía de instalación del paquete de adaptadores de BizTalk. La guía de instalación se instala normalmente en la <unidad> de instalación:\Archivos de programa\Microsoft BizTalk Adapter Pack\Documents.
Nota
También debe ejecutar el script create_apps_artifacts.sql proporcionado con el ejemplo de Microsoft Office SharePoint Server para crear la tabla de interfaz de MS_SAMPLE_EMPLOYEE en la aplicación Biblioteca de objetos de aplicación. Esta tabla de interfaz se usa en este tutorial.
Creación de un servicio WCF para la operación en oracle E-Business Artifact
En esta sección se proporcionan los pasos necesarios para crear un servicio WCF para la operación Select en la tabla de interfaz employee de MS_SAMPLE.
Para crear un servicio WCF para la operación de selección en la tabla de interfaz employee de MS_SAMPLE
Inicie Visual Studio y, a continuación, cree un proyecto.
En el cuadro de diálogo Nuevo proyecto , en el panel Tipos de proyecto, seleccione Visual C#. En el panel Plantillas , seleccione Servicio de adaptador de WCF.
Como alternativa, en el panel Tipos de proyecto , expanda Visual C# y, a continuación, seleccione Web. En el panel Plantillas , seleccione Servicio de adaptador de WCF.
Nota
Si instaló Visual Studio 2013 con el componente Desarrollo web, la plantilla Servicio de adaptador de WCF también está disponible en la opción Nuevo sitio web (Archivo>nuevo>sitio web).
Sin embargo, el adaptador de Oracle E-Business solo admite sitios web creados en el sistema de archivos. Por lo tanto, al crear un sitio web en el cuadro de diálogo Nuevo sitio web, debe hacer clic en Sistema de archivos en la lista Ubicación.
Especifique un nombre y una ubicación para la solución y, a continuación, haga clic en Aceptar. Se inicia el Asistente para desarrollo del servicio adaptador de WCF.
En la página de bienvenida, haga clic en Siguiente.
En la página Elegir operaciones, especifique un cadena de conexión para conectarse a Oracle E-Business Suite. Para ello:
En la lista Seleccionar un enlace , haga clic en oracleEBSBinding y, a continuación, haga clic en Configurar.
En el cuadro de diálogo Configurar adaptador , haga clic en la pestaña Propiedades de enlace .
En la categoría General , para la propiedad de enlace ClientCredentialType , seleccione EBusiness.
En la categoría OracleEBS , especifique los valores adecuados para las propiedades de enlace OracleUserName, OraclePassword y OracleEBSResponsibilityName . En este caso, debe proporcionar credenciales de base de datos para las propiedades de enlace OracleUserName y OraclePassword .
En la categoría Metadatos , en la propiedad de enlace EnableSafeTyping , seleccione True. Si va a recuperar valores para la columna de fecha, se recomienda establecer la propiedad de enlace EnableSafeTyping en True al generar los metadatos.
Haga clic en la pestaña Propiedades de URI y, a continuación, especifique valores para los parámetros de conexión. Para obtener más información sobre el URI de conexión para el adaptador de Oracle E-Business, consulte Creación del URI de conexión de Oracle E-Business Suite.
Haga clic en la pestaña Seguridad y, en la lista Tipo de credencial de cliente , seleccione Nombre de usuario. Especifique un nombre de usuario y una contraseña válidos de Oracle E-Business Suite para conectarse a Oracle E-Business Suite.
Haga clic en Aceptar para cerrar el cuadro de diálogo Configurar adaptador y, a continuación, haga clic en Conectar. Después de que Visual Studio establezca correctamente una conexión con Oracle E-Business Suite, el estado de la conexión se muestra como Conectado. También puede ver los metadatos de Oracle E-Business Suite que se muestran en la página Elegir operaciones.
En la página Elegir operaciones, en la lista Seleccionar tipo de contrato, haga clic en Cliente (operaciones salientes).
En el cuadro Seleccionar una categoría , vaya a la tabla de interfaz MS_SAMPLE_EMPLOYEE en la aplicación De biblioteca de objetos de aplicación. Para obtener información sobre cómo navegar a un artefacto en el adaptador, vea Examinar, buscar y recuperar metadatos para operaciones E-Business de Oracle.
En el cuadro Categorías y operaciones disponibles , seleccione la operación Seleccionar y, a continuación, haga clic en Agregar. La operación Seleccionar se agrega al cuadro Categorías y operaciones agregadas .
Nota
Puede agregar más de una operación para cada artefacto. También puede agregar operaciones para diferentes artefactos de Oracle E-Business Suite. Por ejemplo, puede agregar una operación para una tabla de interfaz y otra para un programa simultáneo. Además, puede buscar operaciones específicas especificando caracteres comodín en expresiones de búsqueda. Para obtener más información sobre los caracteres especiales admitidos y los niveles de nodo en los que puede buscar las operaciones, consulte Búsqueda de operaciones de Oracle E-Business Suite.
En la página Elegir operaciones, haga clic en Siguiente.
En la página Configurar comportamientos de servicio y punto de conexión, especifique los valores para configurar el comportamiento del servicio y del punto de conexión.
En el cuadro Configuración del comportamiento del servicio , especifique los valores para lo siguiente:
Para la propiedad Especificar el valor EnableMetadataExchange Establézcalo en True para crear un punto de conexión de intercambio de metadatos. Al establecer esto en True, los metadatos del servicio estarán disponibles mediante protocolos estandarizados, como WS-Metadata Exchange (MEX) y solicitudes HTTP/GET. El valor predeterminado es false. IncludeExceptionDetailsinFault Establézcalo en True para incluir información de excepciones administradas en detalle de los errores soap devueltos al cliente con fines de depuración. El valor predeterminado es false. Nombre Nombre de la configuración del comportamiento del servicio. En este tutorial, escriba customServiceBehavior. UseServiceCertificate Especifica si desea usar el modo de seguridad de nivel de mensaje de WCF. El valor predeterminado es true. Para este tutorial, debe establecerlo en False. Nota
Dado que no usamos certificados de servicio para este tutorial, no es necesario proporcionar valores para las propiedades FindValue, StoreLocation, StoreName y X509FindType . Para obtener más información sobre los certificados y las propiedades asociadas, vea "Propiedades X509ClientCertificateCredentialsElement" en https://go.microsoft.com/fwlink/?LinkId=103771.
En el cuadro Configuración de comportamiento del punto de conexión , especifique los valores para lo siguiente:
Para la propiedad Especificar el valor Tipo de autenticación Para que Microsoft Office SharePoint Server consuma el servicio WCF, debe establecerlo como HTTPUserNamePassword. Esto permite a los clientes especificar el nombre de usuario y la contraseña como parte del encabezado HTTP. Nombre Especifique un nombre para la configuración del comportamiento del punto de conexión. En este tutorial, escriba customEndpointBehavior. UsernameHeader Nombre del encabezado de nombre de usuario. En este ejemplo, especifique MyUserHeader. Para obtener más información sobre los encabezados HTTP, vea "Compatibilidad con encabezados HTTP y SOAP personalizados" en https://go.microsoft.com/fwlink/?LinkId=106692. Nota: Debe especificar un valor para esta propiedad si el tipo de autenticación está establecido en HTTPUserNamePassword. Si tipo de autenticación se establece en Automático, esta propiedad es opcional. PasswordHeader Nombre del encabezado de contraseña. En este ejemplo, especifique MyPassHeader. Para obtener más información sobre los encabezados HTTP, vea "Compatibilidad con encabezados HTTP y SOAP personalizados" en https://go.microsoft.com/fwlink/?LinkId=106692. Nota: Debe especificar un valor para esta propiedad si el tipo de autenticación está establecido en HTTPUserNamePassword. Si tipo de autenticación se establece en Automático, esta propiedad es opcional. En la ilustración siguiente se muestra la página Configurar comportamientos de servicio y punto de conexión con los valores especificados.
En la página Configurar comportamientos de servicio y punto de conexión, haga clic en Siguiente.
En la página Configurar el enlace de punto de conexión de servicio y la dirección, seleccione un contrato para configurar muestra el artefacto (MS_SAMPLE_EMPLOYEE) que configuró. En el cuadro Operaciones del contrato seleccionado se muestra la operación Seleccionar seleccionada para el artefacto en la página Elegir operaciones.
En el cuadro Configure the address and binding for the contract (Configurar la dirección y el enlace del contrato ), especifique los valores para lo siguiente:
Para la propiedad Especificar el valor Configuración de enlace El asistente solo admite el enlace HTTP básico. Por lo tanto, el campo de configuración de enlace se rellena automáticamente en System.ServiceModel.Configuration.BasicHttpBindingElement.
Haga clic en el botón de puntos suspensivos (...) para cambiar las propiedades del enlace HTTP. Para usar un canal de comunicación seguro, siempre debes establecer la propiedad Mode en Transport. El asistente establece el valor predeterminado de la propiedad Mode como Transport.
Para obtener más información sobre los demás enlaces expuestos, vea "BasicHttpBindingElement Members" en https://go.microsoft.com/fwlink/?LinkId=103773.Nombre del punto de conexión Especifique un nombre de punto de conexión para el contrato. Los demás campos de esta página se rellenan automáticamente en función de los valores especificados en las páginas anteriores.
Haga clic en Aplicar.
Nota
Si no especifica ningún valor en esta página, se aceptan los valores predeterminados para todos los contratos.
En la ilustración siguiente se muestra la página Configurar enlace de punto de conexión de servicio y dirección con los valores especificados.
En la página Configurar enlace de punto de conexión de servicio y dirección, haga clic en Siguiente. En la página Resumen se muestra una estructura de árbol del artefacto de Oracle E-Business Suite y la operación seleccionada para el artefacto.
Revise el resumen y, a continuación, haga clic en Finalizar.
El asistente crea un servicio WCF y agrega los siguientes archivos al proyecto de Visual Studio:
Archivo .svc. Este es el archivo de servicio WCF. El asistente genera un archivo para cada contrato.
Web.config archivo.
Código de servicio (archivo .cs)
Modificar el archivo .cs
Al crear un servicio fuera de un artefacto de Oracle E-Business Suite mediante el adaptador de Oracle E-Business y desea usarlo desde el elemento web lista de datos profesionales en Microsoft Office SharePoint Server, se espera que proporcione la cláusula de filtro completa a partir de la cláusula WHERE. Por ejemplo, si desea buscar un empleado con el nombre "John", debe proporcionar la siguiente cláusula de filtro en el elemento web Lista de datos profesionales:
where NAME like ‘JOHN’
Sin embargo, si desea que el usuario proporcione solo el nombre como entrada para la cláusula de filtro sin mencionar realmente la cláusula de filtro completa, puede agregar un código en el archivo .cs que modifique la cláusula de filtro procedente del elemento web lista de datos profesionales en Microsoft Office SharePoint Server para pasarla a Oracle E-Business en el formato de cláusula WHERE.
Por ejemplo, en el caso de este tutorial, si desea que el usuario escriba un nombre de empleado en el elemento web Lista de datos profesionales en Microsoft Office SharePoint Server y recupere el registro de ese empleado, puede agregar el código siguiente en el archivo .cs:
SelectResponse InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.Select(SelectRequest request)
{
request.FILTER = "where NAME like '" + request.FILTER + "'"; // The code to avoid the users from specifying the WHERE clause in the filter from Business Data List Web Part.
return base.Channel.Select(request);
}
Publicación del servicio WCF
Asegúrese de que SSL está habilitado para IIS. Para obtener instrucciones sobre cómo habilitar SSL para IIS, consulte https://go.microsoft.com/fwlink/?LinkId=197170.
Para publicar el servicio WCF:
Haga clic con el botón derecho en el proyecto en Explorador de soluciones y, a continuación, haga clic en Publicar.
En el cuadro de diálogo Publicar web , especifique una dirección URL para el servicio WCF. Por ejemplo:
https://<COMPUTER_NAME>:<PORT_NUMBER>/MS_SAMPLE_EMPLOYEE/
Nota
Debe publicar el servicio WCF en una ubicación habilitada para SSL. Es decir, el valor del cuadro Ubicación de destino debe comenzar por "https://". Dado que las credenciales de usuario se pasan en el encabezado HTTP, el asistente configuró automáticamente el comportamiento de enlace del adaptador para usar "Transporte" como modo de seguridad, lo que implica el cifrado SSL. Por supuesto, puede volver atrás y editar el archivo de web.config para cambiar el valor del <parámetro de modo> de seguridad, pero el uso de SSL siempre es una opción mejor cuando tiene información confidencial transportada en texto no cifrado en el encabezado HTTP.
En el cuadro Copiar , haga clic en Todos los archivos de proyecto.
Haga clic en Publicar.
Compruebe que el servicio WCF se ha publicado correctamente.
Inicie microsoft Management Console de IIS. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuación, haga clic en Administrador de Internet Information Services (IIS).
Vaya al nodo donde publicó el servicio. Para el servicio MS_SAMPLE_EMPLOYEE, vaya a Internet Information Services><Nombre>> de equipoSitios web>predeterminados>MS_SAMPLE_EMPLOYEE.
En el panel derecho, haga clic con el botón derecho en el archivo InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.svc y, a continuación, haga clic en Examinar.
La página web se muestra con la dirección URL para recuperar el WSDL. Es posible que quiera probar la recuperación de metadatos mediante el comando svcutil . Por ejemplo, el comando para recuperar metadatos para el servicio MS_SAMPLE_EMPLOYEE es:
svcutil.exe https://<COMPUTER_NAME>:<PORT_NUMBER>/MS_SAMPLE_EMPLOYEE/InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.svc?wsdl
siguiente paso
Para crear un archivo de definición de aplicación para el artefacto de Oracle E-Business Suite, use el Editor de definiciones de Business Data Catalog. Para obtener instrucciones, consulte Paso 2: Crear un archivo de definición de aplicación para los artefactos de Oracle E-Business Suite. El archivo de definición de aplicación identifica dónde se almacenan los datos loB y el formato en el que se almacena.
Consulte también
Tutorial: Presentar datos de Oracle E-Business Suite en un sitio de SharePoint