Filenames changed to uppercase when opened from IFS

General questions about using TextPad

Moderators: AmigoJack, bbadmin, helios, MudGuard

Post Reply
RedsWinThePennant
Posts: 3
Joined: Mon Sep 22, 2003 6:22 pm

Filenames changed to uppercase when opened from IFS

Post by RedsWinThePennant »

I have .java files on the IFS structure on an AS400. When I open source in TextPad, the filenames are changed to uppercase. They show as mixed case in the TextPad 'open file' dialogue box, but as soon as I open them, the filenames are changed to uppercase. Java is case sensitive, so it causes compile problems. Any ideas?
User avatar
MudGuard
Posts: 1295
Joined: Sun Mar 02, 2003 10:15 pm
Location: Munich, Germany
Contact:

Post by MudGuard »

What happens if you do the same with Notepad (shudder ;-))?
Does it also change the case?
RedsWinThePennant
Posts: 3
Joined: Mon Sep 22, 2003 6:22 pm

Same problem with Notepad

Post by RedsWinThePennant »

It does the same thing in Notepad, the filenames become uppercase. Text in the file is not changed by TextPad or Notepad, just the filenames.
User avatar
MudGuard
Posts: 1295
Joined: Sun Mar 02, 2003 10:15 pm
Location: Munich, Germany
Contact:

Post by MudGuard »

THen it seems to be a problem not of Textpad but of whatever software is used to access files on the AS400...
User avatar
bbadmin
Site Admin
Posts: 1038
Joined: Mon Feb 17, 2003 8:54 pm
Contact:

Post by bbadmin »

MS Windows has a whole heap of baggage to carry around, for backwards compatibility with DOS, so file names have short and long forms, and are case insensitive. In order to preserve the long file name, and its original case, user supplied names must be converted to a canonical form. TextPad does this by calling the Windows API, SHGetPathFromIDList. If a network file system does not correctly implement the back end of that API, problems like this can arise. Your only solution is to obtain a fix from the supplier of that system.

Keith MacDonald
Helios Software Solutions
RedsWinThePennant
Posts: 3
Joined: Mon Sep 22, 2003 6:22 pm

IBM Software Technical Document about his problem

Post by RedsWinThePennant »

It appears to be a combination of how Win98 and the IFS do things, so I'm getting a 2000 upgrade to solve my problem. There is no circumvention for Win98 . Thanks for the help.
==============================================
IBM STD:

NetServer - Case Sensitivity Issues with Windows 98
Problem:
When using Windows 98 and moving files from one IFS location to another over a NetServer drive connection, file names in the new location get created in all upper case. This may cause a problem for some applications (such as Java) which use case sensitive names.
Explanation:
The root of the IFS (and user directories) is case preserving, not case sensitive. This means that if a file is created as aaaaa.aaa it will continue to display on the IFS as aaaaa.aaa. If the file is created as AAAAA.AAA it will continue to display on the IFS as AAAAA.AAA. If the file is created as Aaaaa.AAA it will continue to display on the IFS as Aaaaa.AAA. Regardless of the way the name displays (all lower case, all upper case, or mixed case) it is the same file name. For example, you cannot rename aaaaa.aaa to AAAAA.AAA. If you attempt to do so, you will receive a message saying that this file already exists.
When the Windows 98 client asks for information about the files, it makes the request with the file name in all upper case. On this type of request, the NetServer does not have access to the actual name in the IFS, so it must echo the name provided by the client. Therefore, when this file is copied to a different location, the name gets created as all upper case.
Circumvention:
There is no circumvention when using Windows 98.
This problem does not occur with Windows 95, Windows NT, or Windows 2000 Professional. When using these versions of Windows, new file names will be created correctly. No testing has been done on Windows ME.
Post Reply