Exception: Cannot get DefaultSlingScript while dragging component in Editable Templates

Avatar

Avatar

sunitac70336244

Avatar

sunitac70336244

sunitac70336244

30-10-2019

Dear All,

In my current project , we are converting static templates to editable templates in AEM 6.5 SP1 by using modernization_tools

Before converting we are creating editable templates. So I have created editable template and created the policy. Now I want to use the existing component Top Navigation.

While I am using the existing component in my editable template then I am getting below error.

1849009_pastedImage_2.png 

*ERROR* [0:0:0:0:0:0:0:1 [1572429882269] GET /conf/sunita/settings/wcm/templates/thank-you/structure/jcr:content/root/topnav1.html HTTP/1.1] com.day.cq.wcm.core.impl.WCMDebugFilter Exception: Cannot get DefaultSlingScript: Identifier com.sunita.global.core.models.SiteUrlsModel cannot be correctly instantiated by the Use API

org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: Identifier com.sunita.global.core.models.SiteUrlsModel cannot be correctly instantiated by the Use API

Can anybody please help me on this?

Thanks in advance

View Entire Topic

Avatar

Avatar

sunitac70336244

Avatar

sunitac70336244

sunitac70336244

06-11-2019

Dear All and Ka,

By going through some of the AEM forum posts above issue fixed after I changed from @Model(adaptables = SlingHttpServletRequest.class) to @Model(adaptables = Resource.class) .

But now I am getting the below error.

*ERROR* [0:0:0:0:0:0:0:1 [1573028316905] GET /conf/sunita/settings/wcm/templates/thankyou3/structure/jcr:content/root/topnav.html HTTP/1.1] com.day.cq.wcm.core.impl.WCMDebugFilter Error during include of SlingRequestPathInfo: path='/conf/sunita/settings/wcm/templates/thankyou3/structure/jcr:content/root/topnav', selectorString='null', extension='html', suffix='null'

org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: Compilation errors in org/apache/sling/scripting/sightly/apps/sunita/components/content/topNav/topNav_html.java:

Line 144, column 9577 : com.sunita.global.core.models.utils.NestedMultifieldHelper cannot be resolved to a type

Line 293, column 21059 : com.sunita.global.core.models.utils.NestedMultifieldHelper cannot be resolved to a type

Line 304, column 22009 : com.sunita.global.core.models.utils.NestedMultifieldHelper cannot be resolved to a type

Line 371, column 26781 : com.sunita.global.core.models.utils.NestedMultifieldHelper cannot be resolved to a type

My topnav.html is as below.

1851173_pastedImage_1.png

topNav.html is below

<div id="header-menu">

<div data-sly-use.site="com.sunita.global.core.models.SiteUrlsModel" data-sly-use.topNavModel="com.sunita.global.core.models.TopNavModel">

    <nav class="navMenu navbar brandLogoBackground slideNav clearfix" id="slide-nav">

    <div class="maxContainer">

<div class="navbar-header pull-left">

<div class="navbarToggleContainer">

        <a class="navbar-toggle">

      <span class="sr-only">Toggle navigation</span>

      <span class="icon-bar"></span>

      <span class="icon-bar"></span>

      <span class="icon-bar"></span>

        </a>

        </div><!-- navbarToggleContainer -->

             <a class="navbar-brand" href="${inheritedPageProperties['logoPath'] || site.homePageUrl @ extension = 'html'}">

               <img id="img-nav-logo" src="${inheritedPageProperties['logoImage'] || '/apps/sunita/clientlibs/clientlib-site/resources/logo-header.png'}" alt="${inheritedPageProperties['logoAltText'] || 'Best Western' @ i18n}" style="background-color:${inheritedPageProperties['logoBgcolor'] @ context='styleString' || 'none'}">

            </a>

           </div><!-- navbar-header -->

<!-- Login Component Start -->

        <div class="navbar-header pull-right navbarLoginContainer">

        <div class="navbarLogin" id="bw-login-button">

         <!-- Display for non-logged in users -->

         <a href="#" class="loginLink" role="button" data-toggle="modal" data-target="#login-modal">${properties.loginLinkLabel || 'Login' @ i18n}</a>

         <!-- Display for logged in users-->

         <a href="#" class="dropdown-toggle accountNavLink" role="button" data-toggle="collapse" data-target="">

            <div class="loginUserIcon"></div>

            <div class="loginCollapsedArrow"></div>

            <div class="loggedInBtnTextContainer">

                <div id="logged-in-user-name" class="loggedInUserName"></div>

                <div class="">${'My Account' @ i18n}<span class="arrow"></span></div>

            </div>

         </a>

        </div>

             <sly data-sly-include="accountNavigation.html"></sly>

        </div>

        <!--  Login Component End -->

        <!-- /.navbar-header -->

