Le framework ADF se démocratise de plus en plus et pour déployer vos nouvelles applications vous aurez besoin d’activer JRF. Mais comment faire ?
Pré-requis
Les pré-requis sont le suivants :
- avoir installé fusion middleware infrastructure
- depuis la version 12c, un repository en base de données créé via l’outils rcu
Création du repository
L’outil rcu va créer un schéma par domaine Weblogic. Chaque schéma sera préfixé. Il est possible de mutualiser plusieurs repository dans une même base à condition d’utiliser des préfixes différents.
Les schémas qui sont nécessaire pour JRF 12c sont les suivants
<PREFIX>_STB
<PREFIX>_OPSS
<PREFIX>_IAU
<PREFIX>_IAU_APPEND
<PREFIX>_IAU_VIEWER
Vous pouvez lancer l’outil rcu en mode graphique
<ORACLE_HOME>/oracle_common/bin/rcu
où en ligne de commande
<ORACLE_HOME>/oracle_common/bin/rcu -silent -createRepository -connectString db_hostname:db_port:service_name -dbUser system -dbRole Normal -useSamePasswordForAllSchemaUsers true -schemaPrefix <prefix> -component STB -component IAU -component IAU_APPEND -component IAU_VIEWER -component OPSS
Pour éviter de devoir saisir les différents mots de passe de connexion à la base et mot de passe de définition des users propriétaires des schéma vous pouvez renseigner un fichier texte comportant les différents passwords
cat silent-password.txt <Password_cnx_db> <Password_user> <Password_user> <Password_user> <Password_user>
La ligne de commande à utiliser est alors la suivante :
<ORACLE_HOME>/oracle_common/bin/rcu -silent -createRepository -connectString db_hostname:db_port:service_name -dbUser system -dbRole Normal -useSamePasswordForAllSchemaUsers true -schemaPrefix PROD -component STB -component IAU -component IAU_APPEND -component IAU_VIEWER -component OPSS -f < /<path>/silent-password.txt
Extension du domaine Weblogic Existant
Maintenant que vous avez le repository il ne vous reste plus qu’à étendre votre domaine Weblogic. Pour cela il vous faut charger le template jrf, configurer la datasource de connexion au repository et mettre à jour votre domaine.
print 'Adding JRF Template to domain.' readDomain('/u01/user_projects/domains/prod_domain') addTemplate('/u01/1212/INFRA/oracle_common/common/templates/wls/oracle.jrf_template_12.1.2.jar') #Making the shadowtable connection. Since ShadowTable and ServiceTable share the same #connection information, so using the ServiceTable connection information, cd('/JDBCSystemResource/LocalSvcTblDataSource/JdbcResource/LocalSvcTblDataSource') cd('JDBCDriverParams/NO_NAME_0') set('DriverName','oracle.jdbc.OracleDriver') set('URL','jdbc:oracle:thin:@db_hostname:1521/db_service_name') set('PasswordEncrypted', 'welcome1') cd('Properties/NO_NAME_0') cd('Property/user') cmo.setValue('PROD_STB') # Get the shadowTable information and cache it. getDatabaseDefaults() updateDomain()
Et voilà le tour est joué..