si volendo potrei usare VLC o qualcosa del genere, ma dove sarebbe il divertimento ?? 
cmq un pezzo l'ho già fatto.
questo il bean che si connette a carica una lista:
codice:
public class NasFtpBean {
private static final String HOSTNAME = "";
private static final String USER = "";
private static final String PASSWORD = "";
public ArrayList<String> getFiles() {
ArrayList<String> list = new ArrayList<>();
FTPClient ftp = new FTPClient();
try {
ftp.connect(HOSTNAME);
ftp.login(USER, PASSWORD);
ftp.setFileType(FTP.BINARY_FILE_TYPE);
ftp.changeWorkingDirectory("Volume_1");
int reply = ftp.getReplyCode();
if (FTPReply.isPositiveCompletion(reply)) {
FTPFile[] listFiles = ftp.listFiles();
for (FTPFile f : listFiles) {
if (f.isFile()) {
list.add(f.getName());
}
}
}
} catch (IOException ex) {
list.add(ex.getMessage());
} finally {
try {
ftp.logout();
ftp.disconnect();
} catch (IOException ex) {
list.add(ex.getMessage());
}
}
return list;
}
}
forse non formalmente corretto ma funziona (poi magari lo sistemo meglio).
nella pagina:
codice:
<p:dataList value="#{nasFtpBean.files}" var="file" itemType="square">
<h:link outcome="video" value="#{file}">
<f:param name="videoName" value="#{file}" />
</h:link>
</p:dataList>
a questo punto mi manca la visualizzazione del video.
nella pagina video.xhtml prendo il nome:
codice:
<f:metadata>
<f:viewParam name="videoName" value="#{videoBean.videoName}" />
</f:metadata>
#{videoBean.videoName}
e il bean:
codice:
public class VideoBean {
private String videoName;
public String getVideoName() {
return videoName;
}
public void setVideoName(String videoName) {
this.videoName = videoName;
}
}
a questo punto penso di dover aprire una connessione e stream per visualizzare il video giusto?