<div class="slideMenu" id="slide-menu">

<ul class="nav navbar-nav list-unstyled navStatic" id="menu-header">

<li id="menu-header-text">${'Menu'  @ i18n}</li>

<li class="menuHeaderDivider"></li>

</ul>

<ul class="nav navbar-nav list-unstyled navStatic" id="menu-options">

            <div data-sly-unwrap data-sly-use.multiPropertyHelper="${'com.sunita.global.core.models.utils.NestedMultifieldHelper' @ multifieldNodeName='links', inheritProperty=true}">

                <span data-sly-unwrap data-sly-list.item="${multiPropertyHelper.itemsList}">

                    <li>

                        <a href="${item.link @ extension='html'}">${item.title @ i18n}</a>

                    </li>

                </span>

                    <sly data-sly-test="${inheritedPageProperties['worldsCheck'] != 'true'}">

                        <sly data-sly-resource="${'checkReservations' @ resourceType='sunita/components/content/checkReservations'}"></sly>

                    </sly>

            </div>

            </ul>

            <ul class="nav navbar-nav navLanguage list-unstyled list-unstyled" id="nav-language">

<li class="navLanguageDropdown navStatic slideDropdownContainer">

                        <a href="#" id="language-mover" class="dropdown-toggle slideMover" data-toggle="dropdown" aria-haspopup="true"

                            aria-expanded="false">

                    ${site.languageDisplay @ i18n}<span class="arrow"></span>

    </a>

                        <div class="languageFormContainer slideContainer dropdown-menu pull-right" id="language-form-container" role="menu">

                           <div id="language-menu-return" class="slideReturn" tabindex="0">

                               <span id="language-menu-return-arrow" class="slideReturnArrow"></span>

                               <span id="language-menu-return-text" class="slideReturnText">${'Menu'  @ i18n}</span>

                           </div>

                           <form class="form slideContent bwForm" id="language-form">

                               <fieldset class="form-group">

                                   <div id="language-container">

                                       <label class="control-label" for="language-dropdown">${properties.languageLabel || 'Language' @ i18n}</label>

                                       <select class="form-control" id="language-dropdown">

                                           <sly data-sly-list.langBean="${topNavModel.availableLanguages}">

                                                <option value="${langBean.localeString}">${langBean.displayLabel ||  langBean.localeDisplayLanguage @ i18n}</option>

                                           </sly>

                                           <sly data-sly-use.multiPropertyHelper="${'com.sunita.global.core.models.utils.NestedMultifieldHelper' @ multifieldNodeName ='languages', inheritProperty=true, componentNodeName='topNav'}">

                                                <sly data-sly-test="${multiPropertyHelper.itemsList}"><option disabled>──────────</option></sly>

                                           </sly>

                                          

                                           <sly data-sly-test.sorted ="${properties.sortLanguagesFlag}" data-sly-use.multiPropertyHelper="${'com.sunita.global.core.models.utils.NestedMultifieldHelper' @ multifieldNodeName ='languages', inheritProperty=true, componentNodeName='topNav', sortByKey = 'title'}">

                                                <sly data-sly-list.item="${multiPropertyHelper.itemsList}">

                                                    <option value="${item.link}">${item.title @ i18n}</option>

                                                </sly>

                                           </sly>

                                           <sly data-sly-test = "${!sorted}" data-sly-use.multiPropertyHelper="${'com.sunita.global.core.models.utils.NestedMultifieldHelper' @ multifieldNodeName ='languages', inheritProperty=true, componentNodeName='topNav'}">

                                                <sly data-sly-list.item="${multiPropertyHelper.itemsList}">

                                                    <option value="${item.link}">${item.title @ i18n}</option>

                                                </sly>

                                           </sly>

                                       </select>

                                   </div>

                                   <div class="languageFormButtonContainer slideButtonContainer" id="language-form-button">

                                       <button type="button" id="btn-language-submit" class="btn ${inheritedPageProperties.worldsCheck == 'true' ? 'cmBtn cmBtnPrimary' : 'btn-primary' @ context='attribute'}" onclick="sunita.LanguageDropdown.switchLanguage()">${properties.switchBtnLabel || 'Switch' @ i18n}</button>

                                   </div>

                               </fieldset>

                           </form>

                        </div>

</li>

</ul>

        <div class="clearfix"></div>

</div><!-- /.slideMenu -->

    </div><!-- /.container -->

</nav><!-- /.navMenu -->

<sly data-sly-include = "loginModal.html"></sly>

</div>

<!--/.topnav-->

</div>

I am trying from last 1 day and not able to figure out. Please help me on this.