Search the FirstSpirit Knowledge Base
Hallo,
in scripten logge ich die Ausgaben in einem speziellen ligfile auf meiner lokalen Platte. Bisher hat dies einwandfrei funktioniert. Mit dem Update auf FS4.2.432.43881 bekomme ich nun eine java.security.AccessControlException: access denied (java.io.FilePermission C:\chg_vabt_mev.txt_info.log write) Egal wo ich das Log speichern möchte. Ich habe aber Schreibrechte auf das Verzeichnis.
Ist jemandem das bekannt? Wie kann ich wieder schreiben?
weiter zur Info:
Es kann nicht an den Berechtigungen auf den Speicherort der LogDatei liegen.
Das gleiche Loggingverfahren funktioniert noch unter 4.2.223.40456 unter 4.2.432.43881 aber nicht mehr!
Zum Loggen verwende ich "FileOutputStream" und schreibe dann darein.
bitte mal den komplette Stack (..java.security.AccessControlException.) posten.
Da ist sie:
Caused by: java.security.AccessControlException: access denied (java.io.FilePermission F:\chg_vabt_sfo.txt_info.log write)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkWrite(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at de.sachsen.sab.it.common.Log.Log.<init>(Log.java:43)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at bsh.Reflect.constructObject(Unknown Source)
at bsh.BSHAllocationExpression.constructObject(Unknown Source)
at bsh.BSHAllocationExpression.objectAllocation(Unknown Source)
at bsh.BSHAllocationExpression.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHAssignment.eval(Unknown Source)
at bsh.BSHBlock.evalBlock(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BshMethod.invokeImpl(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bsh.This.invokeMethod(Unknown Source)
at bsh.This.invokeMethod(Unknown Source)
at de.espirit.firstspirit.server.script.BeanshellScriptEngine$BeanshellExecutable.execute(BeanshellScriptEngine.java:111)
Mit Hilfe vom Helpdesk konnte das Problem gelöst werden:
Da die Log-Klasse in einem Modul liegt, muss man bei diesem die Checkbox "Alle Rechte" setzen (über Konfigurieren in der Server- und Projektkonfiguration), dann funktioniert es auch