KB Article #180717
FTPSERVER / SFTPSERVER components fail to start after upgrade to SP17
Problem
FTPSERVER / SFTPSERVER components fail to start after upgrade to SP17 and errors like the ones below are displayed in the IS log:
ERROR 2019-12-02 21:35:40,017 FunctionCallAdapter [Start Level Event Dispatcher] - Can not initialize.
de.axway.aim.sftp.server.ComponentException: Partner/objectclass de.axway.ftp.server.common.lib.config.generated.param.is.ftpserver.FtpServerCfgPartner@412455
c/null directory missing.
at de.axway.aim.sftp.server.UpdateHandler.getMappingFactory(UpdateHandler.java:217)
at de.axway.aim.sftp.server.UpdateHandler.updateConnectionConfig(UpdateHandler.java:124)
at de.axway.aim.sftp.server.SftpServerComponent.init(SftpServerComponent.java:204)
at de.axway.ajas.applicationadapter.AbstractFunctionCallAdapter.init(AbstractFunctionCallAdapter.java:85)
at de.axway.ajas.applicationadapter.ApplicationFunctionCallAdapter.<init>(ApplicationFunctionCallAdapter.java:59)
at de.axway.ajas.applicationadapter.ApplicationAdapter.<init>(ApplicationAdapter.java:84)
at de.axway.is.components.binding.sftp.server.lib.AdapterFactory.createApplicationAdapter(AdapterFactory.java:68)
at de.axway.is.components.binding.sftp.server.SftpServerService.startComponent(SftpServerService.java:320)
at de.axway.is.components.binding.sftp.server.SftpServerService.<init>(SftpServerService.java:102)
at de.axway.is.components.binding.sftp.server.SftpServerService.<init>(SftpServerService.java:79)
at de.axway.is.components.binding.sftp.server.ServiceActivatorImpl.doStart(ServiceActivatorImpl.java:23)
at de.axway.is.base.api.service.ServiceActivator.start(ServiceActivator.java:118)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:374)
at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1067)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:561)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:546)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:459)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:440)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:227)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:337)
ERROR 2019-12-02 21:35:40,017 ServiceActivator [Start Level Event Dispatcher] - Error while starting bundle: null
java.lang.NullPointerException
at de.axway.is.components.binding.sftp.server.SftpServerService.startComponent(SftpServerService.java:328)
at de.axway.is.components.binding.sftp.server.SftpServerService.<init>(SftpServerService.java:102)
at de.axway.is.components.binding.sftp.server.SftpServerService.<init>(SftpServerService.java:79)
at de.axway.is.components.binding.sftp.server.ServiceActivatorImpl.doStart(ServiceActivatorImpl.java:23)
at de.axway.is.base.api.service.ServiceActivator.start(ServiceActivator.java:118)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:374)
at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1067)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:561)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:546)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:459)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:440)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:227)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:337)
Resolution
The misbehavior will be observed upon FTPSERVER / SFTPSERVER component startup if the ftp_server.cfg config file contains OBJECTCLASS entries with no DIRECTORY configured.
Below is an example of OK versus NOT OK configuration:

To recover, the configuration from ftp_server.cfg config file will need to be updated, saved and activated. Also a restart of the FTPSERVER / SFTPSERVER components could be needed in order to restore the service.