


I want to invoke the custom servlet to perform some action in publish server through custom workflow step. Anyone has idea how to achieve this scenario ?
Yes - but why not implement a service (as opposed to a Servlet) then you can use @Reference annotation from within your custom step to invoke the Java logic.
as per the acceptance criteria i have to invoke servlet from custom workflow step. Currently i am using CloseableHttpClient closeableHttpClient to invoke servlet.
Views
Replies
Sign in to like this content
Total Likes
Based on your project's design and requirements whatever you choose to use (either servlet or service or just a component), the underlying logic would primarily work in same manner - Get hold of server's runmode and process your custom code.
To get the run mode in server side code -
Slice-CQ/WcmModeModel.java at master · Cognifide/Slice-CQ · GitHub
or use
final WCMMode mode = WCMMode.fromRequest(request);
if (null == mode || WCMMode.DISABLED.equals(mode)) { // do something }
*you would find WCMMode in uber-jar
Create your workflow, register it and use WCMMode to excute it only on publish server. Once everything is done, configure this workflow step in your custom workflow.
Example -
Adobe Experience Manager Help | Invoking Adobe Experience Manager Workflows using the AEM Java API
Hope that helps.
If you requirement is to invoke a Servlet as opposed to an AEM Service, then write Java code from your custom step that can perform a GET operation on a servlet.
You can use HttpClient.
Refer below URL:
https://helpx.adobe.com/experience-manager/using/HttpClient_AEM.html
Views
Replies
Sign in to like this content
Total Likes