扩展页面指令不起作用

2024-06-23

您好,我正在检查页面指令,但扩展页面指令不起作用。
下面是我的jsp页面

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page extends="javapackage.TestClass" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>Hai
<% out.println(show()); %>
</body>
</html>

我的课是

package javapackage;

public class TestClass {
  public String show(){
      return "Welcome Prasad";
 }
}


它给了我 500 错误
例外

org.apache.jasper.JasperException: java.lang.ClassCastException: org.apache.jsp.first_jsp cannot be cast to javax.servlet.Servlet
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:177)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause 

  java.lang.ClassCastException: org.apache.jsp.first_jsp cannot be cast to javax.servlet.Servlet
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)


即使我尝试使用扩展 HttpServlet 的类,但没有用。所以请任何人帮助我。我正在使用 Tomcat 7
Thanks


您需要阅读 JSP 规范,特别是 JSP.11.2.4 部分,其中列出了与扩展一起使用的超类的许多要求,但您问题中的超类均不满足这些要求。

...提供的超类:

  • 如果协议是 HTTP,则实现 HttpJspPage,否则实现 JspPage。
  • Servlet 接口中的所有方法都被声明为final。

此外,JSP 页面作者有责任确保所提供的 超类满足:

  • servlet API 的 service 方法调用 _jspService 方法。
  • init(ServletConfig) 方法存储配置,使其可以通过 getServletConfig,然后调用 jspInit。
  • destroy 方法调用 jspDestroy。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

扩展页面指令不起作用 的相关文章

随机推荐

  • Android ListView 中的 JSONArray

    urlHi 我有这段代码 可以从 php 页面接收数据 我想将该数据放入列表视图中 我收到该数据 并且通过 system out println 看到了该数据 但列表视图中有白行 代码 public class Utenti extends
  • 设计路由错误

    设置设备时我似乎无法克服此错误 Routing Error wrong constant name Devise registrationsController or Routing Error wrong constant name De
  • 在 Python 中将一个 SFTP 文件夹中的所有文件归档到另一个文件夹

    我能够使用 Martin Prikryl 给出的以下语法成功地将文件从 S3 上传到 SFTP 位置使用 Boto 3 将文件从 AWS S3 传输到 SFTP https stackoverflow com questions 58719
  • 在jquery中用html内容创建一个变量

    您好 我正在尝试在 jquery 中创建一个变量 其中包含一个用于在网站的不同区域中输出的表 但这给了我一个错误 我不明白为什么 这是我的 JQUERY var copy table width 750 border 0 cellspaci
  • 如何使用 Gradle 交叉编译到 Scala.JS

    在 SBT 中添加 Scala JS 依赖项时 您可以使用 E g libraryDependencies be doeraene scalajs jquery 0 9 0 这是如何在 Gradle Scala 插件中完成的 scala 版
  • 在 postgres 上将表导出为 csv

    如何将表导出到 csv在 Postgres 中 当我不是超级用户并且无法使用copy命令 我仍然可以使用右键单击 导入 按钮将数据导入到 postgres 但没有导出选项 使用 psql 并将流重定向到文件 psql U
  • ASP.NET MVC (Razor) 与 Angular 5

    我们目前正在考虑从 ASP NET MVC 迁移到 Angular 5 主要是因为它看起来是最好 最新的框架 然而 我们似乎都无法找出为什么 Angular 比 MVC Razor 更好的硬道理 SPA 与 MPA 似乎是不同的方法 但实际
  • ES 无法在 Win x64 Java SE 8 u 171/2 上启动

    我有 Win 10 x64 我更新到 Java 8 Update 171 尝试使用此命令行运行 ES cd bin elasticsearch bat Ecluster name ABTest Cluster 00 Enode name A
  • Plotly:如何在我的桑基图列上写文本?

    我已经建立了一个使用plotly 绘制桑基图 https plotly com python sankey diagram 我想为每个列命名 并赋予每个列标题 如下面的红色文本 我该如何写这些栏目标题 您可以使用注释来添加文本 使用 x 值
  • myVector.erase(myPtr) 是否删除 myPtr 指向的对象?

    如果我有以下代码 Foo f new Foo vector
  • 如何实现本机 otp 检索器并为应用程序生成哈希密钥

    React Native 初学者 我正在尝试验证OTP自动使用react native sms retriever我在项目中实现了以下示例 实施示例 https www npmjs com package react native sms
  • 惰性 Highcharts 钻取

    这个 JSFiddle 演示 http jsfiddle net gh get jquery 1 7 2 highslide software highcharts com tree master samples highcharts dr
  • Android 模拟器无法启动

    经过两周多的尝试后 我正在努力让模拟器成功启动 我确实可以使用一些帮助来解决该问题或解决相同问题的技巧 我已经能够使用非常相似的配置在我的家用计算机上成功启动模拟器 当我从工作电脑连接时失败 我相信有一些配置可能会阻止此操作 但我不知道该配
  • 如何以马赛克风格对齐图像? html/css

    我想包含一组马赛克风格的图像 它们全部通过 HTML5 CSS 组合在一起 我还使用 Bootstrap 和各种行 列和 div 来构建和定位内容 但是我无法将图像分组在一起 我已经能够将它们对齐到一定程度 但它们仍然不匹配等 请参阅附图了
  • 在 Mathematica 中,ListPlot 使用什么插值函数?

    以下截图 我使用 ListPlot 通过一些数据点绘制一条平滑的线 但我希望能够处理绘图的一阶和二阶导数 所以我想我应该使用插值创建一个实际的 函数 但正如你在图片中看到的那样 它并不顺利 当我做 Plot Interpolation 时
  • 使用缓冲区从未知大小的文件中读取

    我正在尝试从文件中读取块 但遇到问题 char inputBuffer new char blockSize while inputFile read inputBuffer blockSize int i inputFile gcount
  • JavaScript 中局部变量的内存释放

    我有一个 JS 函数 每隔几秒就会在页面上调用一次 这是一个 AJAX 更新的事情 作为一个函数 我声明局部变量 由于各种原因 我不想使用闭包或全局变量 我从来没有考虑过这一点 但是我是否需要在函数末尾释放 清除变量来释放内存 还是 JS
  • qtcreator中C++14的编译

    我有一个 qt 项目 其中包含以下部分C 14 最近 我改变了我的 ubuntu 发行版 现在我有 16 04 LTS 并且安装了 Qt Creator 4 02 建于 6 月 13 日 为了启用C 14编译 我放入项目文件中 QMAKE
  • 使用 Boto3 获取特定 S3 文件夹中的对象计数

    尝试获取 S3 文件夹中的对象数量 当前代码 bucket some bucket File someLocation File objs boto3 client s3 list objects v2 Bucket bucket Pref
  • 扩展页面指令不起作用

    您好 我正在检查页面指令 但扩展页面指令不起作用 下面是我的jsp页面