레이블이 servlet인 게시물을 표시합니다. 모든 게시물 표시
레이블이 servlet인 게시물을 표시합니다. 모든 게시물 표시

2011년 12월 29일 목요일

RTC plain Java Client Lib를 이용한 서블릿 WAS7 배포시 유의점


1) 웹프로젝트 외에 EAR 프로젝트를 만듭니다.

2) 웹프로젝트에 톰캣라이브러리 빼고 WAS라이브러리를 추가합니다.

3) 웹프로젝트 WEB-INF/lib에서 RTC plain lib 중 두개 javax.*.jar는 제외 (WAS라이브러리로 대체됨)

4) EAR를 export하여 만들고 WAS에 deploy

5) WAS에서 EAR를 실행하기전 클래스로더를 설정



6) EAR를 실행


2011년 12월 18일 일요일

JSON 송신 서블릿 샘플 코드

1. JSON 코드를 servlet 프로젝트에 추가해 줍니다 : http://www.json.org/java/json.zip






2. JSON 문자열 형식으로 데이타를 요청자에게 보내는 간단한 샘플 코드입니다.


public class GuServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    static {
        try {
            Class.forName("com.ibm.db2.jcc.DB2Driver");
        } catch ( Exception e) {
            e.printStackTrace();
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        try {
            doGuJSON(request, response);
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        try {
            doGuJSON(request, response);
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }


    protected void doGuJSON (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, JSONException {

        String url = "jdbc:db2://localhost:50000/META";
        String user_id="db2admin";
        String password = "rational";

        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
       
        PrintWriter out = null;

        try {
            conn = DriverManager.getConnection(url,user_id,password);
            stmt  = conn.createStatement();
            rs = stmt.executeQuery("select id,name from gu");

            JSONArray listObj = new JSONArray();
            int i=0;
            while(rs.next()) {

                int id = rs.getInt(1);
                String name = rs.getString(2);

                JSONObject itemObj = new JSONObject();
                itemObj.put("name", name.trim()); //trim trailing white spaces (fixed length string)
                itemObj.put("id", id);

                listObj.put(i, itemObj);
                i++;
            }

            try {
                response.setCharacterEncoding("UTF-8");
                out = response.getWriter();
                out.println(listObj);
            } catch ( Exception e) {
                e.printStackTrace();
            } finally {
                try { if (out!=null) out.close(); } catch (Exception e) {}
            }

        } catch ( SQLException se) {
            se.printStackTrace();
        } finally {
            try { if ( rs!=null ) rs.close(); } catch ( Exception e) {}
            try { if ( stmt!=null ) stmt.close(); } catch ( Exception e) {}
            try { if ( conn!=null ) conn.close(); } catch ( Exception e) {}
        }
    }
}





3. cURL을 이용한 헤더와 바디 정보


$ curl -v localhost:8080/MetaServlet/Gu

* About to connect() to localhost port 8080 (#0)
* Trying 127.0.0.1... connected
* Connected to localhost (127.0.0.1) port 8080 (#0)

> GET /MetaServlet/Gu HTTP/1.1
> User-Agent: curl/7.19.6 (i686-pc-cygwin) libcurl/7.19.6 OpenSSL/0.9.8n zlib/1.2.3 libidn/1.16 libssh2/1.2
> Host: localhost:8080
> Accept: */*
>

< HTTP/1.1 200 OK
< Server: Apache-Coyote/1.1
< Transfer-Encoding: chunked
< Date: Sat, 11 Dec 2010 04:54:10 GMT
<
[{"name":"강남구","id":1},{"name":"서초구","id":2}]

* Connection #0 to host localhost left intact
* Closing connection #0

RTC plain Java Client LIb의 서블릿에 설정

1. 서블릿의 WEB-INF/lib에 plainJavaLib들을 추가합니다.
2. 다음은 TeamPlatform을 통해서 ...



2011년 11월 29일 화요일

RTC Eclipse에 Web 개발도구 설치



1. 먼저 Preferences->install/update->available update sites에
http://download.eclipse.org/releases/galileo 를 추가합니다.

2. 다음 Help->install new software..를 누르고 위에서 추가한 사이트를 선택합니다.

3. Web 개발 도구를 선택하여 설치합니다.