As part of general security hardening of an AEM instance, Adobe recommends turning off the debug filter in Production Publish instances as part of the OSGi configurations (http://dev.day.com/docs/en/cq/current/deploying/security_checklist.html#OSGI Settings).
However, it seems that this configuration is no longer found in the OSGi configurations in AEM 5.6.1. It’s back in AEM 6.0 and from what I’ve heard this may be addressed in a future release of AEM 5.6.x.
But for those currently on 5.6.1, how can you change a configuration that does not exist and prevent debug output being enabled? By either stopping the com.day.cq.wcm.core.impl.WCMDebugFilter component under http://localhost:4502/system/console/components, or by curl:
curl -u admin:admin -d "action=disable" http://localhost:4503/system/console/components/com.day.cq.wcm.core.impl.WCMDebugFilter
I was working with a client who had a problem with no packages showing in the CRX package manager. I checked the usual suspects of not being logged in etc, but everything looked fine. When checking the error.log, I saw this line:
log: 27.06.2014 13:16:53.845 *ERROR* [127.0.0.1  GET /crx/packmgr/list.jsp?_dc=1402543013769&_charset_=utf-8&includeVersions=true HTTP/1.1] com.day.crx.packmgr.impl.servlets.ListServlet Error while retrieving infos: javax.jcr.RepositoryException: Invalid path:/etc/packages/my_packages/.snapshot/My Packagename
CRXDE Lite showed that the path /etc/packages/my_packages/.snapshot/My Packagename was indeed valid. Checking the packages installed via curl gave me the the clue to the problem:
curl -u admin:admin http://localhost:4502/crx/packmgr/service.jsp?cmd=ls
<crx version="2.4.42" user="admin" workspace="crx.default">
<param name="cmd" value="ls"/>
. . .
. . .
<name>My Packagename </name>
<created>Thu, 12 Jun 2014 15:25:33 +1000</created>
<lastModified>Thu, 12 Jun 2014 15:25:33 +1000</lastModified>
. . .
. . .
What I couldn’t see in the error log you can clearly see in the package listing – a trailing space at the end of the package name.
After ducking back into CRXDE Lite, it was easy to rename the package by editing the ‘name’ property of the vault definition located at /etc/packages/my_packages/My Packagename-1.0.zip/jcr:content/vlt:definition. Then after refreshing the packages in Package Manager, packages were displayed and all was working as expected again.
At the end of last week, AEM 6.0 was finally released. As both a LiveCycle and AEM developer this is very interesting news for me, since LiveCycle is being merged into the AEM product suite, under AEM Forms. This also includes Adaptive Forms – forms with a responsive design and a host of other cool features.
Here are some links where you can find more information on AEM 6.0:
AEM 6.0 Release Notes
AEM 6.0 Documentation
Sightly – The New AEM 6 Templating Language
Introduction to AEM Forms
AEM Forms Help
AEM Forms Forums
There’s a lot more information out there, but this is some good reading to get started.
Many of the clients I work with use Scrum to manage projects. I find it a great way to deal with complex projects that have ever changing requirements, as the case tends to be in large enterprises.
So in an effort to further improve my skills in this area, I recently became a Certified Scrum Master. Even if you are not planning on perusing the role of Scrum Master, the course still provides you with some great skills to use in a Scrum environment. Also, by becoming certified you get a two year membership to the Scrum Alliance which include access to job postings, user groups, discounts on Scrum gatherings, access to a wealth of information, and more.
If you’re interested in becoming more active with Scrum, be it in the Scum community or in the workplace, then this is definitely worth looking into.
While creating some AEM Forms (LiveCycle) demos for some clients, it became very apparent that they wanted to see forms in action on mobiles and tablets. One of the easiest ways I have found to do this is by using Charles.
By ensuring your demo computer and mobile/tablet are on the same network, and manually configuring the proxy settings on your device, you can route all traffic via Charles and force your device to pass through your computer when browsing. So if you have an HTML form on your computer at the URL http://localhost:8080/lc/content/xfaforms/profiles/default.html?contentRoot=repository%3A%2F%2F%2FApplications%2FFormDemo%2F1.0%2Fforms&template=SampleForm.xdp&dataRef=http://localhost:8080/lc/content/dam/lcapplications/temp_archive_storage/tempArchive_4895793046486&dataRef=4895793046486 (as is generated in the Forms Manager preview), you can open this form on your device by substituting localhost with the IP address of your computer – you now can test and demo forms on a mobile device!
I’ve not tested other AEM functionality in this way yet, but I don’t see why it would not work the same way.
For official instructions on using Charles in this way (for an iPhone), check out Using Charles From an iPhone.
I was trying to use Forms Manager in my local ES4 installation for the first time today, and even though I had installed the module when installing AEM Forms (previously known as LiveCycle) the Forms Manager option was not appearing for me in the main menu at http://localhost:8080/lc
The strange thing about this is that if I navigated directly to the actual Forms Manager URL at http://localhost:8080/lc/fm, Forms Manager was running. However none of my LiveCycle applications were listed, and when trying to syncronise my applications with Forms Manager as described in Getting forms in Forms Manager I was not allowed due to permissions errors, even though I was logged in as the Super Administrator. When I updated my own user with ALL roles in LiveCycle, I could not even access Forms Manager at all.
I asked a colleague of mine Darren about this (who runs his own LiveCycle blog The LiveCycle survival kit), and he suggested I try and run Configuration Manager again. When Configuration Manager reached the step of “LiveCycle ES4 Component Deployment Validation”, it passed validation but not without some warnings that some DSCs were not running. One of these was “adobe-formsmanager-dsc.jar is deployed but is not currently running”.
I opened Workbench, and sure enough the FormsManager DSC was in a stopped state. A simple right-click on the component to open the menu, then clicking “Start Component” started the component. After re-running the “LiveCycle ES4 Component Deployment Validation” step in Configuration Manager again, this warning did not appear. After Configuration Manager finished, I opened the Adobe LiveCycle ES4 Modules page again at http://localhost:8080/lc and sure enough, Forms Manager was listed and working correctly this time.