파일업로드.... 에러
- 작성자 :
- 정*섭
- 작성일 :
- 2013-03-28 17:47:16
- 조회수 :
- 1,764
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요
표준프레임웍 2.0으로 개발하고 있습니다.
WAS는 제우스, webserver 는 WebtoB를 사용하는데요
파일 업로드 할경우 로그를 찍어보면 file.transferTo에서 오류가 발생해서
다음으로 넘어가지를 않습니다. 뭘 확인해야 될른지요?
도통 알수가 없어서 ... 답변 부탁드려요..
아래는 EgovFileMngUtil.java 내용입니다.
public class EgovFileMngUtil {
public static final int BUFF_SIZE = 2048;
@Resource(name = "propertiesService")
protected EgovPropertyService propertyService;
@Resource(name = "egovFileIdGnrService")
private EgovIdGnrService idgenService;
private static final Logger LOG = Logger.getLogger(EgovFileMngUtil.class.getName());
public List<FileVO> parseFileInf(Map<String, MultipartFile> files, String KeyStr, int fileKeyParam, String atchFileId, String storePath) throws Exception {
int fileKey = fileKeyParam;
String storePathString = "";
String atchFileIdString = "";
if ("".equals(storePath) || storePath == null) {
storePathString = propertyService.getString("Globals.fileStorePath");
} else {
storePathString = propertyService.getString(storePath);
}
if ("".equals(atchFileId) || atchFileId == null) {
atchFileIdString = idgenService.getNextStringId();
} else {
atchFileIdString = atchFileId;
}
File saveFolder = new File(storePathString);
if (!saveFolder.exists() || saveFolder.isFile()) {
saveFolder.mkdirs();
}
Iterator<Entry<String, MultipartFile>> itr = files.entrySet().iterator();
MultipartFile file;
String filePath = "";
List<FileVO> result = new ArrayList<FileVO>();
FileVO fvo;
while (itr.hasNext()) {
Entry<String, MultipartFile> entry = itr.next();
file = entry.getValue();
String orginFileName = file.getOriginalFilename();
// 원 파일명이 없는 경우 처리
if ("".equals(orginFileName)) {
continue;
}
int index = orginFileName.lastIndexOf(".");
String fileExt = orginFileName.substring(index + 1);
String newName = KeyStr + EgovStringUtil.getTimeStamp() + fileKey;
long _size = file.getSize();
if (!"".equals(orginFileName)) {
filePath = storePathString + File.separator + newName;
System.out.println("filePath="+filePath);
로그 : filePath="/rlk/attachment/BBS_201303280534098400"
위의 로그는 잘 찍힙니다.
file.transferTo(new File(filePath));
System.out.println("Success........!!!!!");
표준프레임웍 2.0으로 개발하고 있습니다.
WAS는 제우스, webserver 는 WebtoB를 사용하는데요
파일 업로드 할경우 로그를 찍어보면 file.transferTo에서 오류가 발생해서
다음으로 넘어가지를 않습니다. 뭘 확인해야 될른지요?
도통 알수가 없어서 ... 답변 부탁드려요..
아래는 EgovFileMngUtil.java 내용입니다.
public class EgovFileMngUtil {
public static final int BUFF_SIZE = 2048;
@Resource(name = "propertiesService")
protected EgovPropertyService propertyService;
@Resource(name = "egovFileIdGnrService")
private EgovIdGnrService idgenService;
private static final Logger LOG = Logger.getLogger(EgovFileMngUtil.class.getName());
public List<FileVO> parseFileInf(Map<String, MultipartFile> files, String KeyStr, int fileKeyParam, String atchFileId, String storePath) throws Exception {
int fileKey = fileKeyParam;
String storePathString = "";
String atchFileIdString = "";
if ("".equals(storePath) || storePath == null) {
storePathString = propertyService.getString("Globals.fileStorePath");
} else {
storePathString = propertyService.getString(storePath);
}
if ("".equals(atchFileId) || atchFileId == null) {
atchFileIdString = idgenService.getNextStringId();
} else {
atchFileIdString = atchFileId;
}
File saveFolder = new File(storePathString);
if (!saveFolder.exists() || saveFolder.isFile()) {
saveFolder.mkdirs();
}
Iterator<Entry<String, MultipartFile>> itr = files.entrySet().iterator();
MultipartFile file;
String filePath = "";
List<FileVO> result = new ArrayList<FileVO>();
FileVO fvo;
while (itr.hasNext()) {
Entry<String, MultipartFile> entry = itr.next();
file = entry.getValue();
String orginFileName = file.getOriginalFilename();
// 원 파일명이 없는 경우 처리
if ("".equals(orginFileName)) {
continue;
}
int index = orginFileName.lastIndexOf(".");
String fileExt = orginFileName.substring(index + 1);
String newName = KeyStr + EgovStringUtil.getTimeStamp() + fileKey;
long _size = file.getSize();
if (!"".equals(orginFileName)) {
filePath = storePathString + File.separator + newName;
System.out.println("filePath="+filePath);
로그 : filePath="/rlk/attachment/BBS_201303280534098400"
위의 로그는 잘 찍힙니다.
file.transferTo(new File(filePath));
System.out.println("Success........!!!!!");
A
안녕하세요.. 정규섭님..
파일 생성 권한 문제인 것 같습니다.
대상 디렉토리에 파일 생성 권한이 있으신지 확인해 보시면 되실 것 같습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
파일 생성 권한 문제인 것 같습니다.
대상 디렉토리에 파일 생성 권한이 있으신지 확인해 보시면 되실 것 같습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.