2017-08-12 19 views
1

私はGoogle App Engineを使用してデータベースからデータを取得しています。私がアラビア語のテキストを検索すると、それは "?§??¹????????"ここJava ServletのエンコーディングGoogle App Engine

はHttpServletを次のとおりです。

public class MyServlet extends HttpServlet { 
@Override 
public void doGet(HttpServletRequest request, HttpServletResponse response) 
     throws IOException { 
    PrintWriter writer = response.getWriter(); 

    final String contentType = "text/plain;charset=UTF-8"; 
    final String characterEncoding = "UTF-8"; 

    response.setContentType(contentType); 
    response.setCharacterEncoding(characterEncoding); 

    writer.println(response.getContentType()); 
    writer.println(response.getCharacterEncoding()); 
    writer.println("السلام عليكم:"); 
} 
} 

出力は次のとおりです。

text/plain; charset=iso-8859-1 
ISO-8859-1 
?§???³???§?? ?¹????????: 

のappengine-web.xmlの:

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

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0"> 

    <application>myApplicationID</application> 

    <use-google-connector-j>true</use-google-connector-j> 

    <version>1</version> 

    <threadsafe>true</threadsafe> 

    <system-properties> 

     <property name="java.util.logging.config.file" value="WEB-INF/logging.properties" /> 

     <property name="file.encoding" value="UTF-8" /> 

     <property name="appengine.file.encoding" value="UTF-8" /> 

     <property name="DEFAULT_ENCODING" value="UTF-8" /> 

    </system-properties> 

    <env-variables> 

     <env-var name="DEFAULT_ENCODING" value="UTF-8" /> 

    </env-variables> 
</appengine-web-app> 

私が使用している:Androidのメーカー - ランタイム:JAVAを7 - 環境:規格

これはMy Browser Chromeからのものです:Response and Request Headers

答えて

0

解決策が見つかりました。

public class MyServlet extends HttpServlet { 
    @Override 
    public void doGet(HttpServletRequest request, HttpServletResponse response) 
     throws IOException { 
     final String contentType = "text/plain;charset=UTF-8"; 
     final String characterEncoding = "UTF-8"; 

     response.setContentType(contentType); 
     response.setCharacterEncoding(characterEncoding); 

     PrintWriter writer = response.getWriter(); 

     writer.println(response.getContentType()); 
     writer.println(response.getCharacterEncoding()); 
     writer.println("السلام عليكم:"); 
    } 
} 

問題は、私はとてもコードがあるべきコンテンツタイプ

を設定する前にライターを取得するということです

関連する問題