Přeskočit na hlavní obsah

Chyba: IOException – Permission denied

Nedostatečná práva pro zápis do dočasné složky (TEMP), typicky při odesílání e-mailu nebo generování příloh

Autor: Petr Pech

Chybová hláška obsahuje např.:
„java.io.IOException: Permission denied … createTempFile"

👉 To znamená, že ABRA Flexi nemá na serveru oprávnění vytvářet soubory v dočasné složce (TEMP).

Typicky se projeví:

  • při odesílání dokladu e-mailem — Flexi v TEMP složce vytváří dočasný ISDOC soubor, který je následně přílohou e-mailu; bez práv zápisu (nebo při nedostatku místa) odesílání skončí chybou

  • při generování jakékoliv jiné dočasné přílohy (PDF, export sestav apod.)

Ukázka stacktrace:

ERROR AbstractErrorMapper - Server error occurred:
java.io.IOException: Permission denied
  at java.io.UnixFileSystem.createFileExclusively(Native Method)
  at java.io.File.createNewFile(File.java)
  at cz.winstrom.util.WSFileUtil.createTempFile(WSFileUtil.java)
  at cz.winstrom.service.dok.impl.IsDocHelper.generateIsdoc(IsDocHelper.java)
  ...


Příčina:

  • nedostatečná práva k zápisu do TEMP

  • problém se složkou:

    • winstrom-<uživatel>

  • Flexi nedokáže vytvořit dočasný soubor

  • případně nedostatek volného místa ve složce


Jak problém vyřešit:

  • zkontrolujte práva k dočasné složce (TEMP) na serveru

  • ověřte, že uživatel, pod kterým běží Flexi:

    • má právo zápisu

    • má právo vytvářet soubory a složky

  • zkontrolujte / případně upravte práva ke složce:

    • winstrom-<uživatel>

  • ověřte, že ve složce je dostatek volného místa

Poznámka: Týká se primárně on-premise instalací. U cloud zákazníků (*.flexibee.eu) řeší přístup k disku ABRA — eskalace na SELI.

Dostali jste odpověď na svou otázku?