Какую версию JSR должен реализовывать контейнер J2EE?
Допустимо ли для контейнера J2EE предоставлять реализацию, которая соответствует общедоступной версии JSR, в отличие от окончательного варианта (или даже предлагаемого окончательного варианта)? Я не уверен в том, как количественно / квалифицировать слово "приемлемый" в этом контексте, но что будет "золотым стандартом" для утверждения, что реализация адекватна? Требуется ли полное соответствие TCK?
Это более или менее связано с разочарованием реализацией JAX-WS 2.0 в пакете компонентов Web Services для IBM WebSphere 6.1 - очевидно, WSDL не генерируются для веб-сервисов JAX-WS, если для них установлена привязка SOAP 1.2, определенная с использованием @BindingType аннотаций. Когда я последний раз проверял спецификацию JAX-WS 2.0, одно из изменений устранило эту двусмысленность (представлено в открытом обзоре в разделе 3.8, но уточнено в предлагаемом окончательном варианте).
2 ответа
К сожалению, правда в том, что "приемлемо" делать то, что "принято" пользователями, и пользователи часто не имеют права голоса по этому вопросу, будучи привязанными к конкретной реализации по той или иной причине.
В частности, WebSphere известен быстрой игрой со спецификациями (например, проблема Google websphere jsp); к чести IBM, они обычно решают эти проблемы рано или поздно (акцент на позже), но это не сильно помогает здесь и сейчас.
Я не уверен в том, как количественно / квалифицировать слово "приемлемый" в этом контексте, но что будет "золотым стандартом" для утверждения, что реализация адекватна? Требуется ли полное соответствие TCK?
Да... как абсолютный минимум. Также следует ожидать соответствия букве и духу спецификации в областях, которые не охвачены TCK.
Но я не уверен, как это вам поможет, если предположить, что вы уже решили использовать какую-то конкретную реализацию J2EE. К сожалению, вы ничего не можете заставить поставщика программного обеспечения соблюдать соответствующие стандарты или конкретные версии стандартов. Максимум, что вы можете сделать, это взять свой бизнес в другом месте.