2009-08-19 4 views
2

Я привязываюсь, чтобы прочитать файл, который находится в папке моих документов на Vista. Fiel действительно существует на указанном месте, но все же я получаю следующее сообщение об ошибке при попытке открыть входной поток в файлjava.io.FileNotFoundException: (Permission denied)

java.io.FileNotFoundException: (Permission denied) 
     at java.io.FileInputStream.open(Native Method) 
     at java.io.FileInputStream.<init>(FileInputStream.java:106) 
     at rtran.dao.CustomerDAO.insertCustomer(CustomerDAO.java:29) 
     at rtran.action.AddCustomerAction.execute(AddCustomerAction.java:22) 
     at rtran.controller.Controller.actionPerformed(Controller.java:85) 
     at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) 
     at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) 
     at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) 
     at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) 
     at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) 
     at java.awt.Component.processMouseEvent(Component.java:6041) 
     at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) 
     at java.awt.Component.processEvent(Component.java:5806) 
     at java.awt.Container.processEvent(Container.java:2058) 
     at java.awt.Component.dispatchEventImpl(Component.java:4413) 
     at java.awt.Container.dispatchEventImpl(Container.java:2116) 
     at java.awt.Component.dispatchEvent(Component.java:4243) 
     at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322) 
     at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986) 
     at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916) 
     at java.awt.Container.dispatchEventImpl(Container.java:2102) 
     at java.awt.Window.dispatchEventImpl(Window.java:2440) 
     at java.awt.Component.dispatchEvent(Component.java:4243) 
     at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 
     at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) 
     at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) 
     at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) 
     at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) 
     at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) 
     at java.awt.EventDispatchThread.run(EventDispatchThread.java:121) 

Любые идеи о том, как решить эту проблему ??

Абдул Халик

ответ

1

Возможно ли вы пытаетесь писать только для чтения файла? Из трассировки стека вы вызываете метод вставки.

Кроме того, есть ли у вас разрешения на доступ к файлу? Я имею в виду права на чтение как самого файла, так и его родительского каталога (и его родителя и т. Д.).

+0

Ошибка вызова в FileInputStream, поэтому, если java не пытается открыть с правами записи, хотя FileInputStream будет читать только данные, кажется маловероятным, что этот конкретный вызов завершится неудачно, потому что файл доступен только для чтения/уже имеет дескриптор записи open в теме. – GRB

+0

no Я предоставил полный доступ ко всем пользователям, а также к зарегистрированному пользователю, но до сих пор не может получить доступ к файлу –

0

Кажется, что в java-процессе отсутствует разрешение на чтение файла. Вы problaby, работающий с UAC, и все, что раздражает материал MS в Vista.

Я хотел бы сделать следующее:

  • Проверьте файлы разрешений.
  • Запуск Java-кода «Запуск от имени администратора» -option
  • Выключите UAC и всегда работают все с админ-правами
+1

Раздражает или нет, отключает функции безопасности и продолжает делать все как Администратор, как мы привыкли «в темные века», кажется ценным предложением. С такими советами в умах разработчиков мы никогда не сможем продвигаться вперед, делая системы более безопасными. Безопасность часто неудобна, но то же самое можно сказать и о ремнях безопасности ... –

+0

Почему это имеет какое-либо отношение к Microsoft Windows UAC (в общем) или Vista (в частности)? Ни вопрос, ни трассировка стека кода не дают никаких указаний на базовую операционную систему. –

+0

Извините, вопросник говорит «vista» (sic.). –

0

От 1.6.0_14 Java делает что-то другим способом, чем 1.6.0_13 обращения виртуальные пути (символические ссылки) и Windows Vista используют их в основном для файлов программ, документов и настроек. Возможно, это твоя проблема.

Смежные вопросы