关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法

编者在测试Scriplet(代码段)的用法的时候写了下面这一段代码

<%@ page contentType="text/html";charset=UTF-8" %>
 
 
Scriplet 应用
 


<%!
public static final String MSG = "Hello World !";
%>
<%
int num = 0 ;        //局部变量
for (int i = 0 ; i < 10 ;i ++) 
{
num = num + i ; 

%> 

<%=MSG%>

 

0+1+2+3+...+9的和为:<% = num % >

 
 

如果运行正常应该会输出以下结果:

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第1张图片

但是运行的结果却是这样的:

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第2张图片

 

 

系统提示HTTP Status 500 – Internal Server Error的错误,错误的具体信息是1.jsp (line: [1], column: [2]) Unterminated [<%@ page] tag 意思是第一行第二列的标签未闭合,于是根据错误提示我检查了自己的代码发现了如下错误:

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第3张图片

问题就出在这里的contentType="text/html "; charset=UTF-8"   上,这里的contentType 后面的应该是个完整的句子,正确的写法应该是contentType="text/html ; charset=UTF-8" ,即把中间的双引号去掉就好了。

在浏览器中运行一下,发现竟然是不行。。。不过这次是另一个错误,是第19行的标签未闭合(所以在运行代码前要检查好还有没有其他的错误。。。)

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第4张图片

 

查看第19行的代码(这里建议用Notepad编写jsp代码,因为很直观的可以看到类似与标签未闭合的错误)找到了错误所在

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第5张图片

右边的  "%>" 没标黄说明没有成对,仔细看了一下,发现多了个空格在 "%"  和  " > "  之间,把空格删掉。检查下代码,貌似没问题了。。。

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第6张图片

然鹅运行之后。。。WTM竟然还有问题

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第7张图片

 

额,,,尴尬,编程小白总是容易踩到各种坑,按照上面的提示,还是第19行,这次,而是出在那个等号上,查看了一些资料,发现scriplet中有三种常用的Scriplet标记,<% %>  、<%= %>  、<%! %> ,通常用<%...%>区域定义局部变量、编写逻辑代码。在"<%!...%>"区域定义全局变量。通常使用"<%=...%>"替代out.println()语句输出返回值。这里主要是想提醒各位,"<%" 、"<%=" 、"<%!" 可以看作是一个完整的符号,它们之间不能有空格,否则会导致上面提到的类似的错误。把下面箭头处的空格去掉

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第8张图片

变成这样

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第9张图片

运行一下,成功输出。

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第10张图片

 

 

 

PS:有的浏览器可能输出的是下面的结果,这是因为浏览器的默认编码格式不一样,本例中用的是UTF-8编码,但是很多浏览器的默认编码格式为gbk,这时候只要修改一下编码格式为gbk就能正确输出了。

关于JSP文件运行时出现HTTP Status 500 – Internal Server Error的解决办法_第11张图片

本人是菜鸟,才疏学浅,以上有什么不对的地方还请各位大佬批评指正。

 

你可能感兴趣的:(Java)