ORA-01861: literal does not match format string


로컬 PC에서는 잘 돌아가는게 실서버에 배포하면 위와 같은 에러가 발생한다. 


오라클 TO_DATE 함수 부분에서 발생하는 에러로 추측된다.


이와 같은 경우 대부분 최신의 jdbc 드라이버로 교체해주면 해결되지만, 드라이버 교체로도 해결이 안될 경우에는 OS 환경변수의 언어셋 설정값을 확인해 보고 아래와 같이 변경해준다.


export LANG=ko_kr.UTF-8


또는


export NLS_LANG=KOREAN_KOREA.UTF-8


LANG 설정값을 변경해주면 WAS만 재기동 하면 되지만 NLS_LANG 값을 변경해주면 오라클을 재기동해야 할 수도 있어서 전자를 추천한다.


언어셋 설정값에 따라 오라클이 내부적으로 날짜변환을 판단하는 것으로 보여지는데 왜 굳이 이렇게 했는지는 만든 사람만이 알겠지.


이번에도 역시 구글신이 아니었다면 원인 찾느라 고생 좀 했을 것 같다.



Exception Handling in Spring MVC


http://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc


시간날때 적용 해봐야겠다.

SELECT  REGEXP_REPLACE(REGEXP_REPLACE(TRIM(LOWER(TARGET_COLUMN)),'[^A-Z,A-Z,0-9,ㄱ-ㅎ,가-힐]',''),'[[:SPACE:]]{1,}',' ') CONVERT_STR       

   FROM TARGET_TABLE


사용자 이벤트가 발생할 때마다 특정 테이블의 ROW를 show, hide 해줘야 할 경우가 있다.


$("input[name=autoType]").click(function() {

            if ( $(this).val() == 1 ) {

                $("#autoType_2, #autoType_3, #autoType_sub").hide();

            }

            else if ( $(this).val() == 2 ) {

                $("#autoType_2, #autoType_sub").show(); $("#autoType_3").hide();

            }

            else {

            $("#autoType_3, #autoType_sub").show(); $("#autoType_2").hide();

            }

        });


....

<table>    

    <colgroup>

        <col width="120" />

        <col />

    </colgroup>

    <tr id="authType_2"> .... </tr>


    <tr id="authType_3"> .... </tr>


    <tr id="authType_sub"> .... </tr>

....

</table>


위 코드는 정해진 엘리먼트 클릭 시 클릭한 값에 대응하는 ID 기반의 엘리먼트 요소를 찾아서 화면에서 보이거나 숨기는 코드이다.


IE를 제외하고 의도한데로 모두 잘 동작한다. 그러나 IE7 및 IE8, 9, 10 버전 호환성 보기에서 show, hide 되는 테이블 ROW의 border가 없어지지 않고 화면에 잔상으로 남는 경우가 생긴다. (귀차니즘으로 화면캡쳐는 생략 ㅠㅠ)


CSS도 건드려보고 jQuery API로 개삽질을 해봤으나 해결방법은 의외였다.


<table>    

    <!-- <colgroup>

        <col width="120" />

        <col />

    </colgroup> -->

    <tr id="authType_2"> .... </tr>


    <tr id="authType_3"> .... </tr>


    <tr id="authType_sub"> .... </tr>

....

</table>


위와같이 column 형식 선언부를 없애주면 잘 동작한다. 이런 개 씨X랄 메롱스런 IE !!







IE8 이하 버전에서 jQuery Validation Plugin 사용 시 아래 에러가 발생함


SCRIPT3: 구성원이 없습니다.

 

jquery-1.6.4.min.js, 줄 2 문자 29472


구글신에 따르면 jquery.validate.js 파일에서 아래 부분을 수정하면 된다.

기존
// Add novalidate tag if HTML5.
this.attr('novalidate', 'novalidate');

수정
if (!$.browser.msie || $.browser.version > 8) {
    // Add novalidate tag if HTML5.
    this.attr('novalidate', 'novalidate');
}


+ Recent posts