Is is possible that one of the UTL_FILE_DIR parameters points to an invalid directory. You should make sure that all of the directories can be reached from the database server.

I'm not aware of a maximum number of directories that you can reference with UTL_FILE_DIR.

Also, If you are using 9i a better way to give file acces to programs is to use the CREATE DIRECTORY command and create a directory pointer for every dirctory where you need to give access.