Placement d'un portlet dans une page

Pour placer un portlet dans une page, utilisez la méthode insert() du contrôleur.

Procédure

  1. Obtenez un contrôleur de modèle de présentation pour la page où le portlet doit être placé.
  2. Obtenez un contexte LayoutControlCreationContext, dont l'ID définition du portlet et éventuellement l'ID entité du portlet.
  3. Créez un contrôle de présentation à l'aide du contexte de l'étape précédente et de la méthode create() du contrôleur de modèle de présentation.
  4. Insérez le contrôle de présentation créé dans le contrôleur du modèle de présentation.
  5. Conservez vos modifications à l'aide de la méthode commit() du contrôleur.

Exemple

Exemple 1 - Placement d'un portlet dans une page :
// obtain layout model controller
final LayoutModelController lmController = cmController.getLayoutModelController(page);

// obtain layout control creation context
final LayoutControlCreationContext context   = ... (portletDefinition, null);
//final LayoutControlCreationContext context = ... (portletDefinition, portletEntity);

// create layout control
final Modifiable control = lmController.create(LayoutControl.class, context);

// insert control into the topology of the layout model controller (given a container and a sibling)
lmController.insert(control, container, sibling);

// commit the content model controller
cmController.commit();