고객센터-작은 소리에도 귀 기울이겠습니다.

FAQ

FAQ



  • 23 Trigger 처럼 동작하는 방법이 있습니까?
    EMMA는 Trigger를 사용해도 무방하지만, Trigger를 사용하는 방법보다는 아래 두 가지 방법을 사용하실 것을 권장 드립니다.

    ▶ Procedure 수정 : 간단한 DB 처리 부분을 해야 한다면, 프로시저를 직접 수정하시면 됩니다.
    ▶ User Callback Library : User Callback Library는 메시지 송수신 각 단계에서 사용자가 개발한 모듈이 Call 되는 기능입니다. EMMA V.3 이전 버전에서는 메시지 송수신 후 특정 Job 수행을 위해 Trigger등을 사용하거나 별도로 DB를 Polling하는 Application을 개발했지만, EMMA v.3에서는 사용자 라이브러를 개발 후 Call하도록 하면 됩니다. 자세한 사용 방법은 EMMA사용자 설명서 7절 User Library을 참조하시기 바랍니다.
  • 22 전송 테이블에 데이터를 입력했는데, 발송이 되지 않습니다.
    em_smt_tran 또는 em_mmt_tran에 데이터를 입력하였는데, 휴대폰으로 메시지가 전송이 되지 않는다면 먼저 sp_em_smt_tran_select 프로시저를 call하여 검색 결과가 존재하는지 확인해보시기 바랍니다. 만약 검색결과가 없다면 검색 조건에 해당하는 데이터가 존재하는 않는 것이므로 프로시저의 SQL 조건 부분을 체크하시기 바랍니다. 프로시저 Call방법은 아래와 같습니다.

    ▶ Oracle의 경우(sqlplus)
    VARIABLE p_cur refcursor
    begin
    emma_pkg_smt.sp_em_smt_tran_select(:p_cur, 'SMT', 'S', 2880, 'E1', 'Y' );
    end;
    /
    print :p_cur

    ▶ MSSQL의 경우
    exec sp_em_smt_tran_select 'SMT', 'S', 1440, 'E1', 'Y'

    ▶ MySQL의 경우
    call sp_em_smt_tran_select('SMT', 'S', 1440, 'E1', 'Y');
  • 21 Content필드 입력 시 Line break(줄 바꿈)는 어떻게 입력하나요?
    Message 본문 입력 시 줄 바꿈을 입력하기 위해서는 DB별로 아래처럼 처리하시면 됩니다.

    ▶ Oracle의 경우
    '안녕하세요'||chr(13)||chr(10)||'좋은 하루 되십시오'

    ▶ MSSQL의 경우
    '안녕하세요'+char(13) + char(10) + '좋은 하루 되십시오'

    ▶ MySQL의 경우
    '안녕하세요\r\n좋은 하루 되십시오'
  • 20 MSSQL에서 테이블 정렬 문제(Korean_Wansung_CS_AS, Korean_Wansung_CI_AS)가 발생합니다.
    MSSQL에서 DB 기본 테이블 정렬 값과 프로시저에서 정의한 정렬 값이 틀린 경우 또는 테이블간 정렬 값이 틀린 경우 아래와 같은 로그가 발생합니다. 해당 로그가 발생한다면, 기존에 생성된 EMMA관련 테이블 drop 후 프로시저에서 "COLLATE Korean_Wansung_CS_AS" 부분을 삭제 하신 후 프로시저를 다시 컴파일 하여 테스트 하시면 됩니다.

    ▶ Log
    com.microsoft.sqlserver.jdbc.SQLServerException: equal to 작업에서의 "Korean_Wansung_CS_AS"과(와) "Korean_Wansung_CI_AS" 간의 데이터 정렬 충돌을 해결할 수 없습니다.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source)
  • 19 Communications link failure due to underlying exception 오류가 출력됩니다.
    MySQL 사용 시 MTDistributor Thread에서 아래와 같은 메시지가 출력된다면 일정 세션 동안 DB 트래픽이 없어 DB 연결이 끊겼기 때문에 출력되는 로그입니다. MTDistributor에서만 발생하는 이유는 G/W에서 전송 결과 수신이 되어야 DB 처리를 시도하기에 일정시간 처리 건수가 없으면 DB연결이 해제되기 때문입니다. 단 DB가 끊기더라도 재 연결 후 결과 처리 하기 때문에 동작 상 문제는 되지는 않습니다.
    단, 해당 오류가 빈번하게 발생된다면, MySQL 설정 값 중 wait_timeout 값을 확인 하셔서 적정 값으로 늘리시기를 권장 드립니다.

    ▶ Log
    [2009/05/14 21:56:24.691] [ERROR] [TH0] MTDistributor I SysException occurred when insert to database from queue.
    ib.a.e.e
    at ib.emma.db.mysql.MySQLRPTDBHandler.updateMtResult(Unknown Source)
    at ib.emma.worker.MTDistributor.I(Unknown Source)
    at ib.emma.worker.MTDistributor.run(Unknown Source)
    com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:

    java.io.EOFException
    MESSAGE: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
  • 18 “문자열이나 이진 데이터는 잘립니다.”란 메시지가 반복 출력됩니다.
    SQLServer에서 Insert되는 데이터의 길이가 정의된 필드의 길이보다 클 경우 발생하는 오류입니다. 이 경우 실제 입력되는 값과, 테이블 필드의 길이를 비교하여 길이를 맞춰주시기 바랍니다.

    ▶ Log
    [2009/04/07 20:49:17.390] [ERROR] [TH0] MODistributor L SysException occurred when inserting MMSMO to database from queue.
    ib.a.e.e
    at ib.emma.db.mssql.MSSQLMODBHandler.insertMmsMo(Unknown Source)
    at ib.emma.worker.MODistributor.L(Unknown Source)
    at ib.emma.worker.MODistributor.run(Unknown Source)
    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]문자열이나 이진 데이터는 잘립니다.
    at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
  • 17 EMMA 실행 시 Oracle 계정 권한 설정 오류가 발생합니다.
    EMMA 실행 시 아래와 같은 로그가 출력된다면, 오라클 계정의 테이블 생성 권한이 없어서 발생하는 경우입니다. 이때는 해당 계정에 테이블 생성 권한을 아래 ‘권한 부여 방법’에 있는 명령어를 통해 부여하면 됩니다.

    ▶ Log
    java.sql.SQLException: ORA-01031: 권한이 불충분합니다
    ORA-06512: "EMMA.EMMA_PKG_COM", 줄 152에서
    ORA-06512: 줄 1에서
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

    ▶ 권한 부여 방법
    oralce9i : grant create any table to user_emma;
    oracle10g : grant create table to user_emma;
  • 16 EMMA 실행 시 DB Stored Procedure 오류가 발생합니다.
    EMMA 실행 시 아래와 같은 로그가 출력된다면, DB Package 또는 Stored Procedure가 설치되어 있지 않아 발생한 오류입니다. 이 경우 같이 제공되는 DB 프로시저를 등록하시면 됩니다.

    ▶ Log
    java.sql.SQLException: ORA-06550: line 1, column 7: PLS-00201: identifier 'EMMA_PKG_COM.SP_EM_COMMON_CHECKPRIVILEGE' must be declared
  • 15 Windows 환경에서 한 서버에 여러 EMMA 설치 시 서비스 등록은 어떻게 하나요?
    Windows에서 여러 EMMA 를 설치 하게 될 경우 서비스 명이 동일하기 때문에 기존 서비스 명을 덮어쓰게 됩니다. 이 경우는 Service를 수동으로 등록해 주셔야 합니다.

    서비스 수동 등록
    sc create SMS_SVC1 binpath= "C:\Infobank\EMMA\emmasvc.exe" displayName= "SMS_SVC1" type= own start= auto
    서비스 수동 삭제
    sc delete SMS_SVC1
  • 14 EMMA 인증키 파일을 찾을 수 없습니다.
    EMMA 설치 후 최초 실행 시 아래와 같은 log가 출력된다면, 인증키를 생성하지 않아 발생한 오류입니다. 인증키는 $EMMA_HOME/regkey 를 실행하여 생성할 수 있습니다. regkey 수행 시 success가 출력되지 않는다면, ID, 초기패스워드가 정확한지 확인하시기 바랍니다.

    ▶ Log
    EMMA startDaemon [%18s] ALERT: init failure, {} ib.frame.c.f: .\cert\zibvir3_pri.der (지정된 파일을 찾을 수 없습니다)
Back to top