若是遇见了illegal to have multiple occurrences of contentType with different values的问题 html
不用想 确定是编码的问题gb2312或者utf-8或者ISO8859-1或者gbk什么什么 java
必定要注意编码 否则一个小问题都整半天 apache
————————————————————————————————————————————————— app
解决illegal to have multiple occurrences of contentType with different values错误 jsp
做者:吕海鹏 文章来源:itstudy原创 发表时间:2008-9-27 12:01:40org.apache.jasper.JasperException: /admin/adminUser/../incs/checkPurview.jsp(1,1) Page directive: illegal to have multiple occurrences of contentType with different values (old: text/html; charset=utf-8, new: text/html;charset=utf-8) org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:236) org.apache.jasper.compiler.Validator$DirectiveVisitor.visit(Validator.java:133) org.apache.jasper.compiler.Node$PageDirective.accept(Node.java:590) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2393) org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2399) org.apache.jasper.compiler.Node$Root.accept(Node.java:489) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2393) org.apache.jasper.compiler.Validator$DirectiveVisitor.visit(Validator.java:100) org.apache.jasper.compiler.Node$IncludeDirective.accept(Node.java:638) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2393) org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2399) org.apache.jasper.compiler.Node$Root.accept(Node.java:489) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343) org.apache.jasper.compiler.Validator.validate(Validator.java:1700) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:165) org.apache.jasper.compiler.Compiler.compile(Compiler.java:314) org.apache.jasper.compiler.Compiler.compile(Compiler.java:294) org.apache.jasper.compiler.Compiler.compile(Compiler.java:281) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
checkPurview.jsp 代码是没有错的,由于在其它页面调用没有出错过。那么是主文件出错了,看了一下刚写的页面全是静态内容,没什
么的?
仔细阅读错误信息:
Page directive: illegal to have multiple occurrences of contentType with different values (old: text/html; charset=utf-8,
new: text/html;charset=utf-8)
中文大体意思:多个不一样的ContentType值是非法的。
我英文很差,意思是理解了:包含页面与被包含页面的@page指令里面的contentType不一致,仔细检查两个文件第一行的 @page ,
包含页面的是: <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
被包含页面: <%@ page language="java" contentType="text/html;charset=utf-8" pageEncoding="utf-8"%>
果真contentType="text/html;和charset=utf-8"之间多了一个空格,删除空格,使得两个文件的@page内容一致,再执行程序,运行经过。
我曾经尝试着在一个里面加上一个空格再次出现了一样的错误。
总结:被包含页面和包含页面必须都加上@page 头内容这个asp正好相反的,并且值要一致。一个很小的错误,让我调了2分钟,网上信手搜索了一下竟然不少人也犯这样的错误,并且竟然无从下手,想来你们只要英文稍微好些就看懂错误提示了,看来仍是咱们的基本功不扎实了,不扎实--沙上盖楼,终不会高...... 编码