게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.
**필수입력사항**
* 고객(업체)명 : 한국 서부발전
* 제품 버전 : gauce 4.0
* 문의 유형(질문/요청/참조) : clob 데이터 처리 및 저장
* 내용 :
clob 데이터 저장관련 해서 질문을 드릴려고 합니다.
소스 :
저장 버튼 클릭 시 호출 스크립트
function on_save() {
ta_content1.Enable = truel;
ta_content2.Enable = true2;
ta_content3.Enable = true3;
ta_content4.Enable = true4;
ta_content5.Enable = true5;
ds_01.NameValue(ds_01.RowPosition, "CONTENT1") = "ta_content1"
tr_01.ExtProp("UseActionBlank") = "T";
tr_01.Post();
}
tr 오브젝트 선언
<object id=tr_01 classid="">
<param name="ServerIP value="">
<param name="Action" value="transaction.jsp">
<param name="KeyName" value="toinb_dataid4">
<param name="KeyValue" value="JSP(I::IN_DS1=ds_01)">
</object>
textarea 오브젝트 선언
<object classid="" id="ta_content1" width="100%" height="100>
<param name=CacheLoad value=true>
<param name=Enable value=true>
<param name=ApplyRTF value=true>
</object>
bind 오브젝트 선언
<object id="bd_01" classid="">
<param name=DataID value=ds_01>
<param nameBindInfo value='
<C>Col="CONTENT1" Ctrl="ta_content1" Param=Src</C>
'
</object>
이렇게 코딩을 하고 저장을 할려고 하니 CLOB 데이터가 1byte로 생성이 되면서 글 내용을 사라지는 현황이
발생을 합니다.
어디서 잘못 된건인지 알고 싶은데... CLOB 관련된 모든 소스를 확인해 봐도 정확한 원인을 알 수가 없네요..
혹시 다른 부분에 설정을 해야 하는 부분이 있는 것인지.. 궁금 합니다.
답변 기다리겠습니다.
답변 감사드립니다.
alert(ds_01) 해본 결과 다음과 같이 나오더군요
CONTENT1:URL:NORMALTYPE:NORMALKEY
"ta_content1"
textarea 앞에 내용을 입력하고 저장 버튼을 누르면 내용이 없어지면서
transaction.jsp에서
CONTENT1_size로 사이즈를 체크해 보면 1byte로 나오네요..
WEB-INF\tmp에 생성되는 파일을 체크해 봐도 1byte로 파일만 생성이 되어 있구요..
저장을 하기 전에 다른 작업이나 설정을 해야 되는 부분이 있는지 궁금합니다.
저장시 서버 로직
req = service.getGauceRequest();
req = service.getGauceResponse();
GauceDataSet cds = req.getGauceDataSet("IN_DS1");
if(cds != null) {
int iContent1 = cds.indexOfColumn("CONTENT1");
int iContent1_size = cds.indexOfColumn("CONTENT1_size");
int iContent1_type = cds.indexOfColumn("CONTENT1_type");
GauceDataRow[] rows = cds/getDataRows();
for(int i=0; i<rows.length;i++) {
sql = "insert query";
is = (InputStream) rows[i].getInputStream(iContent1);
StringBuffer sb = new StringBufffer();
byte[] buf = new byte[1024];
while(true) {
int bread = is.read(buf);
if(bread == -1) break;
sb.append(new String(buf));
}
String content1_data = sb.toString();
StringReader sr = new StringReader(content1_data);
stmt = con.prepareStatement(sb.toString());
stmt.setCharacterStream(1, sr, content1_data.length());
stmt.executeUpdate();
is.close();
}
stmt.close();
}
이런식으로 서버 소스는 코딩 하였습니다... 다른 샘플 소스들과 비교해 보아도 다른 부분을 찾지 못해 이렇게 글을 올립니다.
내용 확인해 주시고
아래 번호로 연락 주시면 감사하겠습니다.
02-3429-6824 : 황기석
소스상의 이상은 확인할 수 없습니다.
화면에서 전달시 HTTP Analyzer와 같은 패킷 확인할 수 있는 툴에서 데이터가 정상적으로 전달되는지 확인한 후
서비스에서 전달된 URL, Size, Type 등을 로그에 남겨 데이터를 확인해야 할 것 같습니다.
FAQ의 샘플이 먼저 정상적으로 동작하는지 확인해보시기 바라며, 해당 소스를 기준으로 적용해보시기 바랍니다.
blob sample : http://member.shift.co.kr/index.php?search_target=title&search_keyword=blob&document_srl=230156
clob sample : http://member.shift.co.kr/index.php?search_target=title&search_keyword=clob&document_srl=230314
문제가 해결되지 않으시면 유지보수 담당자에게 원격지원을 받으시기 바랍니다.
감사합니다.
"Didn't meet stated Content-Length, wrote" 화면에서 보여 주려는 것과 실제로 전송되는 콘텐츠 길이를 확인 시켜 주기 위해 웹로직에 추가된 기능입니다.
참고 : http://dae0park.blog.me/140175583885
servlet code에서 아래 code를 추가해 보시기를 권장합니다.
response.setContentLength(0);
............................
............................
response.flushBuffer();
return;
번호 | 제목 | 닉네임 | 조회 | 등록일 |
---|---|---|---|---|
7449 | 호환성 보기 설정 이후에도 메뉴 깨짐 현상 | kiarakim |
9322 | 2017-02-15 |
7448 | Shift DEMO 사이트 에서 IE11 다운됨 | 정성호 |
9555 | 2017-02-10 |
7447 | 엑셀 업로드 속도 문의 | jokerrain |
9622 | 2016-12-15 |
7446 | 차트 질문 | 신현철 |
9585 | 2016-10-04 |
7445 | java.io.IOException/java.lang.NullPointerException 발생 | 윤재국 |
10539 | 2016-07-13 |
7444 | 호환성 보기 | kiarakim |
9267 | 2016-07-11 |
7443 | 가우스 그리드에 문자입력시 한글/영문 우선순위 변경 | hthink |
8984 | 2016-04-21 |
7442 | 레포트 DFooter영역 이미지 태그 | FKSS |
9745 | 2016-04-20 |
7441 | 좌/우측으로 데이터 이동 | 헐랭이 |
8138 | 2016-04-15 |
7440 | 가우스 리포트를 PDF로 저장 가능한가요? | 안순주 |
10620 | 2016-04-12 |
7439 | 중간소계 필드 제외 문의 | 김은영2 |
8034 | 2016-04-08 |
7438 | 가우스 그리드 범위지정 선택 가능여부 문의 [1] | hthink |
10400 | 2016-03-29 |
7437 | 그리드에 이미지표현 [1] | 홍혜련 |
9489 | 2016-03-23 |
7436 | Internet Explorer의 작동이 중지되었습니다. [1] | 김태성2 |
9134 | 2016-03-18 |
7435 | 특정 index (row) 삭제 [1] | c1138 |
9480 | 2016-03-17 |
7434 | was교체시 업그레이드 재설치 문의 [1] | 박서영 |
8194 | 2016-03-15 |
7433 | 파일 업로드 문의(핸들이 잘못 되었습니다) | 임종훈 |
9290 | 2016-03-15 |
7432 | 개발서버 라이센스 갱신 문의 [1] | 정민75 |
10222 | 2016-03-07 |
7431 | 문의합니다 [1] | c1138 |
9614 | 2016-03-07 |
7430 | EnterpriseMode 적용이 되지 않습니다. [1] | 동긔나긔 |
10863 | 2016-03-03 |
1. 저장 전 데이터가 정상적으로 들어있는지 확인해 보시기 바랍니다.
alert(ds_01.text);
tr_01.Post();
2. OndataError를 사용하여 포멧에 이상이 있는지 확인해 보시기 바랍니다.
http://member.shift.co.kr/ComponentManual/AMX/Basic/DataSet/Event/OnDataError/OnDataError.htm
3. 또한 콜론(:)을 하나만 사용하시기 바랍니다.
I::IN_DS1=ds_01 > I:IN_DS1=ds_01
감사합니다.