persistence@glassfish.java.net

Re: Idea for optimistic concurrency extension

From: Adam Bien <abien_at_adam-bien.com>
Date: Sun, 13 Aug 2006 15:21:32 +0200

Hi Bill,

Bill Shannon schrieb:
> Wonseok Kim wrote:
>> Hi, Sahoo
>> Thanks for informing me. It's good to know that unknown annotations
>> are ignored.
>> But I'm not sure that unknown annotations can be ignored at compile
>> time. If there is any compiler option to ignore unknown annotations,
>> it would be better.
>
> That's a problem that we still don't know how to solve, although everyone
> would like a solution.
>
>> Anyway I worried too much :-)
>> Now I agree that vendor-specific annotations is good choice for
>> configurations and advanced features.
>
> It's good that vendor-specific annotations can be ignored at runtime.
> Still, if we introduce vendor-specific annotations, we need to make it
> clear that they are not portable.
I think the import like org.glassfish.annotation makes it clrear, that a
certain annotation/extension is not portable.
>
> Vendor-specific annotations for otherwise portable concepts might be a
> good way to prototype annotations that we would want to add to a future
> version of the spec.
...and in case they are good enough -> they could integrated into the
"standard".
>
> Vendor-specific annotations for vendor-specific features fall into two
> categories:
>
> - features that can be safely ignored on other products
A feature of the above category is propably useless :-)
> - features that can't be ignored on other products because the
> application
> won't function correctly without use of the feature.
>
> I wish we had the "ignore at compile time" option for the first kind.
>
> The second kind needs very clear documentation so that people understand
> they're depending on a non-portable feature. As long as we have clear
> documentation, I don't have any problem adding such annotations.
I think the package import is also a kind of documentation. Such
annotations could be also deployed in a separate jar....