• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 2257
2012.05.10 (20:03:18)
안녕하세요.

가우스에서 TR.POST()를 실행하여 결과를 클라이언트로 가져올 때 아래와 같은 에러가 발생하여 문의드립니다.

java.lang.ArrayIndexOutOfBoundsException : 2440
    at com.gauce.io.bin.G.A(Unknown Source)
    at com.gauce.io.bin.G.A(Unknown Source)
    at com.gauce.io.bin.G.A(Unknown Source)
    at com.gauce.io.bin.G.write(Unknown Source)
    ........

2440이라는 숫자는 매번 바뀝니다.

동작방식은 하나의 TR이 수행될 때, 복수의 DataSet을 처리하며 각각의 DataSet은 멀티쓰레드로 동시에 처리됩니다. 별도의 동기화 처리를 한 부분은 없습니다.

실행환경은 웹로직 + 자바입니다.
번호 제목 닉네임 조회 등록일
6649 no image check box 선택된 값 만큼 submit 하기
기술지원97
2940 2012-05-16
http://www.gauce.com/ComponentManual/TEMPLATE/Main/main.html일반적인 List로는 값을 뽑아내지 못합니다. 아래 관련링크1의 server단 샘플을 확인하시기 바랍니다. Server Templete > 4.x > API > TR 감사합니다. >안녕하세요. >답변 감사드립니다. > >알려 주신데로 하니 되긴 하는데... >정확히 안되네요... ㅠㅠ > >10의 항목이 목록으로 출력 되고, 그 중 2개만 선택해서 >submit하면 선택된 값의 key 값이 스크립트에서는 >잘 표기 됩니다만, 자바에서는 마지막 값만 넘어 옵니다. > >알려 주신데로 아래와 같이 소스를 변경 하였습니다. > >ds_02.SetDataHeader("revkey:STRING(10), loginId:STRING(20), chst:STRING(8)"); > for(i=1; i<=ds_01.CountRow; i++){ > chk = ds_01.NameValue(i, 'chk'); > if(chk == '1'){ > ds_02.Addrow(); > ds_02.NameValue(i, "revkey") = ds_01.NameValue(i, "sjIdx"); > ds_02.NameValue(i, "loginId") = "<c:out value='${loginUser.userId}'/>"; > ds_02.NameValue(i, "chst") = 'CHST0005'; > }else{ > ds_02.Addrow(); > ds_02.NameValue(1, "revkey") = ds_01.NameValue(ds_01.RowPosition, "sjIdx"); > ds_02.NameValue(1, "loginId") = "<c:out value='${loginUser.userId}'/>"; > ds_02.NameValue(1, "chst") = 'CHST0005'; > } > } > > tr_01.KeyValue = "JSP(I:input_01=ds_02)"; > tr_01.KeyName = "toinb_dataid4"; > > tr_01.Action="<c:url value='/gen/SCGenStopCallAutoEnd.do'/>?1=1"; > dataToServer(tr_01); >======================================================================= >자바단에서는 >List rows = gav.getDataSetToList("input_01"); >//List형으로 넘긴 값을 받고요 > >for(int i = 0 ; i < rows.size() ; i++){ > //저장 로직 타는 부분입니다. >} > >log로 자바단에서 입력되는 값을 보니 >아래와 같습니다... > >[{loginId=R100002, revkey=688, chst=CHST0005, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=R100002, revkey=691, chst=CHST0005, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=R100002, revkey=688, chst=CHST0005, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}, >{loginId=, revkey=, chst=, JOB_TYPE_CODE=2, GAUCE_JOB_TYPE=INSERT}] > >선택된 값의 key 값은 전부 틀리지만 자바단에서 받아 들이는 값은 >한개만 인식되고 있네요... 결국은 submit을 잘못 해 주고 있다는 건데... > >다시 원점이네요... 알려주신데로 해 보았습니다만, >한번더 부탁드려 봅니다... > >고생 많으십니다... > > >>컴포넌트의 경우 데이터셋에 데이터를 한번에 입력 후 for문이 끝난 후에 post하시기 바랍니다. >>Post시 변경된 데이터가 한번에 넘어가게 됩니다. >> >>ex) >>ds_02.SetDataHeader("xxx:STRING(10)"); >>for(i=1; i<=ds_01.CountRow; i++){ >> chk = ds_01.NameValue(i, 'chk'); >> if(chk == '1'){ >> //InsertRow는 지정한 index에 로우를 추가하는 메소드입니다. 순서대로 처리하게 하려면 Addrow를 사용하세요. >> //ds_02.InsertRow(i); >> ds_02.Addrow(); >> ds_02.NameValue(i, "xxx") = ds_01.NameValue(i, "xxx"); >> }else{ >> //ds_02.InsertRow(1); >> ds_02.Addrow(); >> //ds_01.RowPosition은 현재 DataSet의 focus가 지정된 상태값입니다. 값을 다시 한번 확인해보세요. >> ds_02.NameValue(1, "xxx") = ds_01.NameValue(ds_01.RowPosition, "xxx"); >> } >>} >> >>tr_01.KeyValue = "JSP(I:input_01=ds_02)"; >>tr_01.KeyName = "toinb_dataid4"; >> >>tr_01.Action="<c:url value='/xxx/xxx.do'/?1=1"; >>dataToServer(tr_01); >> >>>게시판을 이용해 주셔서 감사합니다. >>>다음양식에 맞게 입력해주세요. >>> >>>* 고객시스템명 : >>>* GAUCE 버전 : 4.0 >>>* WAS 종류(WebLogic 등등) : Tomcat >>>* DB 종류 : MSSQL >>>* 문의 유형(질문/요청/참조) : CHECK BOX >>>* 내용 : >>>안녕하세요. >>>그리드에서 체크박스 기능을 구현하였습니다. >>> >>>체크된 값의 키 값만 서버에 submit을 할려고 합니다. >>>for문으로 통해 alert로 체크된 키값은 잘 표기 됩니다. >>> >>>정작 submit 할 때, for문을 한번만 수행하는데 >>> >>>어떻게 해야 할지 모르겠네요... >>> >>>아래는 해당 jsscrript입니다. >>>================================================================================================ >>>ds_02.SetDataHeader("xxx:STRING(10)"); >>> for(i=1; i<=ds_01.CountRow; i++){ >>> chk = ds_01.NameValue(i, 'chk'); >>> if(chk == '1'){ >>> alert("check!!"); >>> ds_02.InsertRow(i); >>> ds_02.NameValue(i, "xxx") = ds_01.NameValue(i, "xxx"); >>> >>> alert(ds_02.NameValue(i, "xxx")); >>> >>> tr_01.KeyValue = "JSP(I:input_01=ds_02)"; >>> tr_01.KeyName = "toinb_dataid4"; >>> >>> tr_01.Action="<c:url value='/xxx/xxx.do'/>?1=1"; >>> dataToServer(tr_01); >>> }else{ >>> alert("unCheck!!"); >>> ds_02.InsertRow(1); >>> ds_02.NameValue(1, "xxx") = ds_01.NameValue(ds_01.RowPosition, "xxx"); >>> >>> tr_01.KeyValue = "JSP(I:input_01=ds_02)"; >>> tr_01.KeyName = "toinb_dataid4"; >>> >>> tr_01.Action="<c:url value='/xxx/xxx.do'/>?1=1"; >>> dataToServer(tr_01); >>> } >>> } >>> >>>action을 두번 태워야 하는거 같은데... >>>생각보다 잘 안되네요... >> >
6648 no image 질문입니다~
윤창영
2236 2012-05-14
6647 no image 질문입니다~
기술지원97
2279 2012-05-14
GridToExcel시 데이터를 동적으로 변경되는 기능은 지원하지 않습니다. 더미컬럼을 만들어서 처리해야 합니다. 1. 더미컬럼을 하나 만들어서 해당 컬럼은 show=false로 설정하고 mask=XXX-XXXX-XX** 와 같이 설정 하신 후 2. GridToExcel 메소드 수행 전 화면에 보이는 컬럼은 show=false / 더미컬럼을 show=true로 지정하여 처리해야 합니다. 3. GridToExcel 메소드 완료 후 다시 더미컬럼을 show=false, 실제컬럼은 show=ture로 설정합니다. [제약사항] 1. 데이터는 특수문자 없이 String만 받는다. (01011111234) - 자리수에 따라 if/decode를 사용하여 mask를 동적으로 변경해야 합니다.(핸드폰 10자리 / 11자리) 2. GridToexcel의 옵션2를 사용하면 안됩니다. - show=false 된 컬럼까지 출력하는 옵션입니다. >게시판을 이용해 주셔서 감사합니다. >다음양식에 맞게 입력해주세요. > >* 고객시스템명 : >* GAUCE 버전 : 4.0 (CLSID:71E7ACA0-EF63-4055-9894-229B056E9C31) >* WAS 종류(WebLogic 등등) : JBOSS >* DB 종류 : Oracle >* 문의 유형(질문/요청/참조) : 질문 >* 내용 : > >화면에서 그리드를 액셀로 다운받을때 특정 컬럼의 값을 변경하여 받을수 있나요? > >가령 전화번호가 있으면 010-1234-1234를 010-1234-12XX 이런식으로 > >뒤에 두글자만 특정글자로 바꿔서 보여주고 싶습니다. > >가능한 경우이면 방법 설명 부탁드리겠습니다. > >감사합니다. >
6646 no image 드롭다운 오류 질문
심정도
2790 2012-05-11
6645 no image 드롭다운 오류 질문
기술지원97
2791 2012-05-11
Selected no image GauceOutputStream.write() 시에 ArrayIndexOutOfBoundsException
김현제
2257 2012-05-10
6643 no image GauceOutputStream.write() 시에 ArrayIndexOutOfBoundsException
기술지원97
2305 2012-05-11
6642 no image 그리드 소수점
윤창영
2322 2012-05-04
게시판을 이용해 주셔서 감사합니다. 다음양식에 맞게 입력해주세요. * 고객시스템명 : LG전자 모바일 * GAUCE 버전 : 4.0 (CLSID:71E7ACA0-EF63-4055-9894-229B056E9C31) * WAS 종류(WebLogic 등등) : JBOSS * DB 종류 : Oracle * 문의 유형(질문/요청/참조) : 질문 * 내용 : 2개의 화면이 있고, 2개의 쿼리에서 데이터를 가져오고 있습니다. (두 화면의 쿼리는 가져오는 항목이 다를뿐 참조하는 테이블은 같습니다.) 그중에 컬럼하나의 값(Number타입 - sum한 값임)이 987.7 인데.. dec=0이면 987이 나와야 되는건데... 한 화면에서는 987로 다른 화면에서는 988로 나오고 있습니다. 참고로 자바에서 flush()하기전 로그를 찍어보면 두 화면의 데이터는 모두 987.7을 가져오고 있습니다. 이런 현상이 발생할 수 있는경우는 어떤 경우이며, 동일하게 값을 맞추려면 어떻게 해야되는지 답변부탁드립니다. <Param Name="DataID" value="dataId"> <PARAM name="SelectionColor" value=" <SC> Type='FocusCurRow', BgColor='#f9f5db', TextColor='#333333' </SC> <SC> Type='FocusEditRow', BgColor='#f9f5db', TextColor='#333333' </SC>"> <PARAM name="BorderStyle" value="0"> <PARAM name="LineColor" value="#A3ACB5"> <PARAM name="HeadBorder" value="4"> <PARAM name="HeadLineColor" value="#A3ACB5"> <PARAM name="TitleHeight" value="29"> <PARAM Name="RowHeight" value="22"> <PARAM name="IndWidth" value=0> <PARAM name="SortView" value=right> <PARAM name="ColSizing" value=true> <param name="AllShowEdit" value=true> <param name="AutoResizing" value=true> <PARAM name="UsingOneClick" value=1> <param name=ViewSummary value=1> <Param Name="AddSelectRows" value=True> <param name=FixSizing value="True"> <param Name="Editable" value="true"> <param Name="MultiRowSelect" value="false"> <Param Name="Format" value=' <c> id=sumAmt name="총금액 Edit=none sort=false width=90 align=right dec=0 SumText=@sum SumColor="blue" </c> '> 현재 두 화면다 그리드는 위와 같은 설정으로 되어 있습니다.
6641 no image 그리드 소수점(재 질문~~~~~~)
윤창영
2256 2012-05-10
다시 질문 드리겠습니다. 쿼리를 통해서 원인을 찾아보니 1) select sum(amt) as amt from amt_table 해서 나온결과가 988.7 이고 2) select a.amt from ( select sum(amt) as amt from amt_table ) a 이 경우에도 988.7 입니다. 하지만 그리드에 보여줄때 1)의 경우에는 dec=0 일 경우에 말씀하신대로 절삭되어 988이 보입니다만, 2)의 경우에는 dec=0 일 경우 절삭이 되지 않고 반올림한 989가 보여지고 있습니다. 2)의 경우에도 절삭되어져 보여줘야 하는게 아닌지... 이와 관련한 답변 부탁드리겠습니다. 감사합니다. >게시판을 이용해 주셔서 감사합니다. >다음양식에 맞게 입력해주세요. > >* 고객시스템명 : LG전자 모바일 >* GAUCE 버전 : 4.0 (CLSID:71E7ACA0-EF63-4055-9894-229B056E9C31) >* WAS 종류(WebLogic 등등) : JBOSS >* DB 종류 : Oracle >* 문의 유형(질문/요청/참조) : 질문 >* 내용 : > >2개의 화면이 있고, 2개의 쿼리에서 데이터를 가져오고 있습니다. > >(두 화면의 쿼리는 가져오는 항목이 다를뿐 참조하는 테이블은 같습니다.) > >그중에 컬럼하나의 값(Number타입 - sum한 값임)이 987.7 인데.. > >dec=0이면 987이 나와야 되는건데... > >한 화면에서는 987로 다른 화면에서는 988로 나오고 있습니다. > >참고로 자바에서 flush()하기전 로그를 찍어보면 두 화면의 데이터는 모두 987.7을 가져오고 있습니다. > >이런 현상이 발생할 수 있는경우는 어떤 경우이며, 동일하게 값을 맞추려면 어떻게 해야되는지 > >답변부탁드립니다. > ><Param Name="DataID" value="dataId"> ><PARAM name="SelectionColor" value=" <SC> Type='FocusCurRow', BgColor='#f9f5db', TextColor='#333333' </SC> ><SC> Type='FocusEditRow', BgColor='#f9f5db', TextColor='#333333' </SC>"> ><PARAM name="BorderStyle" value="0"> ><PARAM name="LineColor" value="#A3ACB5"> ><PARAM name="HeadBorder" value="4"> ><PARAM name="HeadLineColor" value="#A3ACB5"> ><PARAM name="TitleHeight" value="29"> ><PARAM Name="RowHeight" value="22"> ><PARAM name="IndWidth" value=0> ><PARAM name="SortView" value=right> ><PARAM name="ColSizing" value=true> ><param name="AllShowEdit" value=true> ><param name="AutoResizing" value=true> ><PARAM name="UsingOneClick" value=1> ><param name=ViewSummary value=1> ><Param Name="AddSelectRows" value=True> ><param name=FixSizing value="True"> ><param Name="Editable" value="true"> ><param Name="MultiRowSelect" value="false"> ><Param Name="Format" value=' ><c> id=sumAmt name="총금액 Edit=none sort=false width=90 align=right dec=0 SumText=@sum SumColor="blue" </c> >'> > >현재 두 화면다 그리드는 위와 같은 설정으로 되어 있습니다. > > >
6640 no image 그리드 소수점(재 질문~~~~~~)
기술지원97
2457 2012-05-10
DataSet의 컬럼 타입의 사이즈 / DEC 사이즈도 확인해보시기 바랍니다. 원격이 가능하시면 아래 기술지원팀으로 연락주셔서 원격지원을 받으시기 바랍니다. 감사합니다. >다시 질문 드리겠습니다. > >쿼리를 통해서 원인을 찾아보니 > >1) select sum(amt) as amt > from amt_table >해서 나온결과가 988.7 이고 > >2) select a.amt > from ( > select sum(amt) as amt > from amt_table > ) a >이 경우에도 988.7 입니다. > >하지만 그리드에 보여줄때 1)의 경우에는 dec=0 일 경우에 말씀하신대로 절삭되어 988이 보입니다만, > 2)의 경우에는 dec=0 일 경우 절삭이 되지 않고 반올림한 989가 보여지고 있습니다. > >2)의 경우에도 절삭되어져 보여줘야 하는게 아닌지... > >이와 관련한 답변 부탁드리겠습니다. > >감사합니다. > > >>게시판을 이용해 주셔서 감사합니다. >>다음양식에 맞게 입력해주세요. >> >>* 고객시스템명 : LG전자 모바일 >>* GAUCE 버전 : 4.0 (CLSID:71E7ACA0-EF63-4055-9894-229B056E9C31) >>* WAS 종류(WebLogic 등등) : JBOSS >>* DB 종류 : Oracle >>* 문의 유형(질문/요청/참조) : 질문 >>* 내용 : >> >>2개의 화면이 있고, 2개의 쿼리에서 데이터를 가져오고 있습니다. >> >>(두 화면의 쿼리는 가져오는 항목이 다를뿐 참조하는 테이블은 같습니다.) >> >>그중에 컬럼하나의 값(Number타입 - sum한 값임)이 987.7 인데.. >> >>dec=0이면 987이 나와야 되는건데... >> >>한 화면에서는 987로 다른 화면에서는 988로 나오고 있습니다. >> >>참고로 자바에서 flush()하기전 로그를 찍어보면 두 화면의 데이터는 모두 987.7을 가져오고 있습니다. >> >>이런 현상이 발생할 수 있는경우는 어떤 경우이며, 동일하게 값을 맞추려면 어떻게 해야되는지 >> >>답변부탁드립니다. >> >><Param Name="DataID" value="dataId"> >><PARAM name="SelectionColor" value=" <SC> Type='FocusCurRow', BgColor='#f9f5db', TextColor='#333333' </SC> >><SC> Type='FocusEditRow', BgColor='#f9f5db', TextColor='#333333' </SC>"> >><PARAM name="BorderStyle" value="0"> >><PARAM name="LineColor" value="#A3ACB5"> >><PARAM name="HeadBorder" value="4"> >><PARAM name="HeadLineColor" value="#A3ACB5"> >><PARAM name="TitleHeight" value="29"> >><PARAM Name="RowHeight" value="22"> >><PARAM name="IndWidth" value=0> >><PARAM name="SortView" value=right> >><PARAM name="ColSizing" value=true> >><param name="AllShowEdit" value=true> >><param name="AutoResizing" value=true> >><PARAM name="UsingOneClick" value=1> >><param name=ViewSummary value=1> >><Param Name="AddSelectRows" value=True> >><param name=FixSizing value="True"> >><param Name="Editable" value="true"> >><param Name="MultiRowSelect" value="false"> >><Param Name="Format" value=' >><c> id=sumAmt name="총금액 Edit=none sort=false width=90 align=right dec=0 SumText=@sum SumColor="blue" </c> >>'> >> >>현재 두 화면다 그리드는 위와 같은 설정으로 되어 있습니다. >> >> >> >
6639 no image 그리드 소수점
기술지원97
2292 2012-05-07
DEC를 설정하면 소수점은 지정한 자리만큼 절삭하게 됩니다. 동일한 포멧에서 발생을 하신다면 데이터값이 정확한지 확인해 주시기 바랍니다. 확인 후에도 위와 같은 현상이 발생하시면 아래 기술지원팀으로 연락하여 원격 및 기술가이드를 받으시기 바랍니다. 감사합니다. >게시판을 이용해 주셔서 감사합니다. >다음양식에 맞게 입력해주세요. > >* 고객시스템명 : LG전자 모바일 >* GAUCE 버전 : 4.0 (CLSID:71E7ACA0-EF63-4055-9894-229B056E9C31) >* WAS 종류(WebLogic 등등) : JBOSS >* DB 종류 : Oracle >* 문의 유형(질문/요청/참조) : 질문 >* 내용 : > >2개의 화면이 있고, 2개의 쿼리에서 데이터를 가져오고 있습니다. > >(두 화면의 쿼리는 가져오는 항목이 다를뿐 참조하는 테이블은 같습니다.) > >그중에 컬럼하나의 값(Number타입 - sum한 값임)이 987.7 인데.. > >dec=0이면 987이 나와야 되는건데... > >한 화면에서는 987로 다른 화면에서는 988로 나오고 있습니다. > >참고로 자바에서 flush()하기전 로그를 찍어보면 두 화면의 데이터는 모두 987.7을 가져오고 있습니다. > >이런 현상이 발생할 수 있는경우는 어떤 경우이며, 동일하게 값을 맞추려면 어떻게 해야되는지 > >답변부탁드립니다. > ><Param Name="DataID" value="dataId"> ><PARAM name="SelectionColor" value=" <SC> Type='FocusCurRow', BgColor='#f9f5db', TextColor='#333333' </SC> ><SC> Type='FocusEditRow', BgColor='#f9f5db', TextColor='#333333' </SC>"> ><PARAM name="BorderStyle" value="0"> ><PARAM name="LineColor" value="#A3ACB5"> ><PARAM name="HeadBorder" value="4"> ><PARAM name="HeadLineColor" value="#A3ACB5"> ><PARAM name="TitleHeight" value="29"> ><PARAM Name="RowHeight" value="22"> ><PARAM name="IndWidth" value=0> ><PARAM name="SortView" value=right> ><PARAM name="ColSizing" value=true> ><param name="AllShowEdit" value=true> ><param name="AutoResizing" value=true> ><PARAM name="UsingOneClick" value=1> ><param name=ViewSummary value=1> ><Param Name="AddSelectRows" value=True> ><param name=FixSizing value="True"> ><param Name="Editable" value="true"> ><param Name="MultiRowSelect" value="false"> ><Param Name="Format" value=' ><c> id=sumAmt name="총금액 Edit=none sort=false width=90 align=right dec=0 SumText=@sum SumColor="blue" </c> >'> > >현재 두 화면다 그리드는 위와 같은 설정으로 되어 있습니다. > > >
6638 no image dataset에서 텍스트박스로 바인드 시 값 포맷 문의
유영
2344 2012-05-04
6637 no image dataset에서 텍스트박스로 바인드 시 값 포맷 문의
기술지원97
2304 2012-05-07
6636 no image 그리드내 색상 조절방법에 대해 알려주세요 파일
김삼갑
2878 2012-05-04
6635 no image 그리드내 색상 조절방법에 대해 알려주세요
기술지원97
2487 2012-05-04
6634 no image ExportFile2 저장시 서버 특정 디렉토리에 바로 저장되는 방법
이태형
2561 2012-05-01
6633 no image ExportFile2 저장시 서버 특정 디렉토리에 바로 저장되는 방법
기술지원97
2516 2012-05-03
6632 no image 가우스 설치시 에러가 납니다. 파일
FKSS
2439 2012-04-30
6631 no image 가우스 설치시 에러가 납니다.
관리자
2380 2012-05-02
6630 no image code hint 문의
홍종영
2242 2012-04-30
Tag List
XE Login