พาเที่ยวพิพิธภัณฑ์พระบาทสมเด็จพระปกเกล้าเจ้าอยู่หัว

เดือนสิงหาที่ผ่านมาผมไปเดินเล่นแถวๆ ถนนราชดำเนินเพื่อที่จะไปนิทรรศน์รัตนโกสินทร์มาครับ พอจองรอบไปปุ๊บปรากฏว่าอีก 2 ชั่วโมงกว่าจะถึงรอบ เลยไปเดินเล่นแถวๆ นั้น พอเดินย้อนไปแถวๆ สะพานผ่านฟ้าก็ไปเจอเข้ากับพิพิธภัณฑ์พระบาทสมเด็จพระปกเกล้าเจ้าอยู่หัว ซึ่งไม่เคยรู้มาก่อนว่ามี แถมเข้าฟรีเสียด้วย (ยืนงงๆ อยู่ข้างหน้าแล้วยามเรียกให้เข้าไปดู) ก็เลยจัดไปซะ


เข้าฟรีจ้า

พิพิธภัณฑ์นี้จัดแสดงภาพถ่าย เอกสาร และพระราชประวัติส่วนพระองค์ของพระบาทสมเด็จพระปกเกล้าเจ้าอยู่หัวและสมเด็จพระนางเจ้ารำไพพรรณี พระบรมราชินีครับ พิพิธภัณฑ์มี 3 ชั้น แต่ละชั้นไม่ใหญ่อะไรนักแต่ก็จัดโอเคดี มีส่วนที่เป็นห้องฉายหนังที่จะวนฉายเป็นรอบๆ ด้วย ก่อนจะเข้าก็ต้องฝากของ locker ก่อนครับ (กุญแจฟรี) แต่เอากระเป๋าเล็กๆ และกล้องเข้าไปได้ ถ่ายรูปได้ทุกพื้นที่เลย ชอบๆ

ชั้นแรกจะเป็นส่วนพระราชประวัติของสมเด็จพระนางเจ้ารำไพพรรณีครับ ชั้น 2 และ 3 จะเป็นของรัชกาลที่ 7


วังไกลกังวลในยุคแรก


Playon HD กันเลยทีเดียว ….

ชั้น 2 จะเป็นทั้งเรื่องราวในยุคนั้น พระราชประวัติของรัชกาลที่ 7 ตั้งแต่ประสูติ, ขึ้นครองราชสมบัติ, เหตุการณ์ 2475, ชีวิตในต่างประเทศ และเรื่องราวหลังจากนั้น


Continue reading “พาเที่ยวพิพิธภัณฑ์พระบาทสมเด็จพระปกเกล้าเจ้าอยู่หัว”

Java encoding French Language

เดือนก่อน ลูกค้าเจ้านึงในฝรั่งเศสส่ง issue มาว่า Sever ผม encode ภาษาฝรั่งเศสผิด แปลงตัว é กลายเป็น é ทั้งหมดเลย

สิ่งแรกที่ผมทำคือลอง Google ดูเกี่ยวกับปัญหานี้ ส่วนใหญ่เขาก็จะบอกกันว่าเป็นที่ encoding กันหมด

