[
https://issues.apache.org/jira/browse/FTPSERVER-447?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Emmanuel Lécharny resolved FTPSERVER-447.
-----------------------------------------
Fix Version/s: 1.1.0
Resolution: Fixed
Fixed a long time ago...
> Bad OSGi exports for FTPServer
> -------------------------------
>
> Key: FTPSERVER-447
> URL: https://issues.apache.org/jira/browse/FTPSERVER-447
> Project: FtpServer
> Issue Type: Bug
> Components: Server
> Affects Versions: 1.0.6
> Reporter: Ioan Eugen Stan
> Priority: Major
> Fix For: 1.1.0
>
>
> Pull request and patch available: https://github.com/apache/ftpserver/pull/1
> I noticed that version 1.0.6 does not work well with OSGi because
> 1. it includes all the classes from ftplet-api
> 2. it does not export them in the manifests headers.
> Detailed problem:
> If you wish to implement your own versions of UserManager or other interfaces
> and use them in OSGi, this requires adding the ftplet-api bundle. This
> results in two versions of the same classes on the classpath. This makes
> custom implementation of Ftpserver interfaces impossible.
> I tried to build my own UserManger and User implementation to authenticate
> against a DB via JPA. I could not do it because I got linkage errors since my
> implementation depended on the ftplet-api interfaces which are loaded in OSGi
> via two separate classloaders: one version from the ftpserver-core bundle
> (but these are private and not exported) and one from ftplet-api.
> <dependency>
> <groupId>org.apache.ftpserver</groupId>
> <artifactId>ftpserver-core</artifactId>
> <version>1.0.6</version>
> </dependency>
> The solution:
> * remove all the custom manifest headers from maven-bundle-plugin - works
> very well on it's own
> * build jar that does not include the ftplet-api classes
> This requires another release to fix in OSGi.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]