Posts Tagged “CQ 5.5”

Configuring CQ for a Shared-Everything Cluster

So recently I was tasked to set up a "Shared-All" or "Shared-Everything" cluster in CQ5.5 (SP 2.1).  I found out fairly quickly that the resources online do not describe this process very well, so I figured I would share my experience with the web!For those who are unaware, the "Shared-All" configuration of CQ5 is where both the datastore and file journal are on a NAS or shared mount between all clustered servers.  The reason we...

SlingFilter Addendum

One thing to keep in mind about Filters, their removal should not render your system unusable. For example, the ICS Filter in my last article, if I remove or disable it, the ICalExportServlet continues to function (as well as the rest of CQ) without error. I would say if your application does not function without the functionality you are writing, then a Filter is probably the wrong animal for you.  You could write alot of...

Sling Filter For Your Custom Calendar Event ics

Recently we added some new Calendar Event Form components.  The Author's required the ability to select a TimeZone for an event, and also and event "reminder".  Authoring these components only, don't give you the full implementation needed to have the additional content added to the ".ics" file that is generated when clicking on the "Download event as ICS file" link.This required something to be done on the back end.  My good old buddy recent requests...

Servlets in Sling - the case of the disappearing Servlet path

I have to admit, coming from a plain old JavaEE background, I was very dubious over the prospect of not using a Servlet path when creating custom Sling Servlets.  What - no Servlet path?  How will I access my Servlet?  New ideas always go down hard, but once I saw the light, it ALL made sense.Some folks have been evangelizing the use of Sling Servlets that are resource defined as opposed to path defined.  This...

Overriding the default damadmin or siteadmin pages in CQ5

Overriding foundation content in CQ5 was made fairly easy by our friends on the Adobe CQ team.  In the vast majority of cases, we can just replicate the path of the original code under libs to our apps folder.  In the case of siteadmin and damadmin, this would mean we need to copy the root node from the original path: /libs/wcm/core/content/damadmin or /libs/wcm/core/content/siteadmin to /apps/wcm/core/content/damadmin.  However, since these particular nodes are accessed through a vanityURL...

Your Custom Namespace Retort

So - In my last article, I stuck my new Namespace in an OSGi bundle where it did not belong.  I wanted to verify the approach for adding the Namespace, and in my thinking at the time, it was the quickest location to do that.  It worked.  Great - now how do I put it in the "correct" location.You cannot simply remove the Sling Namespace metadata from the POM and redeploy.  Nope.  Still there.  What I...

Fixing an out of sync CQ Cluster

Every so often a node in a CQ cluster will fall out of sync with its master.  This can happen due to a loss of network connectivity, power loss, or any number of other alternatives.  When the master and slave fall out of sync, it will be impossible to start both nodes (note start, if it was due to a network connectivity issue, it is possible that they can both remain running in a non-clustered...

2 SlingHttpServletRequests walk up to a WhiteBoard...

Recently while creating a Servlet - which I have done hundreds of times on many a CQ based projects - the Default Get Servlet was getting resolved for my request.  I added logging, made sure the SCR name property was populated, round and round I go...  Unlike Stewart the GEICO mascot, I was not yelling "Weee!"  Quite the opposite.After bugging my compadre to have an extra set of eyes on the problem, and check to...

You sunk my content path!

Juggling content from environment to environment is quite frankly a pain in the butt. PROD back to QA, QA back to DEV, DEV back to my personal CQ instance. The need to be concerned with overwriting content along the way. QA people will have their environment setup for regression testing, new testing, etc. Developers will have their tests and POC's setup on their own environments and DEV. You sometimes need to move content from QA...

Why does my TextImage Resource Type Keep Changing!?

On my current project, we ran into a very weird issue where the dialog kept changing when user's dragged images into the TextImage component we overrode from the foundation TextImage component.  Specifically, this only seemed to happen when user's dragged images into the component inline. After doing some investigation, I found that the sling:resourceType on the nodes was changing when the image was dragged into the component.  The culprit is the CQ Edit Configuration in the...

Increasing Recent Requests in the Felix Console

I argued with myself for some time before commiting to writing this post.  Part of me thought it kind of silly to post such a thing.  Then I reflected on the hour or so I wandered around trying to figure out how to get this darned thing to do what I needed it to.  So, now you won't have to wonder how the heck to get this to work properly.  This was tested on CQ...

Creating a CQ 5.5.x ClientContext Compatible JSONP Servlet

The bulk of what needs to be done for creating a JSONP servlet isn't much different than creating a POJEES - 'Plain Old JavaEE Servlet'.  In fact, the servlet I created ran under Tomcat 6.0.38. So we wont cover any of the Servlet method names implemented/overridden or configuration of the Servlet. The first problem I had was figuring out what the content type should be.  This took some digging, but the following header finally got...

CQ5 Upgrade Gotcha: Tag Localization

In CQ 5.4, Adobe added the ability to translate tags through the Tag Manager.  Unfortunately, due to the way this was implemented, it can cause issues when upgrading from CQ 5.3 or older.After performing the upgrade and importing the existing tags, you may find there are no languages available to translate the tags.  The Localization section will be visible, however no languages are available.Fortunately, the fix for this issue is easy.  Update the node at...

SCR JavaDoc Tags Deprecated in CQ 5.5

Teams migrating to Adobe CQ 5.5 have one more thing to check during the upgrade.  In CQ 5.5, the SCR JavaDoc tags are deprecated, because of this, you can no longer create bundles in CRXDE or CRXDE Lite when the code in the bundles contains SCR JavaDoc tags.  When Adobe ported CRX over to run inside of the OSGi Container, they created a bundle for the CRXDE functionality.  This includes the remote compiling and bundle builder...

New in CQ 5.5: Sling Adapters Console

Adobe CQ 5.5 has a new, long overdue feature in the Felix Console.  The Sling Adapters Console lists all of the available Sling Adapter Factories as well as their Adapter Classes, Adaptable Classes, condition information and Providing bundle.  This information can be invaluable for developers to determine what classes can be adapted and what they can be adapted into as well as checking the functioning of custom adapters.  Developers can access this information by logging...

New in CQ 5.5: Dependency Finder

Adobe just released CQ 5.5, the latest version of their flagship enterprise Web Experience Management product.  Along with a new UI, numerous speed and stability fixes and deeper integrations with Adobe's other products, CQ 5.5 comes with some new tools to make using and developing on CQ easier. One of the new tools is the Dependency Finder, which comes shipped in the Apache Felix console.  This tool can be very useful to developers to find...