Solved

new File returns false for canRead/canWrite for a shared directory

Posted on 2011-09-16
22
282 Views
Last Modified: 2012-05-12
I am trying to open a shared directory on the network which is otherwise accessible from Windows but when I used JFileChooser and pass new File(directory).canRead and canWrite I always get a false back - anyone know why ?
0
Comment
Question by:abuyusuf35
  • 10
  • 8
  • 4
22 Comments
 
LVL 47

Expert Comment

by:for_yan
ID: 36551054

Are you sure you are running your application as the same user you are checking from windows ?
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551065
I assume you choose a directory with the JFileChooser? Can you post your code?
0
 

Author Comment

by:abuyusuf35
ID: 36551080
if (!new File(directory).canRead() && !new File(directory).canWrite())
{
      JOptionPane.showMessageDialog(this, " The location " + directory
        + " is not accessible ", "Message", JOptionPane.INFORMATION_MESSAGE);
      return;
}
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551095
maybe you need parentheses - embnbedded sapce there after new - will it work?
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551099
The code that gets 'directory' please
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551115
No, parentheses do not matter I checked

But it also returned that I cannot read rtthe file which I in fact can read - the saem issue as you see
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551120
>>maybe you need parentheses - embnbedded sapce there after new - will it work?

You don't need 'new' at all. Because the chooser should already be returning File
0
 

Author Comment

by:abuyusuf35
ID: 36551125
I am checking if the directory is accessible before I move it onto the JFileChooser - all other directories work fine but a shared one on the network doesn't for example \\shared_drive\myfiles

new File() itself returns false
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551128
Please post the code i asked to see
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551133
Actually, I was wrong - it works fine for me
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551137
>>before I move it onto the JFileChooser

What does that mean? I guess i'll find out when you post the code...
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 47

Expert Comment

by:for_yan
ID: 36551140
I think you cannot use UNC

try to map the drive to letter
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551146
There are many limitations with UNC in windows - perhaps when you amp the dricve it will work
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551147
If 'directory' is of type String then you'd need
File directory = new File("\\\\shared_drive\\myfiles");

Open in new window

0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551152

There are many limitations with UNC in windows - perhaps when you map the drive it will work
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551154
>>I think you cannot use UNC

You can (see above)
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551157
But you are not typing them wexplicitly - you are taking them from Chooser ?
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 36551168
>>But you are not typing them wexplicitly - you are taking them from Chooser ?

If you think that, why are you commenting (incorrectly) about UNC?
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36551224
>If you think that, why are you commenting (incorrectly) about UNC?
Those are different matters

But how can you be typing them iof you are getting file form the Chooser?

On some versions of windows systems there are limitations on UNC and it is underneath java
so if something cannot be explained it is better to try it with mapped drive
- I encountered that many times.

Are you saying that you mapped and it still is not workin?
0
 
LVL 47

Accepted Solution

by:
for_yan earned 500 total points
ID: 36551269
And when you are network share domain authetication may be done in different way
When you map drive - it will check your crednetials at that moment

So then when you access file on the shared drive user was already authenticated.
Whereas with UNC it should happen at the moment when it reaches the file.

So especially when you see something which seems related to your privileges it is worth trying
to so it through mapping.

So I'm not "commenting (incorrectly)". I am suggesting the things to check.



0
 

Author Comment

by:abuyusuf35
ID: 36904274
I've requested that this question be closed as follows:

Accepted answer: 0 points for abuyusuf35's comment http:/Q_27312597.html#36551125

for the following reason:

None of the suggestions mentioned worked hence I went with my own solution
0
 

Author Comment

by:abuyusuf35
ID: 36904275
Will accept solution from one of the submitters
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
hash value 2 38
Books that can get me started on JAVA 2 53
Modeling a class in java 5 31
HSSFWorkbook cannot be resolved error 10 15
Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Viewers learn how to read error messages and identify possible mistakes that could cause hours of frustration. Coding is as much about debugging your code as it is about writing it. Define Error Message: Line Numbers: Type of Error: Break Down…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now