Pessoal estou tentando fazer um upload para um servidor depois criar uma pasta com endereço mac local dentro do servidor depois copiar o arquivo de texto, lá dentro… alguém poderia da uma dica de como fazer isso ?
package com.corejsf;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.Serializable;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.model.UploadedFile;
/**
*
* @author Ribamar
*/
@ManagedBean(name = "testeMB")
@ViewScoped
public class TesteUploadManagedBean implements Serializable {
private UploadedFile file;
private String fileName = "GrFingerLicenseAgreement.txt";
public UploadedFile getFile() {
return file;
}
public void setFile(UploadedFile file) {
this.file = file;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
//Evento que vai setar o arquivo num espaço temporário pra vc poder tratar ele.
public void handleFileUpload(FileUploadEvent event) {
file = event.getFile();
}
public void importarArq() throws SocketException {
if (file != null) {
fileName = file.getFileName();
//------------------------Lê e cria qualquer formato de arquivo -----------------------------------------
byte[] byteFile = file.getContents();
try {
FileOutputStream fos = new FileOutputStream("\\\\172.29.0.84\\licencas\\"+fileName);
fos.write(byteFile);
fos.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(TesteUploadManagedBean.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(TesteUploadManagedBean.class.getName()).log(Level.SEVERE, null, ex);
}
try {
InetAddress address = InetAddress.getLocalHost();
NetworkInterface ni = NetworkInterface.getByInetAddress(address);
byte[] mac = ni.getHardwareAddress();
for (int i = 0; i < mac.length; i++) {
System.out.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : "");
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (SocketException e) {
e.printStackTrace();
}
//----------------------------------------Lê e cria somente arquivo txt.----------------------------------
// try {
// InputStreamReader streamReader = new InputStreamReader(file.getInputstream());
// BufferedReader reader = new BufferedReader(streamReader);
// FileWriter fileWriter = new FileWriter("C:/Users/Herick/Desktop/"+"teste"+fileName);
// PrintWriter writer = new PrintWriter(fileWriter);
//
// String line = null;
// while ((line = reader.readLine()) != null) {
// writer.println(line);
// }
//
// writer.close();
// fileWriter.close();
// reader.close();
// streamReader.close();
//
// } catch (IOException ex) {
// Logger.getLogger(TesteUploadManagedBean.class.getName()).log(Level.SEVERE, null, ex);
// }
}
}
}
