AEM Forms-werkruimtecomponenten integreren in webtoepassingen integrating-aem-forms-workspace-components-in-web-applications
U kunt de werkruimte van AEM Forms componenten in uw eigen Webtoepassing gebruiken. De volgende voorbeeldimplementatie gebruikt componenten van een AEM Forms-werkruimtendev-pakket dat op een CRX™-instantie is geïnstalleerd om een webtoepassing te maken. Pas de onderstaande oplossing aan uw specifieke behoeften aan. De voorbeeldimplementatie gebruikt opnieuw UserInfo -, FilterList - en TaskList -componenten in een webportal.
-
Meld u aan bij de CRXDE Lite-omgeving op
https://'[server]:[port]'/lc/crx/de/. Zorg ervoor dat u een AEM Forms-ontwikkelpakket voor werkruimten hebt geïnstalleerd. -
Maak een pad
/apps/sampleApplication/wscomponents. -
CSS, afbeeldingen, js/libs, js/runtime en js/registry.js kopiëren
- Van
/libs/ws - tot en met
/apps/sampleApplication/wscomponents.
- Van
-
Maak een bestand demomain.js in de map /apps/sampleApplication/wscomponents/js. Kopieer code van /libs/ws/js/main.js naar demomain.js.
-
In demomain.js, verwijder de code om Router te initialiseren en de volgende code toe te voegen:
code language-javascript require(['initializer','runtime/util/usersession'], function(initializer, UserSession) { UserSession.initialize( function() { // Render all the global components initializer.initGlobal(); }); }); -
Maak een knooppunt onder /content op naam
sampleApplicationen typnt:unstructured. Voeg in de eigenschappen van dit knooppuntsling:resourceTypevan het type String en valuesampleApplicationtoe. Voeg in de lijst Toegangsbeheer van dit knooppunt een item toe voorPERM_WORKSPACE_USERdat jcr:read-bevoegdheden toestaat. Voeg in de lijst Toegangsbeheer van/apps/sampleApplicationook een item toe voorPERM_WORKSPACE_USERhet toestaan van machtigingen voor jcr:read. -
Werk in
/apps/sampleApplication/wscomponents/js/registry.jspaden van/lc/libs/ws/naar/lc/apps/sampleApplication/wscomponents/bij voor sjabloonwaarden. -
Voeg de volgende code toe aan het JSP-bestand van de introductiepagina van uw portal op
/apps/sampleApplication/GET.jspom de vereiste componenten in de portal op te nemen.code language-jsp <script data-main="/lc/apps/sampleApplication/wscomponents/js/demomain" src="/lc/apps/sampleApplication/wscomponents/js/libs/require/require.js"></script> <div class="UserInfoView gcomponent" data-name="userinfo"></div> <div class="filterListView gcomponent" data-name="filterlist"></div> <div class="taskListView gcomponent" data-name="tasklist"></div>Neem ook de CSS-bestanden op die vereist zijn voor de AEM Forms-werkruimtecomponenten.
note note NOTE Elke component wordt toegevoegd aan de componenttag (met klassecomponent) tijdens het renderen. Zorg ervoor dat de homepage deze tags bevat. Zie het html.jsp-bestand van de AEM Forms-werkruimte voor meer informatie over deze basislabels voor besturingselementen. -
Als u de componenten wilt aanpassen, kunt u de bestaande weergaven voor de vereiste component als volgt uitbreiden:
code language-javascript define([ 'jquery', 'underscore', 'backbone', 'runtime/views/userinfo'], function($, _, Backbone, UserInfo){ var demoUserInfo = UserInfo.extend({ //override the functions to customize the functionality render: function() { UserInfo.prototype.render.call(this); // call the render function of the super class … //other tasks … } }); return demoUserInfo; }); -
Wijzig portaal CSS om de lay-out, het plaatsen, en de stijl van de vereiste componenten op uw portaal te vormen. U wilt bijvoorbeeld de achtergrondkleur zwart houden voor dit portaal om de component userInfo goed te kunnen bekijken. U kunt dit doen door de achtergrondkleur in
/apps/sampleApplication/wscomponents/css/style.cssals volgt te wijzigen:code language-css body { font-family: "Myriad pro", Arial; background: #000; //This was origianlly #CCC position: relative; margin: 0 auto; }