since ‎10-12-2012
‎10-12-2019
Giancarlo__Sapi
Level 3
Re: configuring RTE plugin for content fragment editor
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
The richt-text editor of the AEM Content Fragment tool is very limited. What a lot of us are looking for, is how to add standard plugins, like e.g. "link", "image", "source" (to add e.g. SPAN) tag.Reading other posts, it seems we need to write JavaScript plugins for each feature ("links", "image", "source").Can anyone please share how to add the "links", "image" and "source" buttons? Is it configurable like when we use the RTE widget in a dialog? Or do we have to write a JS plugin for each of th...

Views

2.2K

Like

1

Replies

0
Re: Display AEM Content Fragment in a Workflow Step
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Thanks, arunp99088702​. Yes, correct. The challenge however is the link provided in the workflow step (payload). If you work on an AEM Content Fragment and want to review the content fragment via workflow, then the payload link does not show the content fragment. It actually does nothing...I could of course add a "sling:resourceType" pointing to some GET.jsp to read the content fragment and display it, but that is quite cumbersome for an author creating content fragments with the AEM tool.I coul...

Views

2.9K

Like

1

Replies

1
Re: Display AEM Content Fragment in a Workflow Step
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Yes, the link shows how to create an AEM Content Fragment. However, how do you review the content fragment in a workflow step? The payload has the link to the content fragment and will never have a link to another page containing the fragment.It's similar to an asset in the workflow step: clicking on the payload link will display the asset.If you look at the screenshot, you see that the payload link is not resolved propertly.

Views

2.9K

Like

1

Replies

3
Display AEM Content Fragment in a Workflow Step
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
In AEM 6.2 I created a simple workflow model with only participation steps. This is for reviewing/approving/publishing AEM Content Fragments.I tried two options, but one doesn't work and the other seems to have an error...I created a workflow launcher that listens to the AEM Content Fragment section in /content/dam. When a change is made, the workflow gets triggered correctly. In the Inbox is also the link to the content fragment. When clicking the link, a download box appears that will download...

Views

3.5K

Likes

0

Replies

5
Re: AEM 6.2 Replication of AEM Content Fragment fails
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Another observation:If the folder exists in Assets, replication of that folder does nothingIf the folder is new and has not been replicated yet, the replication process only replicates the folder, not it's content.This is an indication that the "Publish" feature within the context menu of a folder in Assets has a bug, since the replication of a new folder actually works.

Views

1.0K

Likes

0

Replies

0
AEM 6.2 Replication of AEM Content Fragment fails
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
I am noticing an interesting issue and am not sure if it's a bug or some configuration is missing. When selecting a folder in Assets and then select "Publish" from the context menu, no replication happens:Use the AEM Content Fragment tool to create a new folder (it's in the DAM) and a new content fragment.Mouse of the folder and select "Publish" from the ... context menu.The message says "Selected item(s) queued up for activation."However, the content fragment never gets published!Replication ag...

Views

1.2K

Likes

0

Replies

1
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
To summarize:Don't get confused with the deprecation of the Apache Sling JSON implementation. This was due to licensing issues.The org.json library is used in the CSRF servlet, and (not sure though) seems to not be wrapped.You can test if you have an org.json library overload issue with http://localhost:4502/libs/granite/csrf/token.json. If you get an error message, you must be loading an incompatible org.json library. In my case this happened by using org.json dependency.Best is to remove all o...

Views

1.8K

Like

1

Replies

1
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Thanks, Scott and once I have their answer, we can either recommend not to use org.json or do a write-up how to use org.json properly.

Views

1.8K

Likes

0

Replies

3
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Yes, Apache encountered licensing issues with the standard org.json libraries and deprecated their "light JSON" implementation org.apache.commons.json. However, in this case the issue is that (according to the error message) the CSRF servlet seems to use the standard org.json libraries and if we use the same libraries, but a different version, we run into a conflict that has a huge impact on the behavior of AEM 6.2 and AEM 6.3In my case the solution was to replace all org.json libraries with an ...

Views

3.6K

Likes

0

Replies

0
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Yes, but at the moment it seems more like defining a workaround for a major issue. Perhaps there is something I am missing like e.g. a statement somewhere saying I should not use org.json or so.The weird thing is that removing the dependency on org.json fixed the problem. But it also fixed other Touch UI problems like components not showing in the component list or drop-downs not opening. Maybe Adobe can take a look and share if it is indeed a bug or if there is something I am missing.

Views

3.6K

Likes

0

Replies

0
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
And once again I am answering my own question...Let me summarize:If you add a dependency for org.json, similar to this: org.json json 20170516You will trigger the error 02.12.2017 10:32:37.131 *ERROR* [0:0:0:0:0:0:0:1 [1512239557128] GET /libs/granite/csrf/token.json HTTP/1.1] org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught Throwablejava.lang.NoSuchMethodError: org.json.JSONWriter.(Ljava/io/Writer;)VThe consequence of this error is that a lot of features in AEM will not ...

Views

3.6K

Likes

0

Replies

4
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
In the OSGi bundle I replaced org.json with GSON. After removing JSON and replacing it by GSON, and then restarting AEM 6.3, the error did not appear anymore!In the POM I removed this dependency: org.json json 20170516What surprises me is that a JSON dependency can break the issuing of authentication tokens and with that the behavior of AEM. If I put the dependency back, http://localhost:4502/libs/granite/csrf/token.json will throw an error, which is appearing also when loading /system/console. ...