สิ่งที่สองที่ผมทำคือลอง test กับ server ผมเองว่ามันทำผิดจริงรึเปล่า เท่าที่ลองรัน test page หรือเขียน JavaScript มาลองดูมันก็แสดงผลเป็น é ตรงนี่หว่า -*- ถาม Dev ๆ ก็บอกว่าก็ส่งเป็น UTF-8 นะ สุดท้ายก็เลยลองถามลูกค้าไปว่า “เขาดึงข้อมูลจาก server ผมยังไง” ลูกค้าก็ให้โค๊ดประมาณแนวๆ นี้มา

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        //Create JSON POST 
        JSONObject request_msg = new JSONObject();
        request_msg.put("closure", "JAVA_CLIENT"); 
        JSONArray requestArray = new JSONArray();
        requestArray.add("language=France");
        request_msg.put("request", requestArray);

        try {
            PrintStream outt = new PrintStream(System.out, true, "UTF-8");

            HttpURLConnection urlConn = null;
            URL url = new URL("http://server:80/getdata");
            urlConn = (HttpURLConnection) url.openConnection();
            urlConn.setRequestMethod("POST");
            urlConn.setAllowUserInteraction(false);
            urlConn.addRequestProperty("Accept", "application/json,text/javascript, */*; q=0.01");
            urlConn.addRequestProperty("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.3");
            urlConn.addRequestProperty("Accept-Encoding", "gzip,deflate,sdch");
            urlConn.addRequestProperty("Accept-Language", "fr-FR,fr;q=0.8,en-US;q=0.8,en;q=0.4");
            urlConn.addRequestProperty("Content-Type", "application/json");
            urlConn.addRequestProperty("Connection", "keep-alive");
            // envoyer des params
            urlConn.setDoOutput(true);

            // poster les params
            PrintWriter paramWriter = new PrintWriter(urlConn.getOutputStream());

            paramWriter.print(request_msg.toString());
            // fermer le post avant de lire le resultat ... logique
            paramWriter.flush();
            paramWriter.close();
                        
            // Lire la reponse
            InputStream resp = urlConn.getInputStream();
            BufferedReader bufReader = new BufferedReader(new InputStreamReader(resp));
            String sLine;
            StringBuilder sb = new StringBuilder();
            String lineSep = "###";


            while ((sLine = bufReader.readLine()) != null) {
                sb.append(sLine);
                sb.append(lineSep);
            }

            out.println(sb.toString());

            // deconnection
            urlConn.disconnect();
            bufReader.close();
            out.close();
        } catch (Exception e) {
            System.out.println("Error " + e.toString());
            e.printStackTrace();
        }
    }

Code ข้างบนนี่จริงๆ ลูกค้าให้มาแค่ส่วนตัว HTTP ส่วน Sevlet ทั้งหลายนี่ผมเขียนเพิ่มเองเพื่อ Test ส่วน Logic การใช้ HttpURLConnection, PrintWriter, Buffer ทั้งหลายนั่นเอา code เขามา ส่วนการส่ง JSON ผมเลือกใช้ simple – json เพราะตอนนั้นไม่รู้ว่า Java support JSON แบบ native แล้ว
Continue reading “Java encoding French Language”

สะพายกล้องเที่ยวสิกขิม #6: สวัสดี Namchi

หลังจากกลับมาจากไปเที่ยวNorth Sikkim เช้ามาเราก็ออกแต่เช้าไปที่ท่ารถเมือง Gangtok ท่าเดิม เพราะเรานัดรถที่จะไปเที่ยวทะเลสาปชางกู่ไว้ครับ


บรรยากาศเช้านี้สุดยอดมากกกกกกกกก


ทั้งเมืองหมอกลง ที่เห็นนั่นโรงหนังนะครับ

รอตั้งนานคนขับก็ไม่มาสักที สุดท้ายก็เลยกินข้าวร้านในท่ารถนั่นแหละ แล้วขอให้เจ้าของร้านช่วยโทรหาคนขับรถให้หน่อย


โมโม่ ของเดิม

สุดท้ายก็ได้ความว่า วันนี้ถนนไปทะเลสาปแม่งปิด Cancel … ไอ้สัด แล้วมึงไม่มาบอกกูที่โรงแรม ห่านรากกกกกกกกกกกก สุดท้ายทำอะไรไม่ได้ก็กลับโรงแรมเพื่อไปตั้งหลักกันก่อน (คนที่ร้านช่วยเรียก Taxi ให้ด้วย ^^)


ถนนเมือง Gantok ยามเช้า

ระหว่างผมนั่งเล่นที่โรงแรม เพื่อนก็ไปติดต่อ บ. ทัวร์ได้ครับ คราวนี้เราซื้อทริป 3 วัน 2 คืนไป นามชิ, เพลลิ่ง แล้วไปสิ้นสุดที่เมืองแห่งชาอย่างดาร์จีลิ่งแทนครับ ซึ่งก็ตรงกับความต้องการที่จะไปเที่ยวดาร์จีลิ่งอยู่แล้ว แถมได้เที่ยวเมืองเล็กๆ ที่คนไม่ค่อยเที่ยวอีกต่างหาก

ก่อนจะไปก็เก็บบรรยากาศเมือง Gangtok กันเป็นครั้งสุดท้ายก่อน


Continue reading “สะพายกล้องเที่ยวสิกขิม #6: สวัสดี Namchi”