1.0.3
This document describes known issues (and possible work-arounds). Each issue mentions the section of the reference documentation that explain the behaviour along with the associated JIRA entry which provides an estimate on when it will be solved. As a rule, the next release Spring Dynamic Modules aims to solve most, if not all of them.
As a side note, it worth pointing out that the issues below are not really bugs but rather improvements.
During our tests, we have encountered a strange cglib behaviour; when trying to proxy java.*
classes
the process fails with a NullPointerException. Further more, the bug cannot be reproduce constantly, depending a lot on the
number of runs and JVM platform used. We believe the cause is a Weak
reference - see
this discussion.
See OSGI-110
Calling getResource()/getResources()
from a Bundle, on the root folder (/
) fails. Currently,
only Equinox and Knopflerfish (2.0.3+) support this behaviour. At the moment of writing this document, Felix provides support for this in the
upcoming 1.1.0.
See OSGI-210
Due to the way OSGi platform deals with OSGi services (it caches the instance and returns it every time), prototypes are not fully supported. Spring-DM publishes a proxy that on each call, delegates back to the target application context for retrieving the instance. While with other beans this works, in case of prototypes, this results in one-instance-per-invocation which is incorrect. Additional functionality needs to be added to fully support prototypes even though, as pointed out, this involves a knowledge between Client/Server regarding the publication contract.
See OSGI-237
Since Spring-DM uses run-time proxies, equality between objects that rely on private field comparison tends to fail. The problem becomes more apparent when dealing with sets that use service rather then service reference equality. Since the proxy does only method interception it does not seem to exist any practical solution at the moment. As a workaround, consider modifying your equality method or relying on the reference equality.
See OSGI-245