본문 바로가기

전체 글

(122)
ORACLE에서 한글을 지원하는 캐릭터셋 KO16KSC5601 KS 표준 완성형 코드 : KSC5601-1987 이름에서 알 수 있는 바와 같이 이 캐릭터셋은 표준 한글 완성형 코드와 일치한다. 완성형은 일반적으로 많이 사용되는 2350자의 한글을 25*94 매트릭스에 배열한 문자셋이며, 4888자의 한자와 히라카나, 카타카나, 그리고 영문 및 각종 기호들을 포함하고 있다. HTML : JSP : KO16MSWIN949 MS-Windows 확장 완성형 한글 : MS949 Windows-949 캐릭터셋은 마이크로소프트사의 Windows Codepage 949번, 즉 한글 코드 페이지를 따른 코드셋이다. 이는 완성형(KO16KSC5601)을 그대로 포함하고 있으며, 추가로 현대 한글 조합으로 표현할 수 있는 모든 가짓수에 해당하는 8822자의 한글..
Tomcat과 JEUS에서의 EL Tomcat 6.0에서는 잘 돌아가는 jsp파일이 jeus 5.0으로 옮겼더니 아래 문장 때문에 selected 다음과 같은 에러가 발생했습니다. java.lang.NumberFormatException: For input string: "B01" 그래서 jsp가 컴파일된 java파일의 위치를 찾아가 보니, _jspx_th_c_if_4.setTest(((java.lang.Boolean)jeus.servlet.jsp.el.JeusExpressionEvaluator.evaluate("${param.organization2 == 0}", java.lang.Boolean.class , pageContext.getVariableResolver(), null)).booleanValue()); 구문이 실행되고 있었습..
Log4j의 additivity 옵션 logger는 기본적으로 정의한 패키지의 조상으로부터 모든 appender을 상속받습니다. 만약 다음과 같이 root와 org.springframework 두개의 logger가 같은 appender를 사용한다면 같은 메시지가 두번 찍히는 것을 확인할 수 있습니다. 결과 2008. 1. 7. 오후 6:58:41 org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:250) INFO : FrameworkServlet 'spring': initialization completed in 484 ms 2008. 1. 7. 오후 6:58:41 org.springframework.web.servlet.Framewor..
Jakarta String Tag Library Spring의 exceptionResolver 이용해서 예외처리를 하였다. 그럼 resolver에 의해 지정된 jsp가 호출되는데 그 jsp안에서 ${exceptionMessage.message} 이렇게 에러 정보를 표시할 수가 있다. 근데 문자값에 있는 캐리지리턴 \r, 라인피드 \n값을 태크로 표현할려고 하니 잘 안되었다. 인터넷 검색을 해본결과 JSTL function을 이용하면 된다는 것을 알수 있었다. Function의 간단한 설명은 http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JSTL8.html#wp84687를 참조하면 된다. 다음은 중요한 부분의 소스들이다. pageContext.setAttribute("crlf", "\r\n"); pageContext..
ORACLE dictionary (user_updatable_columns) View에 대해 select를 제외한 dml문장이 적용될수 있는지를 볼수 있는 oracle dictionary가 있습니다. PORTAL이라는 오라클 계정이 있고.. 그 계정에 다음과 같이 뷰를 생성할 수 있는 시스템 권한과, EMP, USER_INFO 테이블에 대한 오브젝트 권한을 줍니다. -- System Privileges for PORTAL GRANT CREATE VIEW TO PORTAL; -- Object Privileges for PORTAL GRANT SELECT, UPDATE ON SCOTT.EMP TO PORTAL; GRANT SELECT, UPDATE ON SCOTT.USER_INFO TO PORTAL; PORTAL계정으로 다음과 같이 view를 생성하면 CREATE OR REPLACE..
ORACLE dictionary (all_tab_cols) CREATE OR REPLACE PROCEDURE sp_search_all_column (v_owner IN VARCHAR, v_search IN VARCHAR, v_type IN VARCHAR) IS v_sql LONG; v_search_count NUMBER := 0; CURSOR v_cursor_info IS SELECT table_name, column_name, data_type FROM all_tab_cols WHERE owner = v_owner; /****************************************************************************** NAME: sp_search_all_column PURPOSE: 오라클 딕셔네리로 부터 해당되는 값이 존..
서블릿 보안 3 Realm을 database로 설정해보겠습니다. 서블릿 보안관련 두번째 포스팅의 예제를 그대로 활용하겠습니다. 사용할 table을 다음과 같이 생성합니다. CREATE TABLE users ( user_name VARCHAR(15) NOT NULL PRIMARY KEY, user_pass VARCHAR(15) NOT NULL ); CREATE TABLE user_roles ( user_name VARCHAR(15) NOT NULL, role_name VARCHAR(15) NOT NULL, PRIMARY KEY (user_name, role_name) ); 생성된 table에 data를 입력합니다. INSERT INTO users (user_name, user_pass) VALUES ('aircook', ..
서블릿 보안 2 Tomcat 6.0으로 폼기반 인증방식을 적용해보겠습니다. Web.xml(DD)에 다음과 같이 항목을 추가하였습니다. 서블릿 보안 첫번째 포스팅에서 적용한 DD파일에서 추가된 부분은 회색으로 색칠되어 있습니다. tester FORM /loginPage.jsp /loginError.jsp test web resource /* GET POST tester NONE 이제 테스트용으로 사용할 test1.jsp를 다음과 같이 작성합니다. DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> test1.jsp test1.jsp login이 성공하면 아래 값이 보임.. request.getRemoteUser() : request.isUserInRole("tes..