>게시판을 이용해 주셔서 감사합니다.
>다음양식에 맞게 입력해주세요.
>
>* 고객시스템명 :
>* GAUCE 버전 : 3.5
>* WAS 종류(WebLogic 등등) :
>* DB 종류 : 오라클9i
>* 문의 유형(질문/요청/참조) :
>* 내용 :
> select구문을 jsp로 만들어서 그리드에 뿌려주는건데 희한하게 정수형은 에러없이 성공하는데
>문자형은 에러가 뜹니다. 오라클을 학습차원에서 제컴퓨터에 깔고 사용했고
>tomcat4.1을 사용했습니다.
>희한하게도 둘다 안되면 고민할게 없는데
>정수형은되고 문자형은 안되는지 제가 셋팅잘못해서인지 궁금하네요.
><%@ pageimport="com.gauce.*,com.gauce.io.*,com.gauce.common.*,com.gauce.log.*,com.gauce.db.*,java.sql.*"%><%
>ServiceLoader loader = new ServiceLoader(request, response);
>GauceService service = loader.newService();
>GauceContext context = service.getContext();
>Logger logger = context.getLogger();
>GauceDBConnection conn = null;
>// 부산은행 방식으로 만든다.
>try {
>
> conn = service.getDBConnection();
> GauceRequest req = service.getGauceRequest();
> GauceResponse res = service.getGauceResponse();
> GauceDataSet dSet = new GauceDataSet("USER");
> res.enableFirstRow(dSet);
>
> dSet.addDataColumn(new GauceDataColumn("a", GauceDataColumn.TB_INT));
> //dSet.addDataColumn(new GauceDataColumn("b", GauceDataColumn.TB_STRING));
>
>
> String query = "select a from test";
> //String query = "select b from test";
> //String query = "select a,b from test";
>
> GauceStatement stmt = conn.getGauceStatement(query);
>
> stmt.executeQuery(dSet);
> dSet.flush();
> res.commit("Terminated successfully!");
> res.close();
>} catch (Exception e) {
> logger.err.println(this, e);
> throw e;
>} finally {
> if (conn != null) {
> try {
> conn.close();
> } catch (Exception e) {}
> }
> loader.restoreService(service);
>}
>%>
>
>a는 정수형인데 제대로 실행되는데 b가 문자형으로 var_char2타입으로 하는데 왜 에러가뜨는지 원인을 모르겠습니다. 초보라서 도움이 필요합니다.
//////////////////////////////////////////////////////////////////////////////////////////////////////
정확히 어떤 에러가 나는지는 모르겠습니다만...
먼저 dSet.addDataColumn(new GauceDataColumn("b", GauceDataColumn.TB_STRING, 15)); <== 이 부분을 이렇게 바꿔주셔야합니다. 스트링의 길이를 지정하지 않았었기에 발생한 에러인듯 합니다.
그리고, 한글 출력이 물음표 기호로 처리되는 경우도 있습니다. 그것은 가우스를 설치한 폴더 밑에 config폴더에 보시면 gauce.properties라는 파일이 있는데, 그걸 열어서 charset관련한 속성값을 전부 EUC_KR로 바꿔주시면 됩니다.