Zum Inhalt springen

cable545

Mitglieder
  • Gesamte Inhalte

    43
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von cable545

  1. Hallo, läuft die Schlüsselexpansion(AES) bei einem 256 bit Schlüssel anders ab als bei 128 bit bzw. 192 bit? Also anders gefragt, ist der Algorithmus anders? Ich bekomme beim 256 bit Input Schlüssel, nähmlich immer falsche Schlüssel raus. Bei den beiden anderen Schlüsselgrößen funktioniert meine Implementierung einwandfrei.:confused:
  2. Hallo, ich möchte, dass ein Benutzer durch die Eingabe oder Auswahl eines Datensatzes in einer JSP, diesen Datensatz aus einem XML-Dokument löschen kann. Die ganze Löschfunktionalität mit JAXB und der XML Datei hab ich bereits fertig. Nur mein Problem ist, wie ich diesen Datensatz auswählen lassen kann. Also ich gebe zum Beispiel in der JSP alle "User" aus, die sich in dem XML-Dokument befinden. Der Bediener soll nun einen "User" angeben können, welcher dann aus der XML-Datei samt der restlichen Daten zu diesem User, gelöscht wird. Die ganze Auswahl soll wie gesagt in einer JSP statt finden. Und da weiß ich nicht wie ich das machen soll. ich bitte um Hilfe
  3. ok, hier ist meine user.xml <?xml version="1.0" encoding="UTF-8"?> <users xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="user.xsd"> <user> <User-Name>Franz</User-Name> <Passwort>hallo</Passwort> </user> <user> <User-Name>hans</User-Name> <Passwort>hallo</Passwort> </user> </users> und die Ausgabe der Exception? Da kenn ich mich nicht so aus. Aber ich denke mal mit printStackTrace() oder? die wäre aber echt lang... edit: ok der Fehler ist beseitigt. Ich hab den Pfad der XML-Datei falsch angegeben.
  4. Hallo, folgendes Problem. Wenn ich die unmarshal Methode auf mein XML- File ausführe bekomme ich eine JAXBException. Users users = (Users)u.unmarshal(new File("user.xml")); in dem user.xml befindet sich als root-element das element users. dieses enthählt mehrere user elemente welche widerrum die elemente passwort und user-name besitzen. mit dem dazugehörigen xml-schema hab ich mir zwei klassen erstellen lassen(mit JAXB). eine User klasse und eine Users Klasse. gibt es jemanden der mir helfen könnte oder vielleicht einen tip hat wie ich den fehler eingrenzen könnte?
  5. ok, frage hat sich erledigt. hab die servlet-api.jar vom tomcat ins eclipse projekt eingefügt.
  6. hallo, ich hab die version java EE 6 sdk. wenn ich nun in einer klasse import javax.servlet.*; oder ähnliches angebe, bekomme ich die fehlermeldung von eclipse, dass sich das paket nicht einbinden lässt. eigentlich hab ich gedacht, dass in der enterprise edition von java der ganze kram dabei ist. und nun hab ich keinen plan was genau ich wo herunterladen soll damit der kram funzt. ich hoffe auf hilfe:)
  7. ah cool. hab mir die neue eclipse version geladen und gleich ausprobiert. hat alles geklappt. vielen dank
  8. Hallo, ich suche ein JAXB Plugin für Eclipse. Ich möchte aus meinem xml-schema Java Klassen generieren. ich habe bisher nur links für den hier gefunden. "XJC Eclipse plugin" aber die quelle scheint irgendwie tod zu sein. wäre cool wenn mir jemand helfen könnte. gruß marcel
  9. cool vielen dank ich tuh mich noch ein bißchen schwer mit der java doc
  10. Hallo, ich hab mal ne Frage. Gibt es eine Methode in der JTextField Klasse mit welcher ich einstellen kann, dass ich von rechts nach links schreiben kann?
  11. ah ok. ich wollte das was ich aus der datei gelesen hab, unmittelbar ohne umwege in die pipe schreiben. das hab ich glad verplant, dass man für die pipe ebenfalls read() und write() brauch. ich danke dir.
  12. das ich die diskriptoren zu mache war ein fehler von mir. sinn der sache war eigentlich, dass ich MAXLEN bytes aus der datei lese und diese in die pipe schreibe. vom anderen prozess wird soviel wie in der pipe drin steckt gelesen und in die zieldatei geschrieben. wenn beim lesen aus der quelldatei irgendwann weniger als MAXLEN bytes gelesen werden, war dies der letzte datensatz der datei. die do-schleife ist fertig denn der rückgabewert von myread, also len, ist ungleich MAXLEN. das gleiche gilt für den anderen prozess. aber irgendwie schein ich da einen denkfehler zu haben. kann ich selber nicht bestimmen, wieviel ich in die pipe schreibe? oder was ist an meiner idee falsch? EDIT: VIELLEICHT NOCH ZUR INFO: in die zieldatei werden genau 4 bytes geschrieben. hab das schließen der jeweiligen diskriptoren entfernt. das programm scheint auch länger zu laufen als vorher(hab ne zeitmessung drin). aber die menge an daten die geschrieben werden sind die gleichen.
  13. hallo, ich möchte in einem prozess aus einer datei einen datensatz lesen und diesen in eine pipe schreiben. in einem anderen prozess möchte ich aus der pipe diesen datensatz lesen und in eine andere datei schreiben. ich habe also eine pipe erstellt und dieser zwei filediscriptoren zugewiesen. anschließend habe ich mit fork() einen kindprozess erstellt. in dem kindprozess lese ich aus der quelldatei einen bestimmten datensatz und schreibe diesen in die pipe. im elternprozess lese ich den datensatz aus der pipe und schreibe ihn in die zieldatei. hier ist mein bisheriger quellcode. anzumerken ist noch, dass ich die dateizugriffe in ein extra modul ausgelagert habe. # include <stdio.h> # include <sys/wait.h> # include <errno.h> # include <sys/time.h> # include <unistd.h> # include "fileio.h" # define MAXLEN 120 ///////////////MAIN////////////////////////////////////////////// int main(int argc, char **argv) { int pid, tmp, len=0, fd[2]; //ueberpruefe ob das Programm mit zwei Argumenten aufgerufen //wurde if(argc!=3) { printf("Bitte geben Sie die Quell- und Zieldatei an\n"); return -1; } //Quell- und Zieldatei werden geoeffnet tmp=myopen(argv[1],argv[2]); if(tmp==E_OPEN_S) { printf("****************************************\n"); printf("Fehler beim Oeffnen der Quelldatei\n"); printf("****************************************\n"); return -1; } if(tmp==E_OPEN_T) { printf("****************************************\n"); printf("Fehler beim Oeffnen der Zieldatei\n"); printf("****************************************\n"); return -1; } //erzeugt eine Pipe zum Datenaustausch zwischen Eltern- undcKindprozess if(pipe(fd)==-1) { perror("pipe"); return 1; } switch(pid=fork()) { case -1: perror("fork"); return 1; case 0: do { close(fd[0]); if((len=myread(&fd[1],MAXLEN*sizeof(char))) == E_READ) { printf("****************************************\n"); printf("Fehler beim Lesen der Quelldatei\n"); printf("****************************************\n"); return 1; } close(fd[1]); }while(len==MAXLEN); break; default: do { close(fd[1]); if((len=mywrite(&fd[0],sizeof(fd[0]))) == E_WRITE) { printf("****************************************\n"); printf("Fehler beim Schreiben in die Datei\n"); printf("****************************************\n"); return 1; } close(fd[0]); }while(len == MAXLEN); wait(0) break; } return 0; } und hier ist noch der code der ausgelagerten funktionen für die dateizugriffe # include <sys/types.h> # include <sys/stat.h> # include <fcntl.h> # include <unistd.h> # include <stdio.h> #include "fileio.h" static int fd[2]; static int count; int myopen(char quelle[], char ziel[]) { if( (fd[0] = open(quelle,O_RDONLY)) == -1 ) { return E_OPEN_S; } if( (fd[1] = open(ziel,O_WRONLY|O_CREAT,0777)) == -1 ) { return E_OPEN_T; } return 0; } void myclose() { close(fd[0]); close(fd[1]); } int myread(void *buffer, int len) { if((count=read(fd[0], buffer, len)) == -1 ) { return E_READ; } return count; } int mywrite(void *buffer, int len) { if((count=write(fd[1], buffer, len)) == -1 ) { return E_WRITE; } return count; } die dateizugriffe funktionieren alle. das eigentliche problem ist jedoch, dass nur ein kleiner teil in die zieldatei geschrieben wird. hab ich irgendwie einen denkfehler?
  14. hey cool. das problem ist jetzt "vorerst" gelöst. ich danke dir
  15. ok, aber wie soll ich die größe des shared memory segments angeben, so das es der grösse meiner struktur gleicht? ich glaub ich steh aufn schlauch. wie soll der zeiger mein ringpuffer sein? mein ringpuffer sollte eigentlich mehrere elemente haben.
  16. hallo, ich hab ein problem. ich möchte in einem shared memory bereich eine struktur anlegen. diese struktur ist teil eines ringpuffers und soll von einem elternprozess mit daten gefüllt werden und von einem kindprozess ausgelesen werden. zur synchronisation benutze ich die system v semaphore. das eigentliche problem ist jetzt aber die erzeugung des shared memory und dem anbinden der struktur. hier die struktur und der teil mit dem shared memory # define MAXLEN 120 # define ANZEL 30 const int KEY=0xFEDCBA; int shmid; struct ripuElement { char puffer[MAXLEN]; int len; }ripu[ANZEL]; //öffnen eines sharedmemory bereichs mit shmget shmid = shmget(KEY, sizeof(int), IPC_CREAT | 0660); ..... //anbinden des sharedmemory bereichs an ein prozess mit shmat ... = ....shmat(shmid, 0, 0)) hier ist mein problem. die funktion shmat(...) gibt einen void zeiger zurück, welcher auf den ersten byte des bereichs zeigt. was mache ich mit dem. ich muss doch jetzt irgendwie diesen zeiger meinem ringpuffer zuweisen. ich hoffe mir kann jemand helfen.
  17. ok...ich hätte vielleicht mal die schleife mit dem ganzen inhalt laden sollen. hier ist sie.in iDIPswMirror ist immer der letzte wert der dipswitches gespeichert. in der schleife werden erst die aktuellen stellungen der dip-switches gelesen und in iDIPswA gespeichert. anschließend wird in der if-anweisung geprüft ob iDIPswA ungleich iDIPswMirror. wenn ja wird iDIPswMirror aktuallisiert und der status der dipswitches auf ein paar LEDs abgebildet. die LEDs befinden sich ebenfalls auf dem board. unterbrochen wird die schleife momentan durch ein kbhit(). sie soll aber unterbrochen werden wenn der achte dip-switch von low auf high und von high auf low geschaltet wird. int iDIPswA, iDIPswMirror; // Build DIP-Switch Status Mirror outportb (CSCIR, PBDR); // Set IndexPtr. to IndexRegister A8h iDIPswMirror= inportb (CSCDR); // Read IndexRegister A8h enable (); while (kbhit==0) { // Read current DIP-Switch Status. disable (); outportb (CSCIR, PBDR); // IndexPtr.= A8h iDIPswA= inportb (CSCDR); // Read IndexRegister A8h enable (); // Compare current Status with last Status if (iDIPswA != iDIPswMirror) { // DIP-Switch Status change... iDIPswMirror= iDIPswA; printf ("\b\b%02x", iDIPswA & 0xff); // Update Msg. disable (); outportb (CSCIR, PADR); // Update LED´s outportb (CSCDR, iDIPswA & 0xff); enable (); } } ach so. ja die dip schalter werden per hand geschaltet
  18. ja, ich verstehe. in dieser hauptschleife wird die ganze zeit ueberprueft ob sich die stellung der insgesamt acht schalter aendert. wenn sich ein schalter aendert wird der neue wert in eine variable uebernommen. beendet wurde die schleife sonst durch einen kbhit(). nun soll jedoch die schleife durch ein low high low signal vom achten schalter beendet werden. so ist die aufgabenstellung
  19. while(!raus) //grosse hauptschleife { if(dipswitch) { while(1) { if(!dipswitch) { raus=1; break; } } } } is das so ok?
  20. ja genau. aber mein problem ist, in was fuer einem konstrukt ich die flankenaenderung ueberpruefe
  21. ich habe folgendes problem. ich habe eine schleife und möchte diese verlassen, wenn ich von einem board ein low-high-low signal per dip switch bekomme. mir geht es garnicht um die befehle um daten mit dem board auszutauschen. lediglich das verlassen der schleife, wenn der schalter von low auf high und dann von high auf low geschaltet wird, bereitet mir probleme. wäre nett wenn mir jemand helfen kann.
  22. der rechner macht zwei anfragen. einmal in zeile 1 und einmal in zeile 3. in zeile 2 und 4 sind die jeweiligen antworten.und ja, es ist der selbe rechner der die anfrage sendet. der unterschied zwischen beiden anfragen ist aber, dass in zeile 1 die mac-adresse des empfängers noch nicht bekannt ist und in zeile 3 die mac-adresse des empfängers schon bekannt ist. ist die anfrage in zeile drei dann nicht überflüssig?
  23. bei einem timeout wird doch der eintrag gelöscht, oder? in meinem fall befindet sich in der anfrage, nach einer mac-adresse, schon genau diese mac-adresse. siehe zeile drei und vier http://img178.imageshack.us/f/arp.png/

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...