Merhaba arkadaşlar.
Ftp kullanmadan sunucuya dosya yükleme yapacağız.
Kullanılan web framework
=Zk Framework
Kullanılan Programlama dili = Java
2 tane kod parçası işimisi
görecektir.
Zk
<?xml version="1.0" encoding="UTF-8"?>
<zk xmlns="http://www.zkoss.org/2005/zul" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.zkoss.org/2005/zul
http://www.zkoss.org/2005/zul/zul.xsd">
<window id="dosyayukleme"
use="DosyaYukleme"
border="none" height="100%" width="100%" >
<hbox>
<button id="upload" label="Dosya
Ekle" onClick="dosyayukleme.upload()"
upload="true"
style="background-color:#f3f3f3">
</button>
</hbox>
</window>
</zk>
Java
public class DosyaYukleme extends Window {
private int sayac=0; //Bu
değişkeni oluşturmamızın nedeni bir dosyayı 2 yuklenmesini engellemektir.
public void upload()
throws Exception {
Button upload = (Button) getFellowIfAny("upload");
upload.addEventListener("onUpload", new EventListener() {
public void onEvent(Event event) throws Exception {
w.setSayac(w.getSayac()+1);
ServletContext context = (ServletContext) Executions
.getCurrent().getDesktop().getWebApp()
.getNativeContext();
String prefix = context.getRealPath("/");
String path = prefix + "\\documents\\";
Media media = ((UploadEvent) event).getMedia();
try {
Files.copy(new File(path +media.getName()),media.getStreamData());
} catch (Exception
e) {
try {
Files.copy(new File(path + media.getName()),null, media.getStringData());
} catch (Exception
e2) {
if(w.getSayac()<2){
File f=new File(path+media.getName());
f.delete();
Messagebox.show("Yükleme
Başarısız");
w.setSayac(2);
}
}
}
}
});
w.setSayac(0);
}
public int getSayac()
{
return sayac;
}
public void setSayac(int sayac)
{
this.sayac = sayac;
}
}
Hiç yorum yok:
Yorum Gönder