0
Tapestry 웹 애플리케이션이 있습니다. 나는 아래의 간단한 자바 스크립트를 사용하고, AJAXified 파일 업로드를 구현하기 위해 (나는 태피스트리에 대한 아약스 업로드 솔루션을 기존의 평가,하지만 그들이 일을 얻을 수 없었다) : Ajax 파일 업로드 Tapestry 5.4
var fileSelect = document.getElementById('file-select');
var files = fileSelect.files;
var formData = new FormData();
var file = files[0];
formData.append("file", file, file.name);
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
console.log(xmlhttp.responseText);
}
}
xmlhttp.open("POST", "FileUpload",true);
xmlhttp.send(formData);
}
그리고 는 FileUpload에서
내가 파일을 업로드 할 때 이제@Inject
private Request request;
public Object onActivate() {
String fileName = request.getParameter("file");
String path = "c:\\tapestry_temp";
File file = new File(path, fileName);
if (file.exists()) {
System.out.println("File found");
} else {
System.out.println("File not found");
}
}
....
는, 자바 스크립트가 문제없이 실행되고 는 FileUpload 페이지에서 fileName에는 (남를 올바른 값이 있습니다 페이지, 내가 가진 업로드 된 파일의 e). 그러나 업로드 된 파일에 액세스하는 방법을 모르겠습니다. 저장 위치는 어디입니까?
추신 : AppModule (ContributeApplicationDefaults), 나는 사전에
configuration.add(UploadSymbols.REPOSITORY_LOCATION,"c:\\tapestry_temp");
감사합니다.