Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8997721
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T23:55:39+00:00 2026-06-15T23:55:39+00:00

I am using my custom portlet in liferay. but somehow when i run my

  • 0

I am using my custom portlet in liferay.
but somehow when i run my portlet i m having following error in error console

Timestamp: 12/10/2012 12:33:19 PM
Error: ReferenceError: AUI is not defined
Source File: http://localhost:8080/eMenuAdvertise-portlet/js/jquery.min.js
Line: 4

Timestamp: 12/10/2012 12:34:21 PM
Error: ReferenceError: Liferay is not defined
Source File: http://localhost:8080/eMenuAdvertise-portlet/js/jquery.min.js
Line: 3

So why this error comes in my jsp page for some jquery?

<%@ page import="net.sf.jasperreports.engine.JRException"  %>
<%@ page import="net.sf.jasperreports.engine.JasperExportManager" %>
<%@ page import="net.sf.jasperreports.engine.JasperFillManager" %>
<%@ page import="net.sf.jasperreports.engine.JasperPrint" %>
<%@ page import="net.sf.jasperreports.engine.JasperPrintManager" %>

<%@page import="com.liferay.portal.model.Role"%>
<%@ include file="/init.jsp"%>
<%@page import="com.liferay.portal.model.Organization"%>
<%@page import="com.liferay.portal.util.PortalUtil"%>
<style>
.borderColor{border: 1px solid #C62626;}
</style>
<portlet:renderURL var="ajaxaddnewrestURL">
    <portlet:param name="jspPage" value="/jsps/ajaxnewrest.jsp" />
</portlet:renderURL>
<portlet:renderURL var="editrestURL">
    <portlet:param name="jspPage" value="/jsps/Ajax_editrest.jsp" />
</portlet:renderURL>
<portlet:renderURL var="restListURL">
    <portlet:param name="jspPage" value="/jsps/rest.jsp" />
</portlet:renderURL>
<portlet:renderURL var="reportURL">
    <portlet:param  name="jspPage" value="/htmlreport/report.html" />   
</portlet:renderURL>
<portlet:renderURL var="renderURL ">
    <portlet:param name="param-name" value="param-value" />

</portlet:renderURL>

<%-- <portlet:resourceURL var="ReportId" id="generate_report"></portlet:resourceURL> --%>
<portlet:resourceURL var="addToDo" id="generate_report"></portlet:resourceURL>  

<script type="text/javascript" src="<%=request.getContextPath()%>/lib/chosen/chosen.jquery.min.js"></script>

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.3/themes/south-street/ui.all.css" type="text/css"> 
<script src="<%=request.getContextPath()%>/js/datepickernew/jquery-1.8.3.js"></script>
<script src="<%=request.getContextPath()%>/js/datepickernew/jquery-ui.js"></script>

<script type="text/javascript" src="<%=request.getContextPath() %>/js/jquery.validate.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/lib/chosen/chosen.jquery.min.js"></script>
<%
System.setProperty("java.awt.headless", "true");
System.out.println(java.awt.GraphicsEnvironment.isHeadless());

String loading_img_path = request.getContextPath()+"/img/ajax_loader.gif";  
boolean isReseller=false; ///advertiser if flag is false else Reseller
List<Role> role_list_page=themeDisplay.getUser().getRoles();    
for(Role role_name:role_list_page){
    if(role_name.getName().equals("Reseller")){
        isReseller=true;
        break;                                  
    }
}%>         

<script>

</script>



<script>
    $(function() {


        $("#Start_validBeforeDatepicker").datepicker({
            numberOfMonths: 1,
            showButtonPanel: true,
            onClose: function( selectedDate ) {
                $( "#End_validAfterDatepicker" ).datepicker( "option", "minDate", selectedDate );
                }

        });
        $("#End_validAfterDatepicker").datepicker({
            numberOfMonths: 1,
            showButtonPanel: true,
            onClose: function( selectedDate ) {
                $( "#Start_validBeforeDatepicker" ).datepicker( "option", "maxDate", selectedDate );
                }
        });
       // $("#validBeforeDatepicker").datepicker({ minDate: 0 });
        $('#Start_validBeforeDatepicker,#End_validAfterDatepicker').datepicker();
    });
    </script>
<script type="text/javascript">  
$(".chzn-select").chosen();
$(".chzn-select-deselect").chosen({
    allow_single_deselect : true
});     
$(document).ready(function() {

    $(".ui-datepicker").css("display","none");


    });


    </script>

    <script type="text/javascript">
function update_rest(addToDo){
    var camp_ID =document.getElementById('camp_id').value;
    var f_start_date =document.getElementById('Start_validBeforeDatepicker').value;
    var f_end_date =document.getElementById('End_validAfterDatepicker').value;






   $.ajax({
        url :addToDo,            
          data: {"rest_name":camp_ID,
              "f_start_date":f_start_date,
              "f_end_date":f_end_date,
              "CMD":camp_ID},
          type: "GET",
          timeout: 20000,
          dataType: "text",
        success: function(data) {  
            alert("");
            alert ( " liferay url : "+ Liferay.PortletURL.createRenderURL());
            alert( "row1: " + createRowURL(1) );
            alert( "row2: " + createRowURL(2) );
             $("#mydiv").load("<%=renderURL.toString()%>");
             alert(data);
             }
    });
}



function createRowURL( row ) {
   var portletURL = new Liferay.PortletURL();
   portletURL.setParameter("rowNumber", row );

   return portletURL.toString();
}




function createRenderURL(str) {

        alert("");

        var renderURL = Liferay.PortletURL.createRenderURL();
        alert("hi");
        renderURL .setParameter("jspPage",str);
        renderURL .setPortletId("eMenuAdvertise_WAR_eMenuAdvertiseportlet");
        // i.e. your-unique-portlet-id can be like "helloworld_WAR_helloworldportlet"

}


 </script>



<nav>
    <div id="jCrumbs" class="breadCrumb module">
        <ul>
            <li><a href="#"><i class="icon-home"></i></a></li>
            <li><a href="#">Reseller</a></li>
            <li>Restaurants</li>
        </ul>
    </div>
</nav>
<div class="row-fluid">
    <div class="span12">
    <div id="successMsg" style='display:none;' class="alert alert-success"></div>
    <div id="errorMsg" style='display:none;' class="alert alert-error"></div>   
        <h3 class="heading">
            Statistics
        </h3>       
        <%String restId = request.getParameter("hide1");%>  
        <portlet:actionURL name="generateReport" var="reportURL"></portlet:actionURL>



    </div>
    <div class="">

        <div class="">
            <div class="">

                <div style="float: right">


                    <p>
                        <label style="width: 100px"><b>Campaign</b></label>
                    </p>
                    <select id="camp_id" name="camp_id"
                        data-placeholder="- Select Restaurants -" class="chzn-select"
                        multiple><%
                        String status = null;                                   
                List<campaign> camp_listObj;
                if(isReseller)
                {                                       
                    camp_listObj= campaignLocalServiceUtil.getAllCampaignByOrganizations(themeDisplay); 
                }
                else
                {
                    camp_listObj = campaignLocalServiceUtil.getAllCampaignByOrganizationId(themeDisplay);
                }
                            for (int i = 0; i < camp_listObj.size(); i++) {
                        %>
                        <option value=<%=camp_listObj.get(i).getPrimaryKey()%>><%=camp_listObj.get(i).getName().toString()%></option>
                        <%
                            }
                        %>
                    </select>
                </div>



                <div style="float: left;">
                    <p>
                        <button onclick="update_rest('<%=addToDo%>');" class="btn btn-success">GenerateReports</button>
                    </p>

                    <b>Start Date</b> <input type="text" style="width: 100px"
                        id="Start_validBeforeDatepicker" name="validTodayDatepicker"
                        readonly="true"> <b>End Date</b> <input type="text"
                        readonly="true" style="width: 100px" id="End_validAfterDatepicker"
                        name="validAfterDatePicker">

                </div>

            </div>
        </div>
        <div style="visibility: hidden;">
                                <input type="hidden" name="report_path" id="report_path" value="">
                            </div>


<%
System.setProperty("java.awt.headless", "true");
System.out.println(java.awt.GraphicsEnvironment.isHeadless());

%>


    </div>
</div>
<div class="bordercolor" id="mydiv">

</div>

<script type="text/javascript">

function editrestaurant(id){

    $(".span12").html("<img class='ajax-loader' src='<%=loading_img_path%>'/>");
    $.ajax({
        type:'post',
        url:'<%=editrestURL.toString()%>',
        data:{restId:id},
        success:function(data){
            $(".main_content").html(data);                      

        }
    });
}

function newrestaurant(){   
    $(".span12").html("<img class='ajax-loader' src='<%=loading_img_path%>'/>");
    $.ajax({
        type:'post',
        url:'<%=ajaxaddnewrestURL.toString() %>',
        data:{},
        success:function(data){
            $(".main_content").html(data);                      

        }
    });
}


</script>

portlet.vm

#set ($portlet_display = $portletDisplay)

#set ($portlet_id = $htmlUtil.escapeAttribute($portlet_display.getId()))
#set ($portlet_title = $portlet_display.getTitle())
#set ($portlet_back_url = $htmlUtil.escapeAttribute($portlet_display.getURLBack()))

<section id="portlet_$portlet_id">
        $portlet_display.writeContent($writer)
</section>

portal_normal.vm

#parse ($init)

<html class="#language("lang.dir")" dir="#language("lang.dir")" lang="$w3c_language_id">

<head>
</head>

<body class="$css_class">

<div id="wrapper">

    <div id="content">
        $theme.wrapPortlet("portlet.vm", $content_include)
    </div>

</div>


</body>

$theme.include($bottom_include)

</html>

portal_popup.vm

<!DOCTYPE html>

#parse ($init)

<html dir="#language ("lang.dir")" lang="$w3c_language_id">

<head>
    <title>$the_title</title>

    $theme.include($top_head_include)
</head>

<body class="portal-popup $css_class">

$theme.include($content_include)

$theme.include($bottom_ext_include)

</body>

</html>

navigation.vm

<nav class="$nav_css_class" id="navigation">
    <h1>
        <span>#language("navigation")</span>
    </h1>

    <ul>
        #foreach ($nav_item in $nav_items)
            #if ($nav_item.isSelected())
                <li class="selected">
            #else
                <li>
            #end
                <a href="$nav_item.getURL()" $nav_item.getTarget()><span>$nav_item.icon() $nav_item.getName()</span></a>

                #if ($nav_item.hasChildren())
                    <ul class="child-menu">
                        #foreach ($nav_child in $nav_item.getChildren())
                            #if ($nav_child.isSelected())
                                <li class="selected">
                            #else
                                <li>
                            #end
                                <a href="$nav_child.getURL()" $nav_child.getTarget()>$nav_child.getName()</a>
                            </li>
                        #end
                    </ul>
                #end
            </li>
        #end
    </ul>
</nav>
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T23:55:39+00:00Added an answer on June 15, 2026 at 11:55 pm

    In the <script> you have two javascript functions – createRowURL and createRenderURL which make use of the Alloy UI scripts as follows:

    function createRowURL( row ) {
       var portletURL = new Liferay.PortletURL(); // this is the line using AUI
       portletURL.setParameter("rowNumber", row );
    
       return portletURL.toString();
    }
    
    function createRenderURL(str) {
    
        alert("");
    
        var renderURL = Liferay.PortletURL.createRenderURL(); // this is the line using AUI
        alert("hi");
        renderURL .setParameter("jspPage",str);
        renderURL .setPortletId("eMenuAdvertise_WAR_eMenuAdvertiseportlet");
        // i.e. your-unique-portlet-id can be like "helloworld_WAR_helloworldportlet"
    }
    

    So I would suggest instead of using the <script> ... </script> tag use <aui:script> ... </aui:script> tags (this loads all the AUI and Liferay modules), for using this tag you would need to define the taglib in your jsp like:

    <%@ taglib uri="http://alloy.liferay.com/tld/aui" prefix="aui" %>`
    

    Edit (after seeing the theme templates):

    I can see that in your portal_normal.vm you have removed the following lines from <head> and <body> tags respectively:

    $theme.include($top_head_include) <!-- this statement is removed from <head> -->
    $theme.include($body_top_include) <!-- this statement is removed from <body> -->
    

    Please include these statements back in the theme templates and your scripts would work. The statement $theme.include($top_head_include) this is responsible to include all the AUI related stuff (javascripts, functions etc) and also some variables in the request attribute.

    Note: Please always be careful while removing anything from themes and hooks. You should always know what is the purpose of the statements you are removing or modifying.

    Hope this helps.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm aware of using custom configuration values for my custom services, but what if
I'm using custom renderer on JList, but none of components rendered are accessible. list.setCellRenderer(new
I am using custom row view in ListView widget. I am having getView method
I'm using custom fonts on my webpage using the following code: @font-face { font-family:
I have checked on Using custom services or liferay services in liferay themes (velocity
I am using custom InfoPath task form in my project. All works fine, but
I'm having a problem using custom components at runtime. I have this custom FlowLayoutPanel
I'm using jsp of out-of-box portlet like feed.jspf in Liferay 6: String articleId =null;
I am using custom sound in uilocalnotification in ios. but its not play. file
I'm using custom images for UINavigationBars and UIToolbars. The problem i'm having is on

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.