Guten Tag, ich habe ein Problem das ich nicht gelöst kriege.
Ich habe ein Servlet der ließt eine Textdatei mit mehreren Programmen drin,
und ich habe ein Servlet der ließt eine Textdatei mit einzelnen Programmen drin.
Jetzt brauche ich ein Servlet der Verzeichnispfad analysiert und ließt alle Dateien ein,die in diesem Verzeichnis liegen,in
ein FileArray im weiterem Verlauf soll er die Dateien analysieren und weiterleiten zu dem passendem Servlet.
Wie kann man dieses weiterleiten realisieren,mir fällt nichts ein.
Die drei Servlets die ich habe :
FileReader.java -ließt Dateien mit einzelnen Programmen drin:
FilesReader.java-ließt Dateien mit mehreren Programmen drin:
FilesDirReader.java -ließt Dateien die in einem Verzeichnis liegen und soll entscheiden welche Dateien zu welchem Servlet weitergeleitet werden sollen.
ich habe versucht irgendwie ein Formular zu basteln aber bin mir nicht sicher ob es überhaupt geht und wie ich den sende :
Danke für jede Hilfe.
Ich habe ein Servlet der ließt eine Textdatei mit mehreren Programmen drin,
und ich habe ein Servlet der ließt eine Textdatei mit einzelnen Programmen drin.
Jetzt brauche ich ein Servlet der Verzeichnispfad analysiert und ließt alle Dateien ein,die in diesem Verzeichnis liegen,in
ein FileArray im weiterem Verlauf soll er die Dateien analysieren und weiterleiten zu dem passendem Servlet.
Wie kann man dieses weiterleiten realisieren,mir fällt nichts ein.
Die drei Servlets die ich habe :
FileReader.java -ließt Dateien mit einzelnen Programmen drin:
Java:
package daten.einlesen;
@WebServlet("/daten.einlesen/FileReader")
@MultipartConfig
public class FileReader extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
final Part partFile=request.getPart("file");
final Part partProg=request.getPart("progra_name");
final Part partProj=request.getPart("SelectDropDown");
long sizeFile=partFile.getSize();
long sizeProg=partProg.getSize();
long sizeProj=partProj.getSize();
final PrintWriter out=response.getWriter(); ...usw
FilesReader.java-ließt Dateien mit mehreren Programmen drin:
Java:
package daten.einlesen;
@WebServlet("/daten.einlesen/FilesReader")
@MultipartConfig(fileSizeThreshold=1024*1024*2, // 2MB
maxFileSize=1024*1024*10, // 10MB
maxRequestSize=1024*1024*50) // 50MB
public class FilesReader extends HttpServlet{
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest anfrage, HttpServletResponse antwort) throws ServletException, IOException {
final Part partFile=anfrage.getPart("file");
final Part partProj=anfrage.getPart("SelectDropDown");
long sizeFile=partFile.getSize();
long sizeProj=partProj.getSize();
final PrintWriter out=antwort.getWriter(); ...usw
FilesDirReader.java -ließt Dateien die in einem Verzeichnis liegen und soll entscheiden welche Dateien zu welchem Servlet weitergeleitet werden sollen.
Java:
package daten.einlesen;
@WebServlet("/daten.einlesen/FilesDirReader")
@MultipartConfig
public class FilesDirReader extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Connection cn=ComboPoole.getInstance().getConnection();
final Part partProj=request.getPart("SelectDropDown");
long sizeProj=partProj.getSize();
final PrintWriter out=response.getWriter();
final String partFile=request.getParameter("pfad");
File f = new File(partFile);
File fileArray[]=f.listFiles();//
String fileName="";
String fileType="";
String fileNam="";
String file="";
String zeile = "";
String pfad="";
boolean GesamtErgebniss=false;
boolean Ergebniss;
if (f.exists() && sizeProj>0 && fileArray != null) {
if (f.isDirectory() && f.canRead()) {
String[][] Projekte2 = AuswahlAusMYSQL.ErmittlungDerProjekte();
String Projekt_ID=Projekte2[Integer.parseInt(request.getParameter("SelectDropDown"))-1][1];
int projekt_id_int = 0;
projekt_id_int = Integer.parseInt(Projekt_ID);
int programm_id_int = 0;
for(int i=0;i<fileArray.length;i++){
if(fileArray[i].length()>0){
fileName=fileArray[i].getName();
pfad=fileArray[i].getAbsolutePath();
if(fileName.indexOf(".")>0){
fileNam=fileName.substring(0,fileName.lastIndexOf("."));
fileType=fileName.substring(fileName.lastIndexOf(".")+1,fileName.length());
if(fileType.equals("txt")){
FileReader fr = new FileReader(pfad);
BufferedReader bf=new BufferedReader(fr);
while( (zeile = bf.readLine()) != null )
{
file=file.concat(zeile);
//System.out.println(zeile);
file=file.concat(System.getProperty("line.separator"));
}
if(file.indexOf("ADD")>0){ // wenn dass stimmt soll das Programm die im fileArray[i] liegt an FilesReader weitergeleitet werden
//wenn nicht dann an FileReader weiterleiten.
Java:
if(file.indexOf("ADD")>0){
out.print("<FORM ENCTYPE='multipart/form-data' ACTION='/daten.einlesen/FilesReader'"+
"METHOD=POST><input type='hidden' value="+fileArray[i]+" name='file'>"+
"<input type='hidden' name='SelectDropDown' value="+request.getParameter("SelectDropDown")+"> ");
}