Я нашел странную аннотацию:
public static @interface WebResult { }
Почему static там? Как они это компилируют? Моя IDE не позволяет использовать такой модификатор!
static
Класс, в котором он содержится, javax.jws.WebResult.
javax.jws.WebResult
Это допустимо (но не обязательно), когда оно вложено в другой класс:
public class Foo { public static @interface Bar { } }
Из спецификации языка Java раздел 8.5.2 :
Интерфейсы-члены всегда неявно статичны.Разрешается, но не обязательно, чтобы объявление интерфейса-члена явно перечисляло статический модификатор.
Если вы видели его в классе верхнего уровня, покажите где Вы нашли это так.