Expand my Community achievements bar.

SOLVED

WCMUsePojo in AEM6.3 not working

Avatar

Employee

Hi,

I have started developing on AEM 6.3 but there are some dependency issues. The package com.adobe.cq.sightly is not resolved in aem 6.3 felix console. It gives error like this

com.adobe.cq.sightly com.adobe.cq.sightly,version=[3.1,4) -- Cannot be resolved

I am using a class which extends WCMUsePojo. I have also included uber.jar in the pom.

Can you point me to if there is some change here in 6.3 for this. Is it that it now allows only sling models to use ?

Regards,

1 Accepted Solution

Avatar

Correct answer by
Level 10

Just tested this - only difference from this artilce

Adobe Experience Manager Help | Creating an Adobe Experience Manager HTML Template Language componen...

is use this:

dependency>

               <groupId>com.adobe.aem</groupId>

               <artifactId>uber-jar</artifactId>

               <version>6.3.0</version>

               <!-- for AEM6.1 use this version     : <version>6.1.0</version> -->

               <!-- for AEM6.1 SP1 use this version : <version>6.1.0-SP1-B0001</version> -->

               <!-- for AEM6.1 SP2 use this version : <version>6.1.0-SP2</version> -->

               <!-- for AEM6.2 use this version     : <version>6.2.0</version> -->

               <classifier>obfuscated-apis</classifier>

               <scope>provided</scope>

           </dependency>

          

           <dependency>

               <groupId>org.apache.geronimo.specs</groupId>

               <artifactId>geronimo-atinject_1.0_spec</artifactId>

               <version>1.0</version>

               <scope>provided</scope>

           </dependency>

New article here: https://helpx.adobe.com/experience-manager/using/aem63_htl.html

View solution in original post

13 Replies

Avatar

Employee

WCMUsePojo works on 6.3

Can you test the package here on 6.3? And then maybe compare the diffs?

GitHub - heervisscher/htl-examples: AEM HTL examples

Avatar

Level 10

We need a community article on this. This is on our ToDo list.

Avatar

Correct answer by
Level 10

Just tested this - only difference from this artilce

Adobe Experience Manager Help | Creating an Adobe Experience Manager HTML Template Language componen...

is use this:

dependency>

               <groupId>com.adobe.aem</groupId>

               <artifactId>uber-jar</artifactId>

               <version>6.3.0</version>

               <!-- for AEM6.1 use this version     : <version>6.1.0</version> -->

               <!-- for AEM6.1 SP1 use this version : <version>6.1.0-SP1-B0001</version> -->

               <!-- for AEM6.1 SP2 use this version : <version>6.1.0-SP2</version> -->

               <!-- for AEM6.2 use this version     : <version>6.2.0</version> -->

               <classifier>obfuscated-apis</classifier>

               <scope>provided</scope>

           </dependency>

          

           <dependency>

               <groupId>org.apache.geronimo.specs</groupId>

               <artifactId>geronimo-atinject_1.0_spec</artifactId>

               <version>1.0</version>

               <scope>provided</scope>

           </dependency>

New article here: https://helpx.adobe.com/experience-manager/using/aem63_htl.html

Avatar

Level 10

Hi,

Yes, I too tested with the below dependency used.

Use this dependency under Parent POM file.

<dependency>

               <groupId>com.adobe.aem</groupId>

               <artifactId>uber-jar</artifactId>

               <version>6.3.0</version>

               <!-- for AEM6.1 use this version     : <version>6.1.0</version> -->

               <!-- for AEM6.1 SP1 use this version : <version>6.1.0-SP1-B0001</version> -->

               <!-- for AEM6.1 SP2 use this version : <version>6.1.0-SP2</version> -->

               <!-- for AEM6.2 use this version     : <version>6.2.0</version> -->

               <classifier>obfuscated-apis</classifier>

               <scope>provided</scope>

           </dependency>

           

           <dependency>

               <groupId>org.apache.geronimo.specs</groupId>

               <artifactId>geronimo-atinject_1.0_spec</artifactId>

               <version>1.0</version>

               <scope>provided</scope>

           </dependency>

Also, make sure you add this dependency in POM file under core:

       <dependency>

            <groupId>com.adobe.aem</groupId>

            <artifactId>uber-jar</artifactId>

            <classifier>obfuscated-apis</classifier>

        </dependency>

        <dependency>

            <groupId>org.apache.geronimo.specs</groupId>

            <artifactId>geronimo-atinject_1.0_spec</artifactId>

        </dependency>

Please find the attached screenshots.

AEM6.3WCMUsePojo.PNG

We will release the new article on AEM 6.3 which uses WCMUsePojo Shortly!!

Thanks,

Ratna Kumar,

Avatar

Employee

Since 6.2 there is no need anymore for obfuscated-apis, just use apis

Avatar

Level 2

Hi,

We are in the process of migrating from 5.6.1 to 6.3 I am seeing similar issue with the AEM 6.3. I am getting error -

com.day.cq.mailer,version=[5.6,6) -- Cannot be resolved

com.day.jcr.vault.util,version=[2.4,3) -- Cannot be resolved

Can you please help on with dependency I need to add for it ? Also, can I use JDK1.7 to compile backend bundles ? We are maintaining both the version currently until we fully migrate. So, just wanted to check if I can still use JDK1.7 to compile the code from jenkins build to deploy to 6.3.

Thanks,

Snehal

Avatar

Employee

Are using the uberjar?

Here are the tech-requirements: Technical Requirements . 1.7 is not supported

Avatar

Level 2

Thanks. No , I haven't added  uber dependency in POM. Do I need to add below dependency and remove the deprecated one?

<groupId>com.adobe.aem</groupId>

               <artifactId>uber-jar</artifactId>

               <version>6.3.0</version>

               <!-- for AEM6.1 use this version     : <version>6.1.0</version> -->

               <!-- for AEM6.1 SP1 use this version : <version>6.1.0-SP1-B0001</version> -->

               <!-- for AEM6.1 SP2 use this version : <version>6.1.0-SP2</version> -->

               <!-- for AEM6.2 use this version     : <version>6.2.0</version> -->

               <classifier>obfuscated-apis</classifier>

               <scope>provided</scope>

           </dependency>

Avatar

Employee

Yes, also use

  <classifier>apis</classifier>

Avatar

Level 2

Thanks for your reply. One more question - we just did jcr to OAK migration and moved all 5.6 version sites to 6.3. When I open the pages that were working in 5.6 in 6.3 it shows just blank page. Is it because my bundles are not resolving ? Is this expected behavior when we migrate until we make code compatible to 6.3 ?

Avatar

Employee

Hard to say without details, I would always first check the logfile (error.log)

Avatar

Level 2

I included uber jar dependency and still see the same error. Any other solution I can try ?

com.day.cq.mailer,version=[5.6,6) -- Cannot be resolved

com.day.jcr.vault.util,version=[2.4,3) -- Cannot be resolved

Avatar

Level 10

Did you follow the article I posted exactly as is. It works!