Wednesday, 8 October 2014
Monday, 4 August 2014
Wednesday, 28 May 2014
Monday, 10 March 2014
Issues when using LESS CSS in Adobe CQ/AEM
When working with LESS CSS in adobe CQ, make a note point during your check in/packaging.
When you open a page, the .less files are converted to .css files as shown below:
etc/designs/myapp/
css/static.less
etc/designs/myapp/
css/generated/static.css
css/static.less
In this case, make sure you should not check in/package your generated folder and its sub folders/files. What you want to check in/package is just your .less files.
If you check in/package the generated folder, you may run in to issues when your less files are updated. This means, when a less file is updated, the generated css file may not update with the latest code all times.
When you open a page, the .less files are converted to .css files as shown below:
etc/designs/myapp/
css/static.less
etc/designs/myapp/
css/generated/static.css
css/static.less
In this case, make sure you should not check in/package your generated folder and its sub folders/files. What you want to check in/package is just your .less files.
If you check in/package the generated folder, you may run in to issues when your less files are updated. This means, when a less file is updated, the generated css file may not update with the latest code all times.
Monday, 3 February 2014
Monday, 20 January 2014
How to refresh a page when a component is modified
A change was made to a component by an author. The page need to be
refreshed in order to immediately reflect the change. Is there a way to
automate this such that the author does not need to refresh the page?
Resolution
The
The following properties are associated with cq:listeners node are:
So, if you want your text component to cause a page refresh after each edit, you would create the following structure:
Resolution
The
cq:listeners [cq:EditListenersConfig]
is used to refresh the HTML page after a certain action is performed on a component. The cq:listeners
node should be located as shown:
/component-name [cq:Component]
/cq:editConfig [cq:editConfig]
/cq:listeners [cq:EditListenersConfig]
NOTE: Text in the "[]
" is the nodetype. Text after "/
" is the node name -- should be extact name except for the "component-name".The following properties are associated with cq:listeners node are:
aftercreate
afterdelete
afteredit
afterinsert
aftermove
afterremove
There are three possible values that can be assigned to the properties above -- either "REFRESH_SELF
", "REFRESH_PARENT
", "REFRESH_PAGE
".So, if you want your text component to cause a page refresh after each edit, you would create the following structure:
...
/mytextcomponent [cq:Component]
/cq:editConfig [cq:editConfig]
/cq:listeners [cq:EditListenersConfig]
- afteredit {REFRESH_PAGE} <= property {value}
mytextcomponent.jsp <= code
Refer:
http://helpx.adobe.com/experience-manager/kb/RefreshPageWhenModifyDialog.html
Friday, 10 January 2014
what is the use of Activator.java in CQ ?
Symptoms
A change was made to
a component by an author. The page need to be refreshed in order to immediately
reflect the change. Is there a way to automate this such that the author does
not need to refresh the page?
Resolution
The cq:listeners
[cq:EditListenersConfig] is used to refresh the HTML page after
a certain action is performed on a component. The cq:listeners
node should be located as shown:
/component-name
[cq:Component]
/cq:editConfig [cq:editConfig]
/cq:listeners [cq:EditListenersConfig]
NOTE: Text in the
"[]" is the nodetype. Text after
"/" is the node name -- should be
extact name except for the "component-name".
The following
properties are associated with cq:listeners node are:
aftercreate
afterdelete
afteredit
afterinsert
aftermove
afterremove
There are three possible values that can be assigned to the properties above -- either "REFRESH_SELF", "REFRESH_PARENT", "REFRESH_PAGE".
So, if you want your
text component to cause a page refresh after each edit, you would create the
following structure:
...
/mytextcomponent
[cq:Component]
/cq:editConfig [cq:editConfig]
/cq:listeners [cq:EditListenersConfig]
- afteredit {REFRESH_PAGE} <= property {value}
mytextcomponent.jsp <= code
Refer:
Check Authentication in CQ
AuthCheckerServlet.java
import org.apache.felix.scr.annotations.sling.SlingServlet;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
@SlingServlet(paths = "/bin/permissioncheck/html", generateComponent = true, generateService = true)
public class AuthCheckerServlet extends SlingSafeMethodsServlet {
public void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) {
String uri = request.getParameter("uri");
Resource resource = request.getResourceResolver().resolve(uri);
if(ResourceUtil.isNonExistingResource(resource)) {
response.setStatus(SlingHttpServletResponse.SC_FORBIDDEN);
} else {
response.setStatus(SlingHttpServletResponse.SC_OK);
}
}
}
Subscribe to:
Posts (Atom)
Converting InputStream to String
private String convertToString(InputStream inputStreamObj) throws IOException { if (inputStreamObj != null) { ...
-
Paragraph System (parsys) The paragraph system (parsys) is a compound component that allows authors to add components of different ...
-
1) Using repository Note that not for all node versions are created. Node has to be of mixin type mix:versionable (no...
-
Ctrl-G - Go to path/Search Ctrl-Shift-R - Reload selected node Ctrl-O - Open selected file Ctrl-N - Create a node Ctrl-Alt-N - Create ...