Monday, 31 March 2014

Creating Java Swing applications that post files to AEM ClientLibs folders

You can create a custom Java Swing client application that lets a user select a file from the local desktop and post the file to an AEM ClientLibs folder. In most AEM applications, you create a ClientLibs folder to store required application files such as CSS file and JS files. In some cases, you can place third-party files like JQuery JS files when you want to incorporate functionality offered by these files into your AEM application.

The following illustration shows CSS and JS files located in an AEM client libs folder.



For more information about a ClientLibs folder, see Using Client-Side Libraries.

Note: There are other ways to get files into a ClientLibs folder. For example, you can use the CRXDE tool to drag and drop files from the local desktop to a ClientLibs folder. However, there are drawbacks to using CRXDE to drag and drop files from the desktop to an AEM client libs folder.

To develop a Java Swing application that posts files to an AEM client libs folder, you use Java APIs located in the org.apache.http package. The APIs located in this package lets you post files to a custom AEM Sling Servlet. The Sling Servlet saves the file in the specified ClientLibs folder using the JCR API.



The following illustration shows the Java client application that is created in this development article.


A Java client application that posts files to an AEM ClientLibs folder

To read this development article, click http://helpx.adobe.com/experience-manager/using/post_files.html.

To watch the video, click:



Adobe Digital Marketing Community

Join the Adobe Digital Marketing Community. Start by clicking this banner

About the Author

I (Scott Macdonald) am a Senior Digital Marketing Community Manager at Adobe Systems with over 16 years in the high tech industry. I am also a programmer with knowledge in Java, JavaScript, C#,C++, HTML, XML and ActionScript. If  you would like to see more CQ or other Adobe Digital Marketing end to end articles like this, then leave a comment and let me know what content you would like to see.

Linked Inhttp://www.linkedin.com/in/scottmacdonald2010
TwitterFollow the Digital Marketing Customer Care team on Twitter @AdobeMktgCare.


Friday, 21 March 2014

Storing LiveCycle ES process data in a remote Adobe Experience Manager JCR

As a user of both Adobe LiveCycle ES and Adobe Experience Manager, you can create business applications that make use of both platforms. That is, you can create an enterprise solution that uses functionality provided by Adobe CQ and LiveCycle ES. By combining the functionality of both server products, you can create applications to solve your business requirements.

For example, assume that you have a LiveCycle business process that uses PDF documents. Next assume that the process extracts data from the PDF document and you want to store the data in a JCR that belongs to a remote AEM server.

Process data is sent from a LiveCycle ES process to the AEM JCR
As shown in the previous illustration, you can create a custom LiveCycle ES Document Service Component (DSC) that is able to post process data to a custom AEM Sling Servlet. The custom Sling Servlet persists the process data in the AEM JCR by using the JCR API. The following illustration shows a LiveCycle ES process that sets process variables and then uses the custom DSC to persist the data into the AEM JCR.





To read this development article, see http://helpx.adobe.com/experience-manager/using/custom-sling-servlets11.html.

Adobe Digital Marketing Community

Join the Adobe Digital Marketing Community. Start by clicking this banner

About the Author

I (Scott Macdonald) am a Senior Digital Marketing Community Manager at Adobe Systems with over 16 years in the high tech industry. I am also a programmer with knowledge in Java, JavaScript, C#,C++, HTML, XML and ActionScript. If  you would like to see more CQ or other Adobe Digital Marketing end to end articles like this, then leave a comment and let me know what content you would like to see.

Linked Inhttp://www.linkedin.com/in/scottmacdonald2010
TwitterFollow the Digital Marketing Customer Care team on Twitter @AdobeMktgCare.
TwitterFollow me on Twitter @smac2020

Monday, 17 March 2014

Meet the Digital Marketing Community team at Digital Marketing Summit 2014

The Digital Marketing summit is a week away. If you are attending, please stop by the community booth and meet the Digital Marketing community team. This will give you a chance to meet us in person. We have lots of interesting stuff to give away and look forward to meeting you as well as hearing about your thoughts.



Adobe Digital Marketing Community

Join the Adobe Digital Marketing Community. Start by clicking this banner

About the Author

I (Scott Macdonald) am a Senior Digital Marketing Community Manager at Adobe Systems with over 16 years in the high tech industry. I am also a programmer with knowledge in Java, JavaScript, C#,C++, HTML, XML and ActionScript. If  you would like to see more CQ or other Adobe Digital Marketing end to end articles like this, then leave a comment and let me know what content you would like to see.

Linked Inhttp://www.linkedin.com/in/scottmacdonald2010
TwitterFollow the Digital Marketing Customer Care team on Twitter @AdobeMktgCare.

Creating your first Adobe Experience Manager custom xtype

You can create an Adobe Experience Manager widget that is based on a custom xtype. A custom xtype can contain other AEM controls such as combo boxes, text boxes, and so on. Also, the xtype is used within a component's dialog within a panel. An AEM author enters values into the custom xtype that are used by the AEM component. You can develop the custom AEM component to use these values to meet your business requirements. In this article, the values are retrieved using application logic within the component's JSP file and written to a CQ page.

You can place AEM controls within a custom xtype and then use JavaScript to control the behaviour of each control. That is, you can define custom functionality that is not available with the standard component. For example, you can define custom JavaScript application logic within an event handler and dynamically update other fields. For information, see Dynamically updating AEM custom xtype fields.

Creating custom xtypes is a method of extending AEM standard components. To create a custom xtype, you use the AEM widget API. For information, see CQ5 Widgets API Documentation.

The following illustration shows the custom xtype that is created in this development article.

An AEM custom xtype
This development article walks you through how to build this custom xtype. To read this development article, click  http://helpx.adobe.com/experience-manager/using/creating-custom-xtype.html.

Adobe Digital Marketing Community

Join the Adobe Digital Marketing Community. Start by clicking this banner

About the Author

I (Scott Macdonald) am a Senior Digital Marketing Community Manager at Adobe Systems with over 16 years in the high tech industry. I am also a programmer with knowledge in Java, JavaScript, C#,C++, HTML, XML and ActionScript. If  you would like to see more CQ or other Adobe Digital Marketing end to end articles like this, then leave a comment and let me know what content you would like to see.

Linked Inhttp://www.linkedin.com/in/scottmacdonald2010
TwitterFollow the Digital Marketing Customer Care team on Twitter @AdobeMktgCare.

Monday, 3 March 2014

Invoking Sling Servlets from AEM xtype widgets

You can create an Adobe Experience Manager (AEM) custom component that contains a TreePanel xtype object that displays tree-structured data, such as a data result set that contains JCR data. The TreePanel is an instance of CQ.Ext.tree.TreePanel. For information, see CQ.Ext.tree.TreePanel.

You can invoke a Sling Servlet to populate the TreePanel object. That is, the TreePanel object displays the data that is retrieved from the AEM JCR by using a Sling Servlet. The data that is displayed within the TreePanel can be expanded or collapsed by clicking on it.

The TreePanel lets an AEM author view the data that is returned by the Servlet, as shown in the following illustration.

An AEM TreePanel component displaying a data result set based on the AEM JCR
To read this development article, click http://helpx.adobe.com/experience-manager/using/creating-custom-cq-tree.html.

Adobe Digital Marketing Community

Join the Adobe Digital Marketing Community. Start by clicking this banner

About the Author

I (Scott Macdonald) am a Senior Digital Marketing Community Manager at Adobe Systems with over 16 years in the high tech industry. I am also a programmer with knowledge in Java, JavaScript, C#,C++, HTML, XML and ActionScript. If  you would like to see more CQ or other Adobe Digital Marketing end to end articles like this, then leave a comment and let me know what content you would like to see.

Linked Inhttp://www.linkedin.com/in/scottmacdonald2010
TwitterFollow the Digital Marketing Customer Care team on Twitter @AdobeMktgCare.