-
Bug
-
Resolution: Obsolete
-
Major
-
JBossAS-4.0.4.GA
-
None
-
Linux/Unix
-
Compatibility/Configuration
-
Workaround Exists
-
DeploymentInfo objects are created with file-URLs without previously canonicalizing the file's path.
If the original URL wasn't canonical (e.g. with Linux/Unix symlinks involved), this discrepancy leads to failure of at least EjbUtil's resolution of ejb-link:
The URL to be searched for among DeploymentInfos by the MBeanServer is constructed from the canonicalized path, but the DeploymentInfo which should be found has a
non canonical file URL (i.e. without symlinks resolved).
I have been able to provisionally solve this issue by patching EjbUtil to not invoke
target = Strings.toURL(ourPath);
(which directly or indirectly calls getCanonicalPath()) but a particular code fragment instead.
This kind of solution surely isn't the right one. IMO, as the DeploymentInfo.url field is used as a key to the DeploymentInfo collections, this key should be always unique, i.e. canonicalized.
My suggestion would be to change any DeploymentInfo instantiation AND any search for DeploymentInfo instances to use canonicalized file URLs.