Я разработал веб-сервисы с использованием фреймворка CXF. Мы выставляем все наши методы работы с БД (Service Layer) как методы веб-сервиса. Мы используем Hibernate для настойчивости.
Например, у меня есть один класс Java POJO (для отображения в спящем режиме)
с именем CountryEntity.java со следующим
свойства (ID, имя, ModifiedDate).
Внутри моего сервисного уровня у меня есть два метода с именем
@ WebMethod
public CountryEntity createCountryEntity (CountryEntity countryEntity);
@WebMethod
public CountryEntity getCountryEntityById(long id);
Основываясь на документации JAX-WS, я понимаю, что для этого используется JAXB
привязка данных. Когда пользователь звонит на мой веб-сервис для создания нового
Запись о стране. Я не хочу, чтобы пользователь отправлял значение Id и изменил
Значение даты. Так что я сделал, я аннотировал свойства (идентификатор, модифицированный
date) внутри CountryEntity.java с аннотацией @XmlTransistent.
Так что эта операция работает нормально.
Но когда я вызываю метод веб-службы getCountryEntityById, он возвращается
Объект CountryEntity, но этот объект не имеет значений для идентификатора и
Дата изменения свойства. Я понимаю из-за XMLTransistent
аннотировать значения не получая Marshalling.
Могу ли я изменить свой метод createCountryEntity, принимая такие параметры, как
(String countryName), так что мне не нужно включать XMLTransistent
аннотации в моих классах сущностей. или еще какое-то решение для этого?
Пожалуйста, помогите мне. Заранее спасибо