我在一段代码中找到了一个找不到异常的方法,这里简化了。
public class myOverriddenPortlet {
//usual doView, etc.
protected void myPrintMethod (
javax.portlet.PortletRequest req,
javax.portlet.PortletResponse res,
javax.servlet.jsp.JspWriter out
) {
//dostuff
}
}
public class myPortlet extends myOverriddenPortlet {
//usual portlet stuff
}
在jsp中
<%myPrintMethod(request, response, out); %>
答案 0 :(得分:1)
受保护的方法只能在类,同一个包中的类或子类中调用。您编译的JSP不是这些。
请参阅http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
答案 1 :(得分:1)
JSP不能访问继承的方法吗?
如果您正在讨论其他类中的JSP inherting,那么JSP不能继承其他类。您的 JSP 将被编译为 Servlet ,而后者将扩展某些JspBase
的实现类,因此无法扩展其他类。
答案 2 :(得分:0)
您的方法需要:
protected void myPrintMethod (
javax.portlet.PortletRequest req,
javax.portlet.PortletResponse res,
javax.servlet.jsp.JspWriter out
)
但是你提供
request - I guess its an object of HttpRequest
response- I guess its an object of HttpResponse
因此,请尝试让您的方法接受这些类型或泛型类型