Autor Thema: JavaAgent & createNewFile() tut nicht  (Gelesen 6144 mal)

Offline Harald Wendt

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
JavaAgent & createNewFile() tut nicht
« am: 08.07.10 - 13:40:32 »
  Hallo,
ich habe mir einen Javaagenten gestrickt, der aus einer Notesdatenbank Daten sammelt und die sollen dann in ein Textfile geschrieben werden.
Nun habe ich ein Problem damit, das Textfile anzulegen.
Der Agent tut's einfach nicht.
Von Java habe ich recht wenig Ahnung. Beispiele wie's gehen soll, habe ich mir etliche aus dem Netz geholt. Aber nichts davon funzt. :-:
Selbst das simple Nachstehende funktioniert nicht.


import lotus.domino.*;
import java.io.*;
import java.net.* ;

public class CreateFile{
public static void main(String[] args) throws IOException{   
    File f;
      f=new File("J:\\Datei.txt");
      f.createNewFile();
      }
}


Habe ich da was entscheidendes vergessen.
Bin für jeden Tipp dankbar.

Gruß
Harald

s_Old

  • Gast
Re: JavaAgent & createNewFile() tut nicht
« Antwort #1 am: 08.07.10 - 16:43:31 »
Gibt´s denn eine Fehlermeldung? Wie schaut es mit Berechtigungen aus? Ansonsten schau dir doch mal die Klasse Stream an (DesignerHelp unter Java Classes A-Z).

BigWim

  • Gast
Re: JavaAgent & createNewFile() tut nicht
« Antwort #2 am: 08.07.10 - 16:51:34 »
Zitat von: Harald
Bin für jeden Tipp dankbar.
Dann nur mal so am Rande. "Vor kurzem" gab es hier eine kleine Diskussion, dass unter bestimmten Umständen leere Dateien vom OS gelöscht werden.

Bekomme ich a) nicht mehr zusammen und b) habe ich auf die schnelle auch nicht mehr gefunden.

Will sagen: Vielleicht solltest Du mal etwas in die Datei schreiben oder Dir eine Meldung ausgeben lassen im Sinne von "Hallo Welt".

Markus

Offline Harald Wendt

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: JavaAgent & createNewFile() tut nicht
« Antwort #3 am: 08.07.10 - 17:04:50 »
vielen Dank schon mal für Eure Antworten.
Ich weiss jetzt zumindest schon mal, dass es ein Zugriffsproblem ist.

"HTTP JVM: java.lang.SecurityException: Zugriff auf die Datei {0} bzw. diese zu ändern ist nicht zulässig
HTTP JVM: at lotus.notes.AgentSecurityManager.checkWrite(AgentSecurityManager.java:961)"


Die Datei soll ja auf ein Netzlaufwerk geschrieben werden und das ist wohl das Problem.
Kann ich denn überhaupt Netzwerkresssourcen im Agenten zuweisen ?? oder kann ich die dem User (EffectiveUserName) zugeordneten Laufwerke/Verzeichnisse anzeigen lassen ??

Gruß
Harald

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Harald Wendt

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: JavaAgent & createNewFile() tut nicht
« Antwort #5 am: 09.07.10 - 14:03:00 »
OK, danke für den Link, aber da komme ich leider auch nicht weiter mit.
Der Dienst "LotusDominoServer" wird mit "lokaler Administrator" gestartet.
Das ist doch "SYSTEM", oder ??
Zumindest hat "SYSTEM"  rwx-Rechte auf Laufwerk "E".
Dennoch erhalte ich "Zugriff auf die Datei {0} bzw. diese zu ändern ist nicht zulässig"

Gruß
Harald

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: JavaAgent & createNewFile() tut nicht
« Antwort #6 am: 09.07.10 - 14:31:25 »
Der Lokale Administrator/System User hat keine Zugriffsrechte auf Netzwerkressourcen, auch wenn sie auf einen lokalen Laufwerksbuchstaben gemapped sind.
Wenn Du statt auf E: mal auf C:\tmp oder ähnliches schreibst, wirst Du draufkommen, dass dem so ist ;)


Den Agent selber lässt Du aber schon mit erweiterten Rechten laufen, oder?
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Harald Wendt

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: JavaAgent & createNewFile() tut nicht
« Antwort #7 am: 09.07.10 - 15:17:41 »
Danke, der letzte Satz war der entscheidende.   ;)
Mit vollen Rechten war der Agent schon ausgestattet, jetzt habe ich noch den Haken bei "als Web-Benutzer ausführen" gesetzt und mich als Benutzer eingetragen.
Jetzt läuft es und ich kann zumindest auf "E:\" schreiben.

nochmals Danke für die Hilfe und......
jetzt geht's (mit einem Erfolgserlebnis) ab ins Wochenende.  8)

Gruß
Harald

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz