Troubleshooting
Problem
Java won't run after fresh WebSphere Application server installation. Even running:
>java -version
gives error:
Exception in thread "Attach API initializer" java.lang.ExceptionInInitializerError
at java.lang.J9VMInternals.ensureError(J9VMInternals.java:157)
at java.lang.J9VMInternals.recordInitializationFailure(J9VMInternals.java:146)
at java.nio.file.FileSystems$DefaultFileSystemHolder.getDefaultProvider(FileSystems.java:119)
at java.nio.file.FileSystems$DefaultFileSystemHolder.access$000(FileSystems.java:100)
at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:109)
at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:107)
at java.security.AccessController.doPrivileged(AccessController.java:691)
at java.nio.file.FileSystems$DefaultFileSystemHolder.defaultFileSystem(FileSystems.java:107)
at java.nio.file.FileSystems$DefaultFileSystemHolder.<clinit>(FileSystems.java:101)
at java.nio.file.FileSystems.getDefault(FileSystems.java:187)
at java.nio.file.Paths.get(Paths.java:95)
at openj9.internal.tools.attach.target.IPC.checkOwnerAccessOnly(IPC.java:170)
at openj9.internal.tools.attach.target.TargetDirectory.createMyDirectory(TargetDirectory.java:90)
at openj9.internal.tools.attach.target.AttachHandler.createFiles(AttachHandler.java:199)
at openj9.internal.tools.attach.target.AttachHandler.initialize(AttachHandler.java:296)
at openj9.internal.tools.attach.target.AttachHandler.run(AttachHandler.java:229)
Caused by: java.lang.RuntimeException: default directory must be absolute
at sun.nio.fs.UnixFileSystem.<init>(UnixFileSystem.java:67)
at sun.nio.fs.AixFileSystem.<init>(AixFileSystem.java:55)
at sun.nio.fs.AixFileSystemProvider.newFileSystem(AixFileSystemProvider.java:62)
at sun.nio.fs.AixFileSystemProvider.newFileSystem(AixFileSystemProvider.java:55)
at sun.nio.fs.UnixFileSystemProvider.<init>(UnixFileSystemProvider.java:68)
at sun.nio.fs.AixFileSystemProvider.<init>(AixFileSystemProvider.java:57)
at java.lang.J9VMInternals.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:2108)
at sun.nio.fs.DefaultFileSystemProvider.createProvider(DefaultFileSystemProvider.java:62)
at sun.nio.fs.DefaultFileSystemProvider.create(DefaultFileSystemProvider.java:80)
at sun.nio.fs.DefaultFileSystemProvider.<clinit>(DefaultFileSystemProvider.java:49)
... 14 more
at java.lang.J9VMInternals.ensureError(J9VMInternals.java:157)
at java.lang.J9VMInternals.recordInitializationFailure(J9VMInternals.java:146)
at java.nio.file.FileSystems$DefaultFileSystemHolder.getDefaultProvider(FileSystems.java:119)
at java.nio.file.FileSystems$DefaultFileSystemHolder.access$000(FileSystems.java:100)
at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:109)
at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:107)
at java.security.AccessController.doPrivileged(AccessController.java:691)
at java.nio.file.FileSystems$DefaultFileSystemHolder.defaultFileSystem(FileSystems.java:107)
at java.nio.file.FileSystems$DefaultFileSystemHolder.<clinit>(FileSystems.java:101)
at java.nio.file.FileSystems.getDefault(FileSystems.java:187)
at java.nio.file.Paths.get(Paths.java:95)
at openj9.internal.tools.attach.target.IPC.checkOwnerAccessOnly(IPC.java:170)
at openj9.internal.tools.attach.target.TargetDirectory.createMyDirectory(TargetDirectory.java:90)
at openj9.internal.tools.attach.target.AttachHandler.createFiles(AttachHandler.java:199)
at openj9.internal.tools.attach.target.AttachHandler.initialize(AttachHandler.java:296)
at openj9.internal.tools.attach.target.AttachHandler.run(AttachHandler.java:229)
Caused by: java.lang.RuntimeException: default directory must be absolute
at sun.nio.fs.UnixFileSystem.<init>(UnixFileSystem.java:67)
at sun.nio.fs.AixFileSystem.<init>(AixFileSystem.java:55)
at sun.nio.fs.AixFileSystemProvider.newFileSystem(AixFileSystemProvider.java:62)
at sun.nio.fs.AixFileSystemProvider.newFileSystem(AixFileSystemProvider.java:55)
at sun.nio.fs.UnixFileSystemProvider.<init>(UnixFileSystemProvider.java:68)
at sun.nio.fs.AixFileSystemProvider.<init>(AixFileSystemProvider.java:57)
at java.lang.J9VMInternals.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:2108)
at sun.nio.fs.DefaultFileSystemProvider.createProvider(DefaultFileSystemProvider.java:62)
at sun.nio.fs.DefaultFileSystemProvider.create(DefaultFileSystemProvider.java:80)
at sun.nio.fs.DefaultFileSystemProvider.<clinit>(DefaultFileSystemProvider.java:49)
... 14 more
Symptom
Cannot start WebSphere Application server, not even java by itself. (i.e. via "java -version")
Cause
The error: "java.lang.RuntimeException: default directory must be absolute" is issued because the JVM is unable to determine the absolute path to the application's working directory and that is caused by a permission issue of the application's parent directory.
Diagnosing The Problem
Look for those exceptions:
Exception in thread "Attach API initializer" java.lang.ExceptionInInitializerError
...
Caused by: java.lang.RuntimeException: default directory must be absolute
...
Caused by: java.lang.RuntimeException: default directory must be absolute
...
Resolving The Problem
To resolve the issue go to the application's working directory , i.e. from wherever you ran the "java -version"
(i.e. <wherever you installed WSAS>/jre/bin)
and type
ls -al ./..
If there are no permission problems reported, move to the parent directory (cd .. ) and run the ls -al ./.. again.
Continue moving up the directory tree until you see:
Continue moving up the directory tree until you see:
ls -la ./..
./../No permission
./../No permission
Once you've determined this:
1. unmount the file system
2. Check the permissions of the directory, it should be something like 755, (but it's probably 750) in any case change it to 755
3. mount the file system back
4. Type ls -la ./.. again. You'll know it is fixed when no permission errors occur.
2. Check the permissions of the directory, it should be something like 755, (but it's probably 750) in any case change it to 755
3. mount the file system back
4. Type ls -la ./.. again. You'll know it is fixed when no permission errors occur.
Document Location
Worldwide
[{"Type":"MASTER","Line of Business":{"code":"LOB67","label":"IT Automation \u0026 App Modernization"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"ARM Category":[{"code":"a8m3p000000F7xdAAC","label":"WebSphere Application Server traditional-All Platforms"}],"ARM Case Number":"TS016307578","Platform":[{"code":"PF002","label":"AIX"}],"Version":"All Versions"}]
Historical Number
TS008536183;TS016307578
Was this topic helpful?
Document Information
Modified date:
23 May 2024
UID
ibm17154798