Views

3.6K

Likes

0

Replies

5
Re: Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
I tested with another simple task, an OSGi bundle. I can upload the bundle plus a content and a dam-content package. All is fine. Then I stop AEM and restart. Now I get the same error. What's interesting: I just uploaded an OSGi bundle. It was not used, except for the activate part. But after restarting AEM the token.json error is back

Views

3.6K

Likes

0

Replies

6
Weird CSFR Error on /libs/granite/csrf/token.json
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
I have the following scenario (Author Instance😞Install a clean AEM 6.2 or 6.3 instance (error happens on both versions)Upload/install a custom (and simple) ui.app packageAll works fine, no errors, I can create/delete pages and also access /system/console/bundlesStop AEM, then restart AEMNow I constantly get the error (can't create/delete pages, can't access /system/console/bundles):02.12.2017 10:32:37.131 *ERROR* [0:0:0:0:0:0:0:1 [1512239557128] GET /libs/granite/csrf/token.json HTTP/1.1] org.a...

Views

5.3K

Like

1

Replies

13
Re: AEM 6.2 - Touch UI 'pathbrowser' predicate is being ignored
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
It's always embarrassing when you not only answer your own question, but have to admit you missed something. I would love to blame this on coffee or beer, but hey, it's pure sloppiness...The solution is that in the class signature you need to implement the Predicate interface:public class TestThePredicate extends AbstractNodePredicate implements Predicate {After adding the missing part, the predicate works!

Views

942

Like

1

Replies

0
AEM 6.2 - Touch UI 'pathbrowser' predicate is being ignored
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
I am noticing that the predicate defined in the Touch UI dialog in the pathbrowser widget is not picking up the predicate.In the core project I have the predicate class (just showing the relevant code):import com.day.cq.commons.predicate.AbstractNodePredicate;import org.apache.commons.collections.Predicate;.....@Service(value = Predicate.class)@Component(metatype = false)@Properties({ @Property(label = "Predicate Name", name = "predicate.name", value = "testpredicate", propertyPrivate = true) })...

Views

2.2K

Likes

0

Replies

3
Re: Custom path browser predicate using AbstractResourcePredicate
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Just a small hint that the http://techqa.info link is not working

Views

1.4K

Likes

0

Replies

0
Re: Building a website in AEM when the content is going to be authored in some other CMS?
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Let me clarify as a more "neutral" person:1) Don't go there! If you don't have AEM, don't acquire just to do some presentation layer stuff. If you have AEM, do a migration from the other CMS to AEM. The reason is more about the content authors. AEM is "content centric" meaning that authors deal only with the browser to manage content. No database, no integration, no micro-servces, etc.2) Note that CRX is a content API. This has tons of advantages. Authors can add content directly on a Web page a...

Views

782

Likes

5

Replies

0
Re: Building a website in AEM when the content is going to be authored in some other CMS?
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Hi NandhiniAs Veena mentioned, building the site in AEM and authoring content in another CMS makes your life very difficult. In fact, since AEM is managing content itself via page creation and populating content, I would even go so far to say it's an "unfortunate approach".Your question implies you might be thinking of more like "consuming" content created with another CMS? If this is the case, then yes, it's possible. However, you may want to consider that using AEM just for the presentation la...

Views

708

Likes

2

Replies

0
Re: [New] Welcome to AEM Community! Please Introduce Yourself
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Hi folks!I am Giancarlo and a longtime CQ/AEM architect and platform engineer. 17 years ago I made my first experience with CQ as a Day Software Engineer. Today I still lead large scale projects as architect and strategist.I just launched JECIS, a full-fledged E-Commerce framework based on the JCR content repository. JECIS is content-centric and extends the JCR content repository. It's finally reality that you can use AEM to build native, commerce-driven experiences without requiring any integra...

Views

6.7K

Likes

2

Replies

1
Re: Using bootstrap.css prevents touch ui dialog from opening (AEM 6.2)
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
Thanks a lot, will check the article. I actually stumbled into the issue when I did a simple test. I have a static html page with a simple form to enter values and a submit that calls a servlet to store them. It's based on bootstrap and I wanted to test the POST servlet.I created a simple template and for simplicity purposes used customheaderlibs.html to load the CSS and JS files. This lineis causing the problem. All other link tags are fine and I can open the touch-ui dialog. If I remove the bo...

Views

731

Likes

0

Replies

0
Re: Using bootstrap.css prevents touch ui dialog from opening (AEM 6.2)
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
No, there is no error reported in the log files. In a "normal" case you mouse over the component and see the blue box around the component. You click the box and you get the tool icon to open the dialog. When you use "bootstrap.css" (either clientlibs or loading directly with tag), the blue box does not appear and hence you can't click to open the dialog.Maybe this is a known issue. It exists in the Classic UI as well, but I can override it with a CSS fix.In the meantime I will see if I can cre...

Views

736

Likes

0

Replies

0
Using bootstrap.css prevents touch ui dialog from opening (AEM 6.2)
Avatar

Giancarlo__Sapi

Giancarlo__Sapi
- Adobe Experience Manager
I am using Bootstrap for a responsive grid. However, when loading the boostrap.css file, the tough ui dialogs don't open anymore.If I remove that specific bootstrap.css file, the dialog box is visible and the touch ui dialog opens again.Has anyone noticed this behavior? If yes, is there a fix for that? This is for AEM 6.2.BTW: The classic ui works.

Views

1.5K

Likes

0

Replies

5