Jump to content

Peeter

Mitglieder
  • Gesamte Inhalte

    400
  • Benutzer seit

  • Letzter Besuch

Beiträge erstellt von Peeter


  1. Also hier wie versprochen den Quellcode der storedProcedure:

    
    BEGIN ATOMIC 
    
    
    SELECT ( ID + 1 ) INTO O_ID FROM TAB2 WITH CS ;
    
    UPDATE TAB1 SET ID = O_ID WITH CS ;
    
    
    END 
    
    

    Also der Code macht folgendes (wenn die TAB2 journalisiert ist!):

    Hol dir die ID aus TAB2 und speichere sie in einer Ausgabevariablen und locke dabei die Tabelle (with CS).

    Dann aktualisiere TAB1 mit der zwischengespeicherten ID.

    "O_ID" ist als Ausgabeparameter der StoredProcedure zu sehen.

    Das wichtigste ist, das "with CS". Damit wird innerhalb einer Transaktion die entsprechende Zeile der Tabelle gelockt...


  2. Komisch... bei mir geht dein CodeSchnipsel.

    Ich nutze Gentoo Linux. Versuch vielleicht mal einen anderen Flavor...

    Es gab auch ne Methode mit der man sich einen Druck-Dialog anzeigen lassen konnte...

    Vielleicht hilft das weiter, wenn du einfach nur einen anderen Drucker auswählst...


  3. die .class Dateien greifen aber solange nicht auf das Jar zu, solange es nicht im Classpath ist... Deswegen musst du es in den Classpath einbinden und das machst du entweder über eine System-Variable (set CLASSPATH=.;mysql-connector-java-3.1.10-bin.jar;weitere.jar) oder halt über den Parameter beim Komando "java"....

    Ansonsten weiß doch deine Applikation nicht WO sie sie Treiber für MySQL zu suchen hat...


  4. Ja... meine Glaskugel funktioniert noch! ;)

    An was hat es denn nun gelegen?

    An der Ordnerstruktur?

    Edit:

    @Perdi

    Von wegen "ordentliche Fehlermeldung" und so...

    Wenn man den geposteten Quellcode sieht UND die Fehlermeldung hat (siehe erster Post), kann man auch ne ordentliche Antwort geben... ;)

    Ich hab auch keine Glaskugel. :rolleyes:

    Gerade bei dem Fehler ist es relativ einfach den eigentlichen Fehler einzugrenzen.


  5. Also mal ganz ruhig hier bleiben... Ist doch alles halb so wild.

    Also mit "getClass().getResource("icors.jpg")" bekommst du die Ressource. Aber auch nur, wenn sie wirklich mitsamt dem kompletten Pfad (also in der richtigen Ordnerstruktur) liegt!

    So, und da dein Package "icors" heißt, muss dein Icon auch im Ordner "icors" (innerhalb des Jars) liegen...

    Ach ja, Java hat ab und zu Probleme mit Leerzeichen. Deshalb hat die Package-Struktur ja auch keine Leerzeichen. ;)

    So, nun pack dein Icon in das Icon.jar in den Ordner "icors" und rufe dein Java-Programm mit "java -cp .;Icors.jar;class-jar-archiv.jar icors.Icors_main" auf...

    Wenn du die Klassen und das Icon in ein und dem selben Jar hast, reicht auch ein "java -cp .;class-jar-archiv-mit-Bildern.jar icors.Icors_main"!

    So, nun probiere das mal...

    Grüße Peet


  6. Also ich hab hier openVPN hinter meinem Router laufen... ;)

    Dazu musst du nur den Port, auf dem VPN läuft nach außen hin freigeben.

    Bei mir ist es Port 5000, standardmäßig sollte es 1194 (oder ähnlich) sein...

    Kannst du sowas wie nen "virtuellen Server" bei deinem Router einrichten?

    Also einen bestimmten Port von außen auf eine IP im inneren Netz weiterleiten...


  7. Mal schnell zusammengeschrieben:


    public final static String toUpperCase(String stringForUpper, String delimiter) {
    StringBuffer buffer = new StringBuffer();
    StringTokenizer stringTokenizer = new StringTokenizer(stringForUpper, delimiter);
    while(stringTokenizer.hasMoreElements()) {
    String token = stringTokenizer.nextToken();
    token = token.replaceFirst(token.substring(0, 1), token.substring(0, 1).toUpperCase());
    buffer.append(token);
    buffer.append(delimiter);
    }
    return buffer.toString();
    }
    [/php]

    oder

    [php]
    public final static String toUpperCaseArray(String stringForUpper, String delimiter) {
    StringBuffer buffer = new StringBuffer();
    String[] strings = stringForUpper.split(delimiter);
    for (int i = 0; i < strings.length; i++) {
    String token = strings[i];
    token = token.replaceFirst(token.substring(0, 1), token.substring(0, 1).toUpperCase());
    buffer.append(token);
    buffer.append(delimiter);
    }
    return buffer.toString();
    }

    Wobei das zweite durch die Array-Benutzung schneller ist!

    Ansonsten gibt es meines Wissens nichts vorgefertigtes...


  8. Erbt der "firmeninterne" Renderer auch von DefaultTableCellRenderer?

    Wenn ja, dann nutze doch die Methode "setToolTipText(String)" so wie weiter oben gezeigt. ;)

    Die ist dann schon mit dabei!

    Oder du schreibst dir trotzdem noch einen eigenen TableHeaderRenderer und erbst aber von dem firmeninternen TableCellRenderer...

    Dann musst du in der Methode "getTableCellRendererComponent" nur folgendes machen:


    public Component getTableCellRendererComponent(JTable table,Object value, boolean isSelected, boolean hasFocus, int row, int column) {
    super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);

    // ToolTipText
    this.setToolTipText("DER ToolTipText");
    return this;
    }
    [/php]


  9. Also soweit ich weiß, musst du dir einen eigenen TableCellRenderer schreiben und die Klasse "DefaultTableCellRenderer" überschreiben. In dieser überschribst du dann die "getTableCellRendererComponent" - Methode und kannst da "setToolTipText" aufrufen. Das ganze funktioniert aber nur, weil der DefaultTableCellRenderer von JLabel erbt...

    Grüße Peet...

    Beispiel:


    public final class MyTableHeaderRenderer extends DefaultTableCellRenderer {
    public MyTableHeaderRenderer() {
    super();
    }

    public Component getTableCellRendererComponent(JTable table,
    Object value, boolean isSelected, boolean hasFocus, int row,
    int column) {
    // ToolTipText
    this.setToolTipText("DER ToolTipText");
    return this;
    }
    }
    [/PHP]


  10. 
    Runtime runtime = Runtime.getRuntime();
    
    Process process = runtime.exec("acrord32.exe PFAD_ZUR_DATEI/DATEI.PDF");
    
    // optional darauf warten das der Acrobat-Reader wieder beendet wird...
    
    process.waitFor();
    
    

    Das ganze geht aber nur. solange der Acrobat-Reader im PATH von Windows ist.

    Außerdem gibst du durch sowas deine Platformunabhängigkeit auf!

Fachinformatiker.de, 2020 SE Internet Services

fidelogo_small.png

if_icon-6-mail-envelope-closed_314900.pnSchicken Sie uns eine Nachricht!

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

Fachinformatiker.de App


Get it on Google Play

Kontakt

Hier werben?
Oder senden Sie eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung