Génération d'adresse URL de projet
Vous pouvez rediriger le traitement des demandes vers un projet particulier en générant des adresses URL avec l'API ProjectIdentificationService ou l'API REST. Le traitement d'une demande s'effectue soit complètement dans la portée d'un projet, soit complètement hors de la portée d'un projet. Vous ne pouvez pas changer de projet lors du traitement des demandes.
Lorsqu'une demande est initiée dans un projet, l'adresse URL de la demande contient l'identificateur de ce projet. Les informations de projet sont incluses dans l'adresse URL uniquement et ne sont pas liées à la session. L'identificateur de projet peut être un ID objet (OID), utilisé par le portail, ou un identificateur unique universel (UUID), utilisé par Web Content Manager. Pour diriger le traitement d'une demande vers un projet spécifique, vous devez générer une adresse URL pour ce projet, puis l'afficher.
API Java
- L'API ProjectIdentificationService fournit des méthodes permettant de créer un objet
ServerContext
en fonction de l'identificateur du projet cible et de l'objetServerContext
en cours. - L'objet
ServerContext
spécifique au projet peut ensuite être utilisé pour extraire un objetURLFactory
à partir du service du gestionnaire d'état. Toutes les adresses URL générées avec cette fabrique contiennent l'ID du projet.
// construct a server context for the project
final ServerContext projectCtx = projectService.createServerContext(
projectID, stateService.getServerContext());
// access the URL factory to create a URL
final URLFactory urlFct = stateService.getURLFactory(projectCtx);
// construct a URL to the current state
final EngineURL url = urlFct.newURL(Constants.SMART_COPY);
url.writeDispose(out);
// done with URL generation
urlFct.dispose();
// construct a server context for the project
final PocServerContext projectCtx = projectService.createServerContext(
projectID, pocService.getServerContext());
// access the URL factory to create a URL
final DisposablePocURLFactory urlFct = pocService
.getURLFactory(projectCtx);
// construct a URL to the current state
final PocURL url = urlFct.newURL(PocURLFactory.LATE_BINDING);
url.setMode(Constants.VALUE_DOWNLOAD);
url.setURI(new URI("test:abc"));
// serialize
url.writeDispose(out);
// done with URL generation
urlFct.dispose();
API REST
Si votre application utilise l'architecture REST (Representational State Transfer), vous pouvez utiliser les API distantes mises à disposition avec le portail afin de construire des adresses URL propres au projet.