Witam na wstępie dodam ze jestem zielony z javy..
A problem wygląda nastepująco mam dwie klasy Upload odpowiedzialna za upload pliku na serwer
i klasa Filtruj. Ogolnie po uploadzie na serwer chce poddac plik filtracji ale żeby to zrobić muszę mieć nazwę pliku który został wysłany na serwer. Pytanie w jak sposób przesłać tego string do klasy filtruj?
Robie cos takiego w klasie upload
fileName = file.getName();
filtruj fil=new filtruj();
fil.setNazwa(fileName);
w klasie Filtruj
public void setNazwa(String nazwa) {
this.nazwa = nazwa;
}
Duzo tego nie ma dlatego wrzucam caly kod (do tego nie wiem co robie nie tak....)
Klasa upload
<code = java>
public class uploadclass {
private UploadedFile uploadedFile;
private String fileName;
public String submit() {
String prefix = FilenameUtils.getBaseName(uploadedFile.getName());
String suffix = FilenameUtils.getExtension(uploadedFile.getName());
File file = null;
OutputStream output = null;
try {
file = File.createTempFile(prefix , "." + suffix, new File("c:/upload"));
output = new FileOutputStream(file);
IOUtils.copy(uploadedFile.getInputStream(), output);
///////////////////
fileName = file.getName();
filtruj fil=new filtruj();
fil.setNazwa(fileName);
///////////////////
System.out.println(fileName);
} catch (IOException e) {
if (file != null) file.delete();
FacesContext.getCurrentInstance().addMessage("uploadForm", new FacesMessage(
FacesMessage.SEVERITY_ERROR, "File upload failed with I/O error.", null));
e.printStackTrace();
}
finally {
IOUtils.closeQuietly(output);
}
return "success";
}
public UploadedFile getUploadedFile() {
return uploadedFile;
}
public String getFileName() {
return fileName;
}
public void setUploadedFile(UploadedFile uploadedFile) {
this.uploadedFile = uploadedFile;
}
}
Klasa Filtruj
<code = java>
public class filtruj {
private String nazwa;
public String pliknazwa;
public void aaa(){
pliknazwa=getNazwa();
System.out.println(pliknazwa);
}
public void setNazwa(String nazwa) {
this.nazwa = nazwa;
}
public String getNazwa() {
return nazwa;
}
}
oczywiscie po System.out.println(pliknazwa); na konsoli otrzymuje null