Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

Invoke WCMUse Class from Servlet

Avatar

Level 8

Is it possible to use a class which extends WCMUse from inside of a servlet?  If so, are there any examples available?

1 Accepted Solution

Avatar

Correct answer by
Employee

No..., at least this is not the intended way of using WCMUse...

View solution in original post

4 Replies

Avatar

Correct answer by
Employee

No..., at least this is not the intended way of using WCMUse...

Avatar

Employee

What is the use-case you have in mind?

Avatar

Level 8

Feike Visser wrote...

What is the use-case you have in mind?

 

I have a class that utilizes WCMUse and builds out a list of news articles using Sightly.  I would also like to be able to utilize the same code in my servlet to avoid duplicate code (I have a requirement where one area needs AJAX to display data and the other does not).  I think I can achieve what I need to do pretty easily without invoking the WCMUse class and just separating out the logic into a different package/class within my OSGI bundle - I was just curious if this functionality existed.

Avatar

Employee

I would look towards Sling Models in that case. http://sling.apache.org/documentation/bundles/models.html

This can be used from Sightly as well as Java-code. From Sightly it must be adaptable from Request or Resource.

 

Something like this..., 

@Model(adaptables = SlingHttpServletRequest.class)

public class HeaderComponent {

    private SlingHttpServletRequest request;

public HeaderComponent(SlingHttpServletRequest request) {

this.request = request;

}

@PostConstruct

protected void init(){

// do your stuff...

}

}