@Documented
@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface Remotable
This annotation should be used by users to specify (user-defined) classes that
should be available to remote services (REST, JMS, WS) when using a workbench.
A user will use this annotation on a class that's either part of a kjar or deployment
or on a class that is a dependency of the aforementioned kjar or deployment. When this deployment
is deployed, the workbench will scan the deployment and the dependency tree of the deployment
for classes marked with this annotation.
Classes at the top level in the deployment itself marked with the appropriate JAXB annotations
are always available for use with the remote services (regardless of whether the classes
are annotated with the @Remotable
annotation or not).
However, in the dependency tree of the deployment, only classes marked with this annotation
(and with the appropriate JAXB annotations) will be usable with the workbench's remote services.
The @Remotable annotation is not inherited.