项目割接遇到的问题

项目割接遇到的问题

乱码

环境变换后有些Jsp显示乱码

原来的weblogic.xml

<?xml version="1.0" encoding="UTF-8"?>

<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

    http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd

    http://xmlns.oracle.com/weblogic/weblogic-web-app

    http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">

    <wls:context-root>/</wls:context-root>

    <jsp-descriptor>

    <keepgenerated>true</keepgenerated>

    <encoding>GBK</encoding>

    </jsp-descriptor>

</wls:weblogic-web-app>

 

修改后的weblogic.xml

<?xml version="1.0" encoding="UTF-8"?>

<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

    http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd

    http://xmlns.oracle.com/weblogic/weblogic-web-app

    http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">

    <wls:context-root>/</wls:context-root>

    <jsp-descriptor>

    <keepgenerated>true</keepgenerated>

    <encoding>GBK</encoding>

    </jsp-descriptor>

    <wls:charset-params>

        <wls:input-charset>

            <wls:resource-path>/*</wls:resource-path>

            <wls:java-charset-name>GBK</wls:java-charset-name>

        </wls:input-charset>

</wls:charset-params>

</wls:weblogic-web-app>

 

变换环境后 socket发送数据,数据库中显示乱码,接口表的形式插入数据没有乱码

解决方法:修改启动脚本weblogic启动脚本

 

原来的脚本为'utf-8'编码

修改后的脚本

-server -XX:NewSize=512m -XX:MaxNewSize=512m -Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:MaxTenuringThreshold=31 -XX:SurvivorRatio=6 -Djava.awt.headless=true -Dfile.encoding=GB2312 -Djava.security.egd=file:/dev/zero -verbose:gc -Xverbosegclog:/weblogic/timerdomain/gclogs/9111.gclog

 

自己总结的另一种方法,将字节流转换为输出流,并没有验证的想法

DataOutputStream byteOut = null;

byte[] data = null; byte[] info = null;

try {

byteOut = new DataOutputStream(ubiSocket.getOutputStream());

xml = new String(xml.getBytes(), "gbk");

data = this.ubiInfo.createUbiInfo(1000, xml);

String data1 = data.toString();

data1 = new String(data1.getBytes(), "gbk");

info = this.ubiInfo.getUbiInfoData();

OutputStreamWriter outputStreamWriter = new OutputStreamWriter(byteOut, "gbk");

BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);

bufferedWriter.write(data1);

bufferedWriter.close();

outputStreamWriter.close();

byteOut.flush();

posted @ 2016-06-28 14:27  zhaozhenqiang  阅读(288)  评论(0编辑  收藏  举报