Improve company productivity with a Business Account.Sign Up

x
?
Solved

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

Posted on 2011-09-16
22
Medium Priority
?
307 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
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
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
 
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 2000 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 Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

589 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