[
https://jira.jboss.org/jira/browse/JBESB-2524?page=com.atlassian.jira.plu...
]
Tom Fennelly commented on JBESB-2524:
-------------------------------------
Thanks Kev, but that wasn't the question ;)
I asked did anybody know what was the intention of capturing the ftpLocalDir setting? Has
anyone an idea why is it being set on the ConfigTree, since I can't see it ever being
used, which is what I think Gearge means by "RemoteGatewayListener ignores local FTP
location"? If it's not being used for anything, then it's just a case of
removing that code perhaps i.e. not even any need to change it to use the System property.
Maybe I'm blind and it is being used somewhere, but if it is I'd expect it to be
a bit more obvious.
RemoteGatewayListener ignores local FTP location
------------------------------------------------
Key: JBESB-2524
URL:
https://jira.jboss.org/jira/browse/JBESB-2524
Project: JBoss ESB
Issue Type: Patch
Security Level: Public(Everyone can see)
Components: Transports
Affects Versions: 4.4
Reporter: George Gastaldi
Priority: Trivial
Fix For: 4.6
The class RemoteGatewayListener does an ugly checking for the temporary directory and
ignores any attempt to define a local directory:
This is the actual code :
..
protected void checkMyParms() throws ConfigurationException, RegistryException,
GatewayException
{
try
{
File temp = File.createTempFile("FTPdown", ".tmp");
temp.delete();
String localDir = temp.getParent();
if (null==localDir)
localDir=new File("").getAbsolutePath();
config.setAttribute(RemoteFileSystem.PARMS_LOCAL_DIR, localDir);
final String remoteDir = config.getAttribute(ListenerTagNames.FILE_INPUT_DIR_TAG) ;
config.setAttribute(RemoteFileSystem.PARMS_REMOTE_DIR, remoteDir);
EPR epr = ListenerUtil.assembleEpr(config);
if (epr instanceof FTPEpr) {
FTPEpr ftpEpr = (FTPEpr) epr;
RemoteFileSystem rfs = RemoteFileSystemFactory.getRemoteFileSystem(ftpEpr, true);
rfs.quit();
} else {
throw new GatewayException("This Gateway only accepts FTP and SFTP.");
}
}
catch (IOException ex)
{
throw new ConfigurationException(ex);
}
catch (RemoteFileSystemException ex)
{
throw new ConfigurationException(ex);
}
}
...
The Listener should check first if a path has been defined before attempting to discover
the local directory.
BTW, the first lines could be replaced by System.getProperty("java.io.tmpdir"),
instead of creating and deleting a file (expensive unnecessary operation).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira