How to declare sightly java classes globally and include/use their references in all html files? | Community
Skip to main content
mohanr80993572
New Participant
October 10, 2016
Solved

How to declare sightly java classes globally and include/use their references in all html files?

  • October 10, 2016
  • 3 replies
  • 1639 views

When we declare/instantiate a java class in htl/sightly in a html (similar to global.jsp) file and include it in another html, we are not able to access the reference of java class created in the included file.
For Ex:
Create a java class that extends WCMUse with some getters.

com.company.sightly.components.WcmUseSample.java

public Map<String,String> getMyHashMap() {
return myHashMap;
}

Declare/instantiate the java class in htl in a html file (similar to global.jsp)
i18n-template.html
<div data-sly-use.myClass="com.company.sightly.components.WcmUseSample" data-sly-unwrap></div>

Include it in another html and try to access the reference of java class in this html.
content.html
<div data-sly-include="i18n-template.html" data-sly-unwrap></div>
${myClass.getMyHashMap['lastpage']}

We tried many options but didn't work. Few of them are:
<div data-sly-include="i18n-template.html" data-sly-unwrap></div>

<sly data-sly-include="i18n-template.html" data-sly-unwrap></sly>

<div w3-include-html="i18n-template.html"></div>

<section data-sly-include="i18n-template.html"></section>

<section data-sly-include="${ @ path='i18n-template.html'}"></section>

<section data-sly-include="${'i18n-template.html' @ prependPath=''}"></section>

<section data-sly-include="${'' @ appendPath='i18n-template.html'}"></section>
...

Please let us know how we can achieve this. Any help would be greatly appreciated.

Thanks,

Mohan

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

3 replies

mohanr80993572
New Participant
October 12, 2016

Thanks Feike, it worked. It is very helpful.

Feike_Visser1
Feike_Visser1Accepted solution
Employee
October 11, 2016