zoukankan      html  css  js  c++  java
  • Page directive must not have multiple occurrences of pageencoding

    转自:http://bbs.csdn.net/topics/210058964

    旁白

    今天将html代码改为jsp文件时,遇到报错,错误很低级,但是很深刻,特此将从csdn中查到的解决方案共享出来。

    正题

    在myeclipse中编写代码如下:
    q1.html:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>q1.html</title>
    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="this is my page">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        
        <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
    
      </head>
      
      <body>
      <FORM METHOD=POST ACTION="q2.jsp">
      请输入您的姓名:
      <INPUT TYPE=TEXT NAME="thename">
      <INPUT TYPE=SUBMIT VALUE="SUBMIT">
      </FORM>
      </body>
    </html>

    q2.jsp:

    <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1" pageEncoding="GBK"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'q2.jsp' starting page</title>
        
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">    
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
    
      </head>
      
      <body>&nbsp; 
    
      <% String name=""; %>
      <%
      name=request.getParameter("thename");
      session.putValue("thename",name); 
      %>
      Your name : <%= name %>
      <p>
      <FORM METHOD=POST ACTION="q3.jsp">
      The food you like :
      <INPUT TYPE=TEXT NAME="food">
      <P>
      <INPUT TYPE=SUBMIT VALUE="SUBMIT">
      </P>
      </FORM>
      </body>
    </html>

    但在浏览器浏览浏览q2.jsp时却出现如下错误:

    HTTP Status 500 - 
    
    --------------------------------------------------------------------------------
    
    type Exception report
    
    message 
    
    description The server encountered an internal error () that prevented it from fulfilling this request.
    
    exception 
    
    org.apache.jasper.JasperException: /q2.jsp(1,1) Page directive must not have multiple occurrences of pageencoding
    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:102)
    org.apache.jasper.compiler.Validator$DirectiveVisitor.visit(Validator.java:194)
    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.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)
    
    
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
    
    
    --------------------------------------------------------------------------------
    
    Apache Tomcat/6.0.16

    解决方案:

    pageEncoding="ISO-8859-1" pageEncoding="GBK"%
    不能指定多个pageEncoding

    (/q2.jsp(1,1) Page directive must not have multiple occurrences of pageencoding)

  • 相关阅读:
    经典SQL问题: 行转列,列转行
    RocketMQ之三:RocketMQ集群环境搭建
    mysql函数之五:group_concat mysql 把结果集中的一列数据用指定分隔符转换成一行
    并发编程之五--ThreadLocal
    RocketMQ之三:nameserver源码解析
    Spring之3:BeanFactory、ApplicationContext、ApplicationContextAware区别
    spring中InitializingBean接口使用理解
    ES之四:Elasticsearch Mapping类型映射概述与元字段类型
    spring容器启动的三种方式
    java的reflection和introspector
  • 原文地址:https://www.cnblogs.com/tv151579/p/3544397.html
Copyright © 2011-2022 走看看