De forma predeterminada, las aplicaciones Java™ EE no tienen acceso a las API de terceros disponibles en el perfil Liberty. Para habilitar este acceso, la aplicación debe configurarse en el archivo server.xml, o en un archivo incluido.
Acerca de esta tarea
En el ejemplo siguiente, una aplicación que se denomina Scholar tiene que acceder a las API de terceros que están disponibles en el perfil Liberty.
La aplicación también utiliza una biblioteca común denominada Alexandria.
Esta biblioteca se ubica en el directorio ${server.config.dir}/mylib/Alexandria.
Procedimiento
- Configure la carga de clases para la aplicación, para que la aplicación pueda acceder a la API de terceros.
El valor predeterminado para el atributo apiTypeVisibility del elemento classloader es spec,ibm-api,api. Donde spec representa las API de especificación públicas disponibles para la compilación y el tiempo de ejecución, ibm-api representa las API disponibles en el perfil Liberty y api representa las API publicas disponibles para la compilación y el tiempo de ejecución.
Si se incluye third-party en el atributo apiTypeVisibility del elemento classloader conseguirá que las API de terceros estén disponibles.
En el archivo
server.xml, o en un archivo incluido, configure la visibilidad del tipo de API añadiendo el siguiente código:
<application id="scholar" name="Scholar" type="ear" location="scholar.ear">
<classloader apiTypeVisibility="spec, ibm-api, third-party" commonLibraryRef="Alexandria" />
</application>
- Opcional: Si la aplicación utiliza cualquier biblioteca común, establezca estas bibliotecas para que utilicen la misma visibilidad de tipo de API.
En el archivo
server.xml, o en un archivo incluido, añada el siguiente código:
<library id="Alexandria" apiTypeVisibility="spec, ibm-api, third-party">
<fileset dir="${server.config.dir}/mylib/Alexandria" includes="*.jar" scanInterval="5s" />
</library>