Creación de adaptadores Java y JavaScript
improve this page | report issueVisión general
Un adaptador se puede crear utilizando mandatos de Maven o utilizando MobileFirst CLI (que depende de que Maven esté instalado y configurado). El código del adaptador se puede entonces editar y compilar utilizando el entorno de desarrollo integrado (IDE) de su elección como, por ejemplo, Eclipse o IntelliJ. Esta guía de aprendizaje explica como crear, compilar y desplegar adaptadores de Java o JavaScript mediante Maven y MobileFirst CLI. Para aprender a utilizar los IDE de Eclipse o IntelliJ para crear y compilar adaptadores, revise la guía de aprendizaje Desarrollo de adaptadores en Eclipse.
**Requisito previo: ** Asegúrese de haber leído primero Visión general de adaptadores.
Ir a
- Instalación de Maven
- Creación de adaptadores mediante MobileFirst CLI
- Instalación de MobileFirst CLI
- Creación de un adaptador
- Creación de adaptadores mediante arquetipos de Maven
- Estructura de archivos
- Compilación y despliegue de adaptadores
- Dependencias
- Agrupación de adaptadores en un único proyecto Maven
- Descarga y despliegue de adaptadores mediante MobileFirst Operations Console
- Actualización del proyecto Maven del adaptador
- Funcionamiento fuera de línea
- Guías de aprendizaje con las que continuar
Instalación de Maven
Con el propósito de crear un adaptador, primero es necesario descargar e instalar Maven. Vaya al sitio web de Apache Maven y siga las instrucciones para descargar e instalar Maven.
Creación de adaptadores mediante MobileFirst CLI
Instalación de MobileFirst CLI
Siga las instrucciones de instalación en la página de Descargas para instalar MobileFirst CLI.
Requisito previo: Para crear adaptadores utilizando la interfaz de línea de mandatos del desarrollador, Maven debe estar instalado.
Creación de un adaptador
Utilice el mandato mfpdev adapter create
para crear un proyecto de un adaptador de Maven.
Puede ejecutar el mandato de forma interactiva o de forma directa.
Modalidad interactiva
-
Abra una ventana de línea de mandatos y ejecute:
mfpdev adapter create
-
Especifique un nombre de adaptador. Por ejemplo:
? Enter Adapter Name: SampleAdapter
-
Seleccione un tipo de adaptador utilizando las flechas y el especifique las claves:
? Select Adapter Type: HTTP SQL ❯ Java
* Seleccione `HTTP` para crear un adaptador HTTP JavaScript * Seleccione `SQL` para crear un adaptador SQL JavaScript * Seleccione `Java` para crear un adaptador Java
-
Especifique un paquete de adaptador (esta opción solo es válida con adaptadores Java). Por ejemplo:
? Enter Package: com.mypackage
-
Especifique un ID de grupo del proyecto Maven a compilar. Por ejemplo:
? Enter Group ID: com.mycompany
Modalidad directa
Sustituya los parámetros con los valores reales y ejecute el mandato:
mfpdev adapter create <adapter_name> -t <adapter_type> -p <adapter_package_name> -g <maven_project_groupid>
Creación de adaptadores mediante arquetipos Maven “adapter-maven-archetype”
“adapter-maven-archetype” es un arquetipo que Mobile Foundation proporciona, que se basa en el Maven Archetype Toolkit y que Maven utiliza con el propósito de crear un proyecto Maven de adaptador.
Utilice el mandato Maven archetype:generate
para crear un proyecto de adaptador Maven. Una vez ejecute el mandato, Maven descargará (o utilizará los repositorios locales mencionados con anterioridad) los archivos necesarios con el propósito de generar el proyecto Maven de adaptador.
Puede ejecutar el mandato de forma interactiva o de forma directa.
Modalidad interactiva
-
Desde la ventana de línea de mandatos, vaya a la ubicación de su elección.
También es donde se generará el proyecto de Maven. -
Sustituya el parámetro DarchetypeArtifactId con el valor real y ejecute:
mvn archetype:generate -DarchetypeGroupId=com.ibm.mfp -DarchetypeArtifactId=replace-with-the-adapter-type-artifact-ID
ID de grupo de arquetipo
y Versión de arquetipo son parámetros necesarios para identificar el arquetipo.- El
ID de artefacto de arquetipo
es un parámetro necesario para identificar el tipo de adaptador:- Utilice
adapter-maven-archetype-java
para crear el adaptador Java - Utilice
adapter-maven-archetype-http
para crear el adaptador HTTP JavaScript - Utilice
adapter-maven-archetype-sql
para crear el adaptador SQL JavaScript
- Utilice
-
Especifique un ID de grupo del proyecto Maven a compilar. Por ejemplo:
Define value for property 'groupId': : com.mycompany
-
Especifique un ID de artefacto del proyecto Maven que más tarde también se utilizará como nombre de adaptador. Por ejemplo:
Define value for property 'artifactId': : SampleAdapter
-
Especifique la versión del proyecto Maven (el valor predeterminado es
1.0-SNAPSHOT
). Por ejemplo:Define value for property 'version': 1.0-SNAPSHOT: : 1.0
-
Especifique un nombre de paquete del adaptador (el valor predeterminado es
groupId
). Por ejemplo:Define value for property 'package': com.mycompany: : com.mypackage
-
Especifique
y
para confirmar:Confirm properties configuration: groupId: com.mycompany artifactId: SampleAdapter version: 1.0 package: com.mypackage archetypeVersion: 8.0.0 Y: : y
Modalidad directa
Sustituya los parámetros con los valores reales y ejecute el mandato:
mvn archetype:generate -DarchetypeGroupId=com.ibm.mfp -DarchetypeArtifactId=<adapter type artifact ID> -DgroupId=<maven_project_groupid> -DartifactId=<maven_project_artifactid> -Dpackage=<adapter_package_name>
Para obtener más información sobre el mandato
archetype:generate
consulte la Documentación de Maven.
Estructura de archivos
Después de crear el adaptador el resultado será un proyecto Maven con una carpeta src y un archivo pom.xml:
Compilación y despliegue de adaptadores
Compilación
-
Mediante MobileFirst CLI - Ejecute el mandato
adapter build
desde la carpeta raíz del proyecto.mfpdev adapter build
-
Mediante Maven - El adaptador se compila cada vez que ejecuta el mandato
install
para compilar el proyecto Maven.mvn install
Compilación de todo
Si tiene varios adaptadores en una carpeta del sistema de archivos y desea compilarlos todos, utilice:
mfpdev adapter build all
La salida es un archivo de archivado .adapter que encontrará en la carpeta target de cada adaptador:
Despliegue
-
El archivo pom.xml contiene las siguientes
properties
:<properties> <!-- parameters for deploy mfpf adapter --> <mfpfUrl>http://localhost:9080/mfpadmin</mfpfUrl> <mfpfUser>admin</mfpfUser> <mfpfPassword>admin</mfpfPassword> <mfpfRuntime>mfp</mfpfRuntime> </properties>
- Sustituya localhost:9080 con su dirección IP y número de puerto de MobileFirst Server.
- Opcional. Sustituya los valores predeterminados de mfpfUser y mfpfPassword con su nombre de usuario y contraseña de administrador.
- Opcional. Sustituya el valor predeterminado de mfpfRuntime con el nombre de su tiempo de ejecución.
-
Ejecute el mandato deploy desde la carpeta raíz del proyecto:
- Utilización de MobileFirst CLI:
mfpdev adapter deploy -x
La opción
-x
despliega el adaptador en la instancia de MobileFirst Server que se especifique en el archivo pom.xml del adaptador.
Si no se utiliza esta opción, la interfaz de línea de mandatos utilizará el servidor predeterminado especificado en los valores de la CLI.Para obtener más información sobre opciones de despliegue de CLI, ejecute el mandato:
mfpdev help adapter deploy
.
-
Utilización de Maven:
mvn adapter:deploy
Despliegue de todo
Si tiene varios adaptadores en una carpeta del sistema de archivos y desea desplegarlos todos, utilice:
mfpdev adapter deploy all
Sugerencia: También puede compilar y desplegar el adaptador con un único mandato:
mvn install adapter:deploy
Despliegue en distintos tiempos de ejecución
Si ejecuta varios tiempos de ejecución, consulte Registro de aplicaciones y despliegue de adaptadores para distintos tiempos de ejecución.
Dependencias
Para poder utilizar una biblioteca externa en su adaptador, siga una de las siguientes instrucciones sugeridas:
Adición de una dependencia local
- Añada una carpeta lib bajo la carpeta de proyecto Maven raíz y coloque en ella la biblioteca externa.
- Añada la vía de acceso a la biblioteca bajo el elemento
dependencies
en el archivo pom.xml del proyecto Maven.
Por ejemplo:
<dependency>
<groupId>sample</groupId>
<artifactId>com.sample</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/</systemPath>
</dependency>
Adición de una dependencia externa
- Busque dependencias en repositorios en línea como, por ejemplo, The Central Repository.
- Copie la información de la dependencia de POM y péguela bajo el elemento
dependencies
en el archivo pom.xml del proyecto Maven.
El siguiente ejemplo utiliza cloudant-client artifactId
:
<dependency>
<groupId>com.cloudant</groupId>
<artifactId>cloudant-client</artifactId>
<version>1.2.3</version>
</dependency>
Consulte la documentación de Maven para obtener más información sobre las dependencias.
Agrupación de adaptadores en un único proyecto Maven
Si tiene varios adaptadores en su proyecto es posible que desee disponerlos bajo un único proyecto Maven. La agrupación de adaptadores proporciona ventajas como, por ejemplo, la posibilidad de compilarlos todos, desplegarlos todos o de compartir dependencias. También puede compilar y desplegar todos los adaptadores incluso si no están agrupados en un único proyecto Maven mediante los mandatos de CLI mfpdev adapter build all
y mfpdev adapter deploy all
.
Para agrupar los adaptadores que necesite:
- Cree una carpeta raíz y denomínela, por ejemplo, como “GroupAdapters”.
- Coloque los proyectos de adaptador Maven en la misma.
-
Cree un archivo pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sample</groupId> <artifactId>GroupAdapters</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging> <modules> <module>Adapter1</module> <module>Adapter2</module> </modules> <properties> <!-- parameters for deploy mfpf adapter --> <mfpfUrl>http://localhost:9080/mfpadmin</mfpfUrl> <mfpfUser>admin</mfpfUser> <mfpfPassword>admin</mfpfPassword> <mfpfRuntime>mfp</mfpfRuntime> </properties> <build> <plugins> <plugin> <groupId>com.ibm.mfp</groupId> <artifactId>adapter-maven-plugin</artifactId> <extensions>true</extensions> </plugin> </plugins> </build> </project>
- Defina un elemento
groupId
que desee - Añada un elemento
artifactId
- el nombre de la carpeta raíz - Añada un elemento
module
para cada adaptador - Añada el elemento
build
- Opcional. Sustituya localhost:9080 con su dirección IP y número de puerto de MobileFirst Server específicos.
- Opcional. Sustituya los valores predeterminados de
mfpfUser
ymfpfPassword
con su nombre de usuario y contraseña de administrador. -
Opcional. Sustituya el valor predeterminado de
mfpfRuntime
con el nombre de su tiempo de ejecución. - Para compilar o desplegar todos los adaptadores, ejecute los mandatos desde el proyecto “GroupAdapters” raíz.
Descarga o despliegue de adaptadores mediante MobileFirst Operations Console
- Abra el navegador de su elección y cargue MobileFirst Operations Console utilizando la dirección
http://<IP>:<PORT>/mfpconsole/
. - Pulse el botón “Nuevo” junto a Adaptadores. Tiene dos opciones para crear un adaptador:
- Mediante Maven o MobileFirst CLI tal como se explicó con anterioridad.
- Descargue un proyecto de adaptador de plantilla (paso 2).
- Compile el adaptador mediante Maven o MobileFirst CLI.
- Elija una de las siguientes maneras para subir el archivo .adapter generado que se puede encontrar en la carpeta de destino del proyecto del adaptador:
- Pulse en el botón Desplegar adaptador (paso 5).
- Arrastre y suelte el archivo en la pantalla del adaptador “Crear nuevo”.
- Después de desplegar de forma satisfactoria el adaptador, se visualizará la página de detalles con los siguientes separadores:
- Configuraciones - Contiene las propiedades que el archivo XML del adaptador define. Aquí se pueden cambiar las configuraciones sin tener que realizar de nuevo el despliegue.
- Recurso - Contiene una lista de los recursos de adaptador.
- Archivos de configuración - Contiene datos de configuración del adaptador para ser utilizados en los entornos de DevOps.
Actualización del proyecto Maven del adaptador
Para actualizar el proyecto Maven del adaptador con el último release, encuentre el número de versión de la API y los artefactos de plugin en el repositorio central de Maven buscando “IBM MobileFirst Platform”, y actualice las siguientes propiedades en el archivo pom.xml del proyecto Maven del adaptador:
-
La versión de
adapter-maven-api
:<dependency> <groupId>com.ibm.mfp</groupId> <artifactId>adapter-maven-api</artifactId> <scope>provided</scope> <version>8.0.2016061011</version> </dependency>
-
La versión de
adapter-maven-plugin
:<plugin> <groupId>com.ibm.mfp</groupId> <artifactId>adapter-maven-plugin</artifactId> <version>8.0.2016061011</version> <extensions>true</extensions> </plugin>
Funcionamiento fuera de línea
Si no tiene acceso en línea al repositorio central de Maven, puede compartir los artefactos Maven de Mobile Foundation en el repositorio interno de su organización.
- Visite la página de descargas y descargue el instalador de IBM MobileFirst Foundation Developer Kit.
- Inicie MobileFirst Server y en un navegador, cargue MobileFirst Operations Console desde el siguiente URL:
http://<your-server-host:server-port>/mfpconsole
. - Pulse Centro de descargas. Bajo Herramientas → Arquetipos de adaptador, pulse Descargar. Se descargará el archivador mfp-maven-central-artifacts-adapter.zip.
- Añada los arquetipos de adaptador y las comprobaciones de seguridad al repositorio Maven interno ejecutando el script install.sh para Linux y Mac o el script install.bat para Windows.
- Se necesitan los siguientes archivos JAR para adapter-maven-api. Asegúrese de que están ubicados en la carpeta .m2 local de los desarrolladores o en el repositorio Maven de su organización. Puede descargarlos desde el The Central Repository.
- javax.ws.rs:javax.ws.rs-api:2.0
- javax:javaee-web-api:6.0
- org.apache.httpcomponents:httpclient:4.3.4
- org.apache.httpcomponents:httpcore:4.3.2
- commons-logging:commons-logging:1.1.3
- javax.xml:jaxp-api:1.4.2
- org.mozilla:rhino:1.7.7
- io.swagger:swagger-annotations:1.5.6
- com.ibm.websphere.appserver.api:com.ibm.websphere.appserver.api.json:1.0
- javax.servlet:javax.servlet-api:3.0.1
Guías de aprendizaje con las que continuar
- Aprender sobre adaptadores Java
- Aprender sobre adaptadores JavaScript
- Desarrollo de adaptadores en entornos de desarrollo integrado (IDE)
- Pruebas y depuración de adaptadores
- Revisar todas las guías de aprendizaje de adaptadores
Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.