Answer needed from an AEM architect or SME on nature of java code need for AEM to function | Community
Skip to main content
Level 2
January 25, 2021
Solved

Answer needed from an AEM architect or SME on nature of java code need for AEM to function

  • January 25, 2021
  • 1 reply
  • 1509 views

I am looking for bringing in AEM SAAS to our shop, migrating from another CMS. We are thinking of delivering a content driven but browser based MVC bases app suing react or angular with javascript doing most of the data call invocation and validation from browser itself.. I read ib some thread that I will still need to be a lot java customization that will be needed on the platform. I am a bit confused,  I wanted to know what will be the typical nature of java code that will be need to support our ecomm in AEM . Any and all help is appreciated 

 

Is there any article of link you can share ?

Thanks

 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Kunal_Gaba_

You will be using AEM in headless pattern in your application. It is a SPA which will own the rendering of components on the page. AEM will provide the content to the app in JSON format. 

Few things you should consider- 

1. What kind of authoring experience you would like ? Do you want authors should be able to edit the experience of the app within the app context? Then you should go with AEM SPA editor integration which will allow the authors to edit the content in context. The front end team of your project should be able to use SPA editor libraries in their React or Angular components. See- https://experienceleague.adobe.com/docs/experience-manager-65/developing/headless/spas/spa-overview.html?lang=en#headless 

2. In headless approach the content from AEM is exported in JSON format. Every component or fragment you create for authors will require a JSON export. The Java code here will be required to export component properties in JSON. This code is not that complex and the plumbing code of generating the JSON output is already made available within Sling framework,  See - https://experienceleague.adobe.com/docs/experience-manager-65/developing/components/json-exporter.html?lang=en#components 

3. If you are planning to use AEM as a cloud service then new GraphQL API of exporting content is available within AEMaaCS. This will simplify the consumption of content from AEM as the app itself can specify what data it needs from AEM. See -  https://experienceleague.adobe.com/docs/experience-manager-learn/getting-started-with-aem-headless/graphql/explore-graphql-api.html?lang=en#prerequisites 

1 reply

Kunal_Gaba_
Kunal_Gaba_Accepted solution
January 26, 2021

You will be using AEM in headless pattern in your application. It is a SPA which will own the rendering of components on the page. AEM will provide the content to the app in JSON format. 

Few things you should consider- 

1. What kind of authoring experience you would like ? Do you want authors should be able to edit the experience of the app within the app context? Then you should go with AEM SPA editor integration which will allow the authors to edit the content in context. The front end team of your project should be able to use SPA editor libraries in their React or Angular components. See- https://experienceleague.adobe.com/docs/experience-manager-65/developing/headless/spas/spa-overview.html?lang=en#headless 

2. In headless approach the content from AEM is exported in JSON format. Every component or fragment you create for authors will require a JSON export. The Java code here will be required to export component properties in JSON. This code is not that complex and the plumbing code of generating the JSON output is already made available within Sling framework,  See - https://experienceleague.adobe.com/docs/experience-manager-65/developing/components/json-exporter.html?lang=en#components 

3. If you are planning to use AEM as a cloud service then new GraphQL API of exporting content is available within AEMaaCS. This will simplify the consumption of content from AEM as the app itself can specify what data it needs from AEM. See -  https://experienceleague.adobe.com/docs/experience-manager-learn/getting-started-with-aem-headless/graphql/explore-graphql-api.html?lang=en#prerequisites 

uraeesAuthor
Level 2
January 26, 2021
This is very helpful man .. thanks and appreciate;