게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.
**필수입력사항**
* 고객(업체)명 : LG 전자
* 제품 버전 : Gauce 4.0
* 문의 유형(질문/요청/참조) : 이미지 데이터 셋 출력 오류 문의
* 내용 :
안녕하세요.
| 부품번호 | Image | 생성일 | 생성자 | 파일경로 | 파일명 |
위와 같이 그리드를 셋팅후, Imgage 컬럼에는 각 Row 마다 업로드한 Image (Jpg, bmp) 파일을 보여 주도록 만들었습니다.
검색 Dataset이 완료 된 후, 각 Row 마다 업로드한 이미지 경로를 찾아가서 Image DataSet에 각 이미지를 셋팅하도록 되어 있습니다.
검색 조건에 따라 Row가 20건 정도 일 때에는 이미지 컬럼에 이미지가 바인딩되어 잘 표시되는데, 대략 30~40 Row 이상의 이미지들을 Image Dataset에 넣어 가우스 그리드에 표시할 경우, 이미지가 바인딩이 안됩니다. 그냥 공백으로 나옵니다.
확인 부탁드립니다.
수고하십시오.
<script language=JavaScript for=ds_input event=OnLoadCompleted(rowCnt)>
for(var i=1; i<=ds_input.CountRow; i++) {
// File이 있는 것만 이미지 표시함.
if (ds_input.NameValue(i, "fileName") != "") {
partNoList += ds_input.NameValue(i, "partNo") + "@";
fileNameList += ds_input.NameValue(i, "fileName") + "@";
filedir += ds_input.NameValue(i, "fileDir") + "@";
var condition = "?partList=" + partNoList;
condition += "&fileNameList=" + fileNameList;
condition += "&filedir=" + filedir;
ds_img.DataID = "P_WM_MD_009_IMG_SET.jsp" + condition;
ds_img.Reset();
}
}
</script>
=========*P_WM_MD_009_IMG_SET.jsp 내용====================================================
<%@ page import="javax.servlet.*,java.io.*,java.util.*,java.text.*,com.gauce.*,com.gauce.io.*,com.gauce.log.*,com.gauce.common.*"%>
<%
ServiceLoader loader = new ServiceLoader(request, response);
GauceService service = loader.newService();
File f = null;
FileInputStream fis = null;
String partList = request.getParameter("partList");
String fileNameList = request.getParameter("fileNameList");
String filedir = request.getParameter("filedir");
try {
response.setContentType("application/octet-stream;charset=ISO-8859-1");
GauceResponse res = service.getGauceResponse();
GauceDataSet ds = new GauceDataSet();
res.enableFirstRow(ds);
File fImage = null;
FileInputStream fisImage = null;
ds.addDataColumn(new GauceDataColumn("img",GauceDataColumn.TB_BLOB));
ds.addDataColumn(new GauceDataColumn("img_id",GauceDataColumn.TB_STRING));
ds.addDataColumn(new GauceDataColumn("img_size",GauceDataColumn.TB_INT));
//String imgDir = "D:/AADEV_LGE/workspace/PROTOTYPE/war/upload/DFZ/WM/MD/20140801/";
String[] imgDir = filedir.split("@");
String[] fileName = fileNameList.split("@");
String[] partNo = partList.split("@");
for ( int i=0; i<fileName.length; i++ ) {
if (!fileName[i].equals("")) {
f = new File(imgDir[i] + fileName[i]);
fis = new FileInputStream(f);
GauceDataRow row = ds.newDataRow();
row.addColumnValue(fis);
row.addColumnValue(partNo[i]);
row.addColumnValue(f.length());
ds.addDataRow(row);
}
}
ds.flush();
res.flush();
res.commit();
res.close();
if (fis != null) {
fis.close();
}
//loader.restoreService(service);
} catch (Exception e) {
e.printStackTrace();
}
%>
말씀하신대로 ds_img.reset(); > OnLoadCompleted(ds_img) > ds_input.reset(); 해보았는데,
이미지가 바인딩 되다가 중간에 익스플로러 오류가 납니다.
그러면서 익스플로러를 다시 여네요.
계속요..
문제 서명:
문제 이벤트 이름: BEX
응용 프로그램 이름: iexplore.exe
응용 프로그램 버전: 8.0.7601.18571
응용 프로그램 타임스탬프: 53eee2cc
오류 모듈 이름: StackHash_0a9e
오류 모듈 버전: 0.0.0.0
오류 모듈 타임스탬프: 00000000
예외 오프셋: 002f0033
예외 코드: c0000005
예외 데이터: 00000008
OS 버전: 6.1.7601.2.1.0.256.1
로캘 ID: 1042
추가 정보 1: 0a9e
추가 정보 2: 0a9e372d3b4ad19135b953a78882e789
추가 정보 3: 0a9e
추가 정보 4: 0a9e372d3b4ad19135b953a78882e789
아래 소스에서 "완료" 라는 메세지가 뜨지 않습니다.
예제 소스 부탁드립니다.
* <script language=JavaScript for=ds_img event=OnLoadError()>
alert("Version : " + ds_img.Version + " \n Error Code = " + ds_img.ErrorCode + "\n" + "Error Message = " + ds_img.ErrorMsg);
</script>
여기에서 에러 메세지가 뜨는데,
Version : 2,0,1,10
Error Code = 0
Error Message = The version is not supported or the data are not correct.
20건 정도의 이미지가 나오는걸 봐서는 이건 버전 문제 인지요?
<script language=JavaScript for=ds_inputForImg event=OnLoadCompleted(rowCnt)>
var partNoList = "";
var fileNameList = "";
var filedir = "";
for(var i=1; i<=ds_inputForImg.CountRow; i++) {
// File이 있는 것만 이미지 표시함.
if (ds_inputForImg.NameValue(i, "fileName") != "") {
partNoList += ds_inputForImg.NameValue(i, "partNo") ;
fileNameList += ds_inputForImg.NameValue(i, "fileName");
filedir += ds_inputForImg.NameValue(i, "fileDir") ;
var condition = "?partList=" + partNoList;
condition += "&fileNameList=" + fileNameList;
condition += "&filedir=" + filedir;
ds_img.DataID = "P_WM_MD_009_IMG_SET.jsp" + condition;
ds_img.Reset();
}
}
</script>
<script language=JavaScript for=ds_img event=OnLoadCompleted(rowcnt)>
alert("완료");
</script>
번호 | 제목 | 닉네임 | 조회 | 등록일 | |
---|---|---|---|---|---|
7449 | 호환성 보기 설정 이후에도 메뉴 깨짐 현상 | ||||
kiarakim |
9319 | 2017-02-15 | |||
7448 | Shift DEMO 사이트 에서 IE11 다운됨 | ||||
정성호 |
9554 | 2017-02-10 | |||
7447 | 엑셀 업로드 속도 문의 | ||||
jokerrain |
9620 | 2016-12-15 | |||
7446 | 차트 질문 | ||||
신현철 |
9583 | 2016-10-04 | |||
7445 | java.io.IOException/java.lang.NullPointerException 발생 | ||||
윤재국 |
10537 | 2016-07-13 | |||
7444 | 호환성 보기 | ||||
kiarakim |
9266 | 2016-07-11 | |||
7443 | 가우스 그리드에 문자입력시 한글/영문 우선순위 변경 | ||||
hthink |
8981 | 2016-04-21 | |||
7442 | 레포트 DFooter영역 이미지 태그 | ||||
FKSS |
9742 | 2016-04-20 | |||
7441 | 좌/우측으로 데이터 이동 | ||||
헐랭이 |
8135 | 2016-04-15 | |||
7440 | 가우스 리포트를 PDF로 저장 가능한가요? | ||||
안순주 |
10618 | 2016-04-12 | |||
7439 | 중간소계 필드 제외 문의 | ||||
김은영2 |
8031 | 2016-04-08 | |||
7438 | 가우스 그리드 범위지정 선택 가능여부 문의 [1] | ||||
hthink |
10398 | 2016-03-29 | |||
7437 | 그리드에 이미지표현 [1] | ||||
홍혜련 |
9487 | 2016-03-23 | |||
7436 | Internet Explorer의 작동이 중지되었습니다. [1] | ||||
김태성2 |
9131 | 2016-03-18 | |||
7435 | 특정 index (row) 삭제 [1] | ||||
c1138 |
9477 | 2016-03-17 | |||
7434 | was교체시 업그레이드 재설치 문의 [1] | ||||
박서영 |
8192 | 2016-03-15 | |||
7433 | 파일 업로드 문의(핸들이 잘못 되었습니다) | ||||
임종훈 |
9289 | 2016-03-15 | |||
7432 | 개발서버 라이센스 갱신 문의 [1] | ||||
정민75 |
10220 | 2016-03-07 | |||
7431 | 문의합니다 [1] | ||||
c1138 |
9612 | 2016-03-07 | |||
7430 | EnterpriseMode 적용이 되지 않습니다. [1] | ||||
동긔나긔 |
10861 | 2016-03-03 | |||
구조가 잘못되어 있습니다.
이미지 데이터셋을 먼저 조회 후 실 데이터를 조회하도록 수정하시기 바랍니다.
기존 : ds_input.reset(); > OnLoadCompleted(ds_input) > ds_img.reset();
수정 : ds_img.reset(); > OnLoadCompleted(ds_img) > ds_input.reset();
감사합니다.