Java แก้ปัญหาของ Byte 2 Invalidity ของลำดับ UTF-8 ของข้อยกเว้น 2 ไบต์
เมื่อเร็ว ๆ นี้ฉันพบปัญหาของลำดับ UTF-8 ที่ไม่ถูกต้องของ BYTE 2 ด้วยข้อยกเว้น 2 ไบต์ ฉันค้นหาข้อมูลออนไลน์ นี่คือบันทึกของการแก้ปัญหา หากคุณพบปัญหาเดียวกันคุณสามารถตรวจสอบได้
ข้อยกเว้นโดยละเอียด:
08 ธันวาคม 2015 7:16:55 PM org.apache.catalina.core.standardwrappervalve เรียก: servlet.service () สำหรับ servlet [jsp] ในบริบทที่มีเส้นทาง [/ทดสอบ] causecom.sun.org.apache.xerces.internal.impl.io.malformedbytesequenceexception: 2 ไบต์ UTF-8 ไบต์ 2 ของลำดับไม่ถูกต้อง ที่ com.sun.org.apache.xerces.internal.impl.io.utf8reader.invalidbyte (utf8reader.java:687) ที่ com.sun.org.apache.xerces.internal.impl.io.Io.Itf8reader.read com.sun.org.apache.xerces.internal.impl.xmlentityscanner.load (xmlentityscanner.java:1753) ที่ com.sun.org.apache.xerces.internal.impl.xmlentityscanner.peekchar ( com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl $ fragmentcontentdriver.next (xmldocumentfragmentscannerimpl.java:2710) ที่ com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl.next (xmldocumentscannerimpl.java:606) ที่ com.sun.org.apache.xerces.internal.inmpl.xmlnsdocumentsCannerInnerInnerImpl.next. com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl.scandocument (xmldocumentfragmentscannerimpl.java:510) ที่ com.sun.org.apache.xerces.internal.parsers.xml11 com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse (xml11configuration.java:777) ที่ com.sun.org.apache.xerces.internal.parsers.xmlparser.parse com.sun.org.apache.xerces.internal.parsers.domparser.parse (domparser.java:243) ที่ com.sun.org.apache.xerces.internal.jaxp.documentbuilderimpl.parse org.apache.jasper.xmlparser.parserutils.parsexmldocument (parserutils.java:96) ที่ org.apache.jasper.compiler.jspconfig.processwebdotxml (jspconfig.java:83) org.apache.jasper.compiler.jspconfig.init (jspconfig.java:231) ที่ org.apache.jasper.compiler.jspconfig.findjspproperty (jspconfig.java:290) ที่ org.apache.jasper.compiler.compiler.generateJava (Compiler.java:113) ที่ org.apache.jasper.compiler.compiler.compiler.compiler (Compiler.java:365) ที่ org.apache. ที่ org.apache.jasper.compiler.compiler.compiler (Compiler.java:332) ที่ org.apache.jasper.jspCompiveContext.compile org.apache.jasper.servlet.jspservletwrapper.service (jspservletwrapper.java:342) ที่ org.apache.jasper.servlet.jspservlet.servicejspfile (jspservlet.java:391) ที่ org.apache.jasper.servlet.jspservlet.service (jspservlet.java:334) ที่ javax.servlet.http.httpservlet.service (httpservlet.java:722) ที่ org.apache.catalina.core.applicationfilterchain.internaldofilter (applicationfilterchain.java:306) ที่ org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ com.alibaba.druid.support.http.webstatfilter.dofilter (webstatfilter.java:123) ที่ org.apache.catalina.core.applicationfilterchain.internaldofilter org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ org.apache.struts2.dispatcher.ng.filter.strutsexecutefilter.dofilter org.apache.catalina.core.applicationfilterchain.internaldofilter (applicationfilterchain.java:244) ที่ org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ org.apache.struts2.dispatcher.ng.filter.strutspreparefilter.dofilter (strutspreparefilter.java:91) ที่ org.apache.catalina.core.applicationfilterchain.internaldofilter org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ com.huaqin.dmt.filter.acl.dofilter (acl.java:251) ที่ org.springframework.web.filter.delegatingfilterproxy.invokedelegate (มอบหมายงาน Filterproxy.java:346) ที่ org.springframework.web.filter.delegatingFilterproxy.dofilter org.apache.catalina.core.applicationfilterchain.internaldofilter (applicationfilterchain.java:244) ที่ org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ com.huaqin.dmt.filter.characterencodingfilter.dofilter (cattereencodingfilter.java:38) ที่ org.apache.catalina.core.applicationfilterchain.internaldofilter (applicationfilterchain.java:244 org.apache.catalina.core.applicationfilterchain.dofilter (applicationfilterchain.java:210) ที่ org.apache.catalina.core.standardwrappervalve.invoke (StandardWrappervalve.java:240) ที่ org.apache.catalina.core.standardcontextvalve.invoke (StandardContextValve.java:161) ที่ org.apache.catalina.core.standardhostvalve.invoke (StandardhostValve.java:164) ที่ org.apache.catalina.valves.errorreportvalve.invoke (errorreportvalve.java:100) ที่ org.apache.catalina.valves.accesslogvalve.invoke (accesslogvalve.java:550) ที่ org.apache.catalina.core.standardenginevalve.invoke (Standardenginevalve.java:118) ที่ org.apache.catalina.connector.coyoteadapter.service (Coyoteadapter.java:380) ที่ org.apache.coyote.http11.http11processor.process (http11processor.java:243) ที่ org.apache.coyote.http11.http11protocol $ http11 org.apache.coyote.http11.http11protocol $ http11connectionhandler.process (http11protocol.java:166) ที่ org.apache.tomcat.util.net.jioendpoint java.util.concurrent.threadpoolexecutor.runworker (Threadpoolexecutor.java:1145) ที่ java.util.concurrent.threadpoolexecutor $ worker.run (threadpoolexecutor.java:615)
สารละลาย:
มีไฟล์ catalina.bat ในไดเรกทอรี bin ของ Tomcat
ค้นหาบรรทัดนี้: ตั้งค่า java_opts =%java_opts%%logging_config%
เพิ่มบนบรรทัดบน: ตั้ง java_opts = -server -dfile.encoding = utf-8
ขอบคุณสำหรับการอ่านฉันหวังว่ามันจะช่วยคุณได้ ขอบคุณสำหรับการสนับสนุนเว็บไซต์นี้!