• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 2952
2013.05.24 (14:39:15)

게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.

**필수입력사항**

* 고객(업체)명 : LG CNS
* 제품 버전 : 가우스 4.0
* 문의 유형(질문/요청/참조) : 에러 메시지 출력 문제
* 내용 : 

JSP 에서 트랜잭션을 수행하여 데이터를 저장하는 로직이 있습니다.

 

저장 로직을 수행하다가 에러가 발생되면

 

LBizException 을 호출하여 에러 메시지를 직접 넘겨서 JSP에서 호출합니다.

 

비지니스(Biz) 단에서 LBizException 을 호출하여 커맨드(Cmd) 단으로 넘겨서 받는데

 

//biz

throw new LBizException("실패");

 

//cmd

gauceResponse.writeException("UserMsg", "CMD클래스파일명", e.getMessage ());
   throw new LBizException(Constants.MSG_CODE.ERROR_RETRIEVE, e);

 

//jsp

<script language=JavaScript for=gtrCUD event=onFail>
  alert(gtrCUD.SrvErrCode("UserMsg", 0));
 </script>

 

이런식으로 JSP 에서 에러 메시지를 호출해야 하는데.

사용자의 PC에 따라

 

"CMD클래스파일명" 이라는 메시지가 출력될때가 있고,

"실패" 라는 메시지가 출력될때도 있습니다.

 

그래서 임시로 gauceResponse.writeException("UserMsg", "CMD클래스파일명", e.getMessage ()); 이  부분을

gauceResponse.writeException("UserMsg", e.getMessage (), e.getMessage ());

 

이런식으로 변경하여 "실패" 라는 메시지가 출력되게 변경하였습니다.

 


gauceResponse.writeException("UserMsg", "CMD클래스파일명", e.getMessage ());  이런식으로 했을때,

특정 PC에서만 "CMD클래스파일명" 이라는 메시지로 출력되는지 알고싶습니다.

 

 

2013.05.27 (09:01:25)
shift

throw new LBizException 부분은 TR 컴포넌트 Onfaile 이벤트에서 처리할 수 없어 SrvErrCode라는 펑션을 생성하여 UserMsg로 패킷메시지를 받아 처리한 것으로 보이며 이는 개발자가 처리하기 위해 생성한 로직으로 보입니다.

 

TR 컴포넌트의 OnFail이벤트에서 제공하는 메소드는 gtrCUD.ErrorMsg 와 gtrCUD.ErrorCode입니다.

ErrorMsg와 ErrorCode는 서비스상에서 gauceResponse.writeException으로 보내지는 에러메시지를 출력하게 됩니다.

writeException으로 던져진 메시지만 받기를 원하시면 ErrorMsg와 ErrorCode를 사용하시기 바랍니다.

 

감사합니다.

(*.124.184.58)
 
Tag List
XE Login