Zum Inhalt springen

Wegginho

Mitglieder
  • Gesamte Inhalte

    26
  • Benutzer seit

  • Letzter Besuch

  1. Hallo lieber FI-Gemeinde, mein Problem ist ein nicht aktualisierendes ListBox-Feld mit Multiselection bzw. nicht aktualisierende Dropdownlist-Felder. Ich habe eine Usercontrol geschrieben, dass auf einer einfachen Website eingesetzt werden soll. Mein Usercontrol: 1. read Sammelt Daten von einem SQL-Server und belegt meine Labels 2. edit Sammelt Daten von einem Sharepoint-Server (Listen) und befüllt damit meine List-Boxen und Dropdown-Lists und macht die Labels unsichtbar, die Edit-Controls sichtbar 3. save Sollte eigentlich alle ausgewählten Werte aus dem gesamten Control einlesen, das heißt jedes einzelne Control (Textboxen funktionieren übrigens) wird ausgelesen und sollte den Wert zurückgeben, den es beinhaltet (UND AUCH ANZEIGT!!), tut es aber nicht! LG
  2. Hey Leute, hab n ganz normales Panel, eine JList und ein Button darin und möchte, sobald das Panel geöffnet wird den Fokus auf die Liste setzen. Bitte um Denkansätze! lg
  3. Wegginho

    Java Silent Crash

    FOR /F "eol=-" %%A in ('find /v "!" %ENV_VAR%') do set %%A Das ist die Lösung, find /vermeiden ;D
  4. Wegginho

    Java Silent Crash

    Der Befehl in der Batch-datei sieht im Moment so aus. Das ist quasi die zum Fehler führende Zeile. Ich habe ehrlich gesagt 0 Ahnung von Batch-Programmierung und werd wohl erstmal ne Weile googlen müssen bevor ich das verstehe. for /f "eol=#" %%l in (%ENV%) do set %%l Falls jemand lehrreiche Informationen zu For-Konstrukten unter Batch hat her damit ;D
  5. Wegginho

    Java Silent Crash

    Hallo Leute, erstmal mein Programm: Process p = pb.start(); OutputStream os = p.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(os); BufferedWriter bw = new BufferedWriter(osw); try { bw.write("CMD-Datei.cmd"); } catch (Exception e) { System.out.println("Fehler!"); } bw.newLine(); bw.write("echo --- get Env ---"); bw.newLine(); bw.write("set"); bw.newLine(); bw.write("ENDE"); bw.newLine(); bw.write("exit"); bw.flush(); InputStream is = p.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader ibr = new BufferedReader(isr); String line; boolean boolLineEnv = false; while ((line = ibr.readLine()) != null) { if(line.contains("set !")) { continue; // [STELLE X] } else if(line.contains("ENDE")) { break; } else { if(line.contains("get Env")) { boolLineEnv = true; } if(boolLineEnv) { alEnvSet.add(line); } //System.out.println(line); } } Soweit so gut. Das funktioniert alles einwandfrei. Nun wird in der "CMD-Datei.cmd" leider eine andere CMD-Datei aufgerufen. Das an sich ist kein Problem, kommen wir aber mal dazu was die zweite Batch-Datei macht: Die Batch Datei ließt eine sogenannte EnvSet-Datei einer bestimmten Firma aus. Wir sind an diese EnvSet-Datei gebunden, sowie an den Kopf der Datei der ca. so aussieht: !---------------------------------------------------------- ! Name der Firma - Umgebungsvariablendatei !---------------------------------------------------------- ! Modus: ... ! Typ: ... ! Zeit: ... !---------------------------------------------------------- Danach folgen dann ein paar Umgebungsvariablen: EnvironmentVariableBeispiel1=C:\Temp EnvironmentVariableBeispiel2=C:\Temp EnvironmentVariableBeispiel3=C:\Temp So, die Batch Datei (No.2) ruft jetzt diese Datei auf und schreibt vor alles was in der Txt-Datei dieser gewissen Firma steht ein Set und schickt es zurück an die Konsole. Wenn ich die Batch-Datei selber unter einer Shell ausführe, passiert nichts, vielleicht wird die ErrorLevel-Variable gesetzt, das kann mir aber egal sein, weil das script weiterläuft. Wenn ich jetzt über Java eine Shell aufmache, und mein Java-Programm quasi alles durchläuft, was die shell auch macht, dann bekomme ich einen silent-Crash ca. an [sTELLE X]. Sobald Stelle X 3 mal durchlaufen wurde, crasht mein Java und es passiert nix mehr. Dann kann ich nur noch Über meine Entwicklungsumgebung (Eclipse) den roten Knopf drücken. Über output sind die letzten 3-4 Outputs: C:\WINDOWS>set !---------------------------------------------------------- C:\WINDOWS>set ! C:\WINDOWS>set !---------------------------------------------------------- C:\WINDOWS>set ! HILFE! Ich weis nicht, wie man mit einem Silent-Crash umgeht, da ich sowas nur aus C++ kenne und C++ bekanntlich öfter vor die Wand fährt bevor so etwas passiert. Hier ist keine Fehlerabfrage mehr möglich, weil das Programm einfach steckenbleibt. ("Stack Overflow"? "Buffer Underrun"?) mfg:(
  6. Also die Lösung war eigentlich ganz einfach. Mit einem ProcessBuilder einen Prozess erzeugen, per Map env= ProcessBuilder.environment() das Environment rausziehen, env.put mit den Environmentvariablen reinsetzen. Dann einen OutputStream (zum schreiben) und einen InputStream (zum lesen) auf die Konsole binden, per output die Befehle an die Konsole schicken und zack alles funktioniert. Hab dazu noch nen anderes Problem, aber da mach ich doch glatt nen neuen Thread auf, weil das fast n anderes Thema ist.
  7. Okay so langsam kommen wir der Lösung näher. Habe mich jetzt grade mit einem Kollegen darüber unterhalten ob das okay ist/wäre. Das geht schon in die Richtung. Wir wollen nur unter Windows und AIX eine shell quasi aufsetzen, über die ein Batch-Programm läuft, dass abhängig von gesetzten Variablen noch andere Variablen hinzufügt. Die komplette Umgebung wird nach der Batch datei mit System.getenv() einmal zwischengespeichert und dann in ein script geschrieben, dass später auch ohne mein Java-Tool funktioniert. Also um das ganze nochmal zu erläutern. gewünscht wäre: [1] ich starte das Java programm [B][2] das Java Programm setzt das Environment [3] eine Batch Datei wird gestartet, die das Environment anreichert [4] das Java Programm ließt alle Variablen aus[/B] [5] die shell wird geschlossen [6] das Java Programm startet eine selbst erzeugte Datei .... Bei 2-4 liegt also der Hase begraben. Ich habe bisher halt schon so einiges ausprobiert. Ich möchte auch kein fertig ausprogrammiertes Ding hier haben, sondern nur den Ansatz, bzw. die Denkweise verstehen die man dafür braucht. mfg
  8. Dann hätten wir ja den doppelten Pflegeaufwand für ein Programm, dass nur dafür da ist andere Programme zu starten. Es geht hier ja nicht nur um die 3 Variablen. Ich rede hier von über 30 verschiedenen Variablen, die auch gerne mal das Limit eines einzigen Aufrufs mit Parametern sprengen können. Gibt es vielleicht eine möglichkeit, ein shell (command) fenster zu öffnen und in dieses einzelne Befehle einfließen zu lassen? Das wäre dann ja quasi schon was ich bräuchte. Problem ist, wie ich vorhin schon erwähnte, dass man mit Runtime.getRuntime().exec() immer wieder eine neue shell öffnet, die unberührt von vorherigen Aufrufen ist.
  9. Ja, du hast das Problem schon richtig erkannt. Danke schonmal für deinen Beitrag. Nur würde ich gerne alles in einer shell abhandeln, da ich das Programm für Windows UND Unix (AIX) mache. Quasi: [1]Benutzer startet über cmd-Programm mein Java Programm [2]Benutzer wählt die gewünschte Einstellung aus [3]Programm startet eine cmd, gibt alle Env-Variablen durch, startet 5 Batch dateien [4]Finales-Programm startet Das Problem ist ja, dass ich wenn ich Runtime.getRuntime().exec("cmd /c set t1=DE") benutze, immer wieder eine neue shell bekomme, ungefähr so als würd ich für jeden Set Befehl ein eigenes Fenster benutzen.
  10. Hallo Leute, nach einem halben Tag googlen gestern und der ziemlich zermürbenden Suche in der Java Hilfe, würd ich einfach gerne mal wissen, wie man mit Hilfe von Java Umgebungsvariablen erzeugt. Hintergrund ist ein Programm innerhalb meiner Firma, das ersetzt werden muss, auf dessen Basis aber Umgebungsvariablen gesetzt wurden, die später in Batch dateien verwendet werden. Beispiel: Umgebungsvariablen: "t1=DE" "t2=location" "t3=department" usw. Dass man mit (Achtung code!) System.getenv() das gesamte Environment auslesen kann ist toll, hat mir auch wirklich weitergeholfen, nur andersherum habe ich bisher von Runtime.getRuntime().exec("cmd /c set t1=DE") bis System.setProperty alles ausprobiert, jedoch hat nichts weitergeholfen. MfG Basti
  11. Hey Leute, war am Freitag bei meiner Prüfung. Lasst euch bloß nicht verrückt machen, die Prüfer sind alle super harmlos und wollen eigentlich nie, dass jemand durchfällt. Ansonsten würden die die Berechnung nicht von 100 aus machen. Jeder hat am Anfang 100 Punkte und bekommt abzüge für kleinere Sachen. Nach meiner schriftlichen 3 bin ich ziemlich froh, noch auf 82 Punkte mit ner mündlichen 1 gekommen zu sein. Mittlerweile sitze ich in Velizy-Villacoublay in Frankreich und lasse die DEVCON09 (Overview - Dassault Systèmes) auf mich einwirken. Man sieht das alles ganz anders als als Azubi ^^. Ich drück allen die Daumen, die s noch nicht geschafft haben, macht euch bloß nicht verrückt. grüße!
  12. Ich glaub es ist sogar noch penibler geregelt. Bei uns in der Prüfung saßen nämlich auch 1-2 Leute die z.B. "nur GhA1" oder "nur GhA2" nochmal machen mussten. Also das, wo sie vorher halt durchgefallen sind schätz ich mal. lg e:
  13. Ich glaub das war die unqualifizierteste Antwort, die ich bisher in diesem Forum gelesen hab. Danke für diesen Beitrag weiteren Mülls im Universum! Natürlich meine ich die ASCII Version von Euro. Was die Liste angeht keine unbedingt schlechte Idee, wenn ich nicht eine Kontonummer als Listenindex nehmen müsste und somit eine Liste, in der über eine Millionen ungenutzter Argumente drinstehen.
  14. Ne, ich mein das ist doch ne relativ einfache Funktionalität oder? Ich möchte ein Programm haben, dass ich starte, 2 Konten erstelle, dann Quasi die Funktionen der Konten-Klassen aufrufen kann und fertig. Ungefähr so im command (also nur nen Consolenprogramm): Uebungen.exe create -> Neue Kontonummer: (automatisch)1000001 Neue Pinnummer: 12345 (kryptisch, mach ich selber) Name des Besitzers: (Eingabe)Max Mustermann Startguthaben: (Eingabe)200€ (Ausgabe:) Konto wurde erstellt ... (Eingabe:) Zugriff -> Bitte geben Sie die Kontonummer ein: (Eingabe)1000001 Bitte geben Sie nun die Pinnummer ein: (Eingabe) 12345 Aktuelles Guthaben: 200€ 1. Abheben 2. Einzahlen 3. Überweisen 4. blabla So, auch wenn's jetzt ne relativ lange Beschreibung geworden ist ... Ich glaub ich habs während meiner Beschreibung schon fast selber verstanden. Vorschläge werden natürlich dankend angenommen. Achja, wie mache ich überhaupt das €-Zeichen (Euro) ? MfG !
  15. Hey Leute, ich grab jetzt einfach nochmal das Thema aus. Ist zwar etwas verändert, hat mit dem Topic aber noch was zu tun . Ich verstehe im Moment nicht ganz, wie ich's hinbekommen soll, mehrere Konten hinzubekommen. Wahrscheinlich weil's grad einfach früh am Morgen ist oder so. Ich will keine Datenbankverbindung oder sowas machen, sondern einfach nur sagen wir 3 Konten machen: "Max Mustermann", 1000001, 200€ "Julia Mustermann", 1000002, 250€ "Oma Mustermann", 1000003, 1000€ Wenn ich jetzt ne einfache Schleife mache, dann überschreibe ich ja jedes Mal mein schönes Konto ^^. Naja, einfache Lösungsansätze sind sehr willkommen, komme nämlich grad ausm Karneval ! *g*:bimei

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...