I have a JSP file, member.jsp which is as follows :
<%@ page import="java.util.*" %>
<jsp:include page="/html_functions.jsp" />
<% String heading = "Header" %>
<%= formStart("a_form") %>
<%= printPageHeader(heading) %>
<%= startMyLi() %>
<%= endLi() %>
<%= formEnd() %>
and my html_functions.jsp is as follows :
<%!
public String formStart(String name) {
String structure = "<div id=\"content\"><form name=\"" + name + "\" method=\"post\"><ul>";
return structure;
}//formStart
public String printPageHeader(String name) {
String structure = "<li class=\"listLi\">\n<h3 class=\"formHeader\">" + name + ".</h3></li>";
return structure;
}//printPageHeader
public String startMyLi() {
String structure = "<li class=\"listLi\">";
return structure;
}//startMyLi
public String endLi() {
return ("</li>");
}//endMyLi
public String displayWithSpan(String str) {
String structure = "<span class=\"labelSpan\">" + str + "</span>";
return structure;
}//displayWithSpan
public String displayInputElement(String name) {
return("Hiiiii");
}//displayInputElement
%>
However, I get an exception while calling the member.jsp file. This is the exception I get :
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: xx in the jsp file: /member.jsp
The method formStart(String) is undefined for the type add_005fmember_jsp
Same is the case with all other methods. Where am I making the mistake ?
Thanks
Using
<%@ include file="/html_functions.jsp" %>
works fine instead of <jsp:include page="html_functions.jsp" />
There are two ways of including a file in to the JSP page of your application. These are as follows:
<%@include file="relativeURL" %>
<jsp:include page="relativeURL" />
first case includes the file or the text or the code of the file in the calling JSP file at compilation time and executes later.
and check html_functions.jsp is placed in correct path.