2012-05-19 1 views
1

Я разрабатываю веб-службу в Java EE с помощью Apache Tomcat, и до сих пор я написал несколько базовых методов на стороне сервера и тестового клиента. Я могу успешно вызывать методы и получать результаты, но каждый раз, когда я вызываю метод, конструктор сервера снова вызывается, и я также не могу изменять переменные экземпляра сервера с помощью установленных методов. Есть ли какой-либо конкретный способ сделать мой сервер работоспособным без использования JAX-WS или EJB @Stateful тегов?Как создать серверы с поддержкой состояния в Java EE без Jax-ws

+1

В общем, создание состояния с использованием состояния сервера - плохая идея. Какова ваша проблема (создание еще одного объекта за запрос не должно быть проблемой)? – home

+0

Ну, веб-служба собирается провести аукцион, чтобы он собирал ставки и их отметки времени со всех клиентов и принимал решение по высокой цене. Каждый клиент будет вызывать метод отправки отправки и будет повторно создавать сервер повторно. – bremmS

+0

Итак, у вас есть несколько сложных шагов инициализации? – home

ответ

4

Это немного неправильное представление здесь. Stateful EJB будет поддерживать сеанс между одним клиентом и сервером, поэтому состояние EJB не будет использоваться для разных клиентов.

В качестве веб-службы JAX-WS вы можете выставлять только статусные и однопользовательские EJB.

Лучшим вариантом является использование базы данных для хранения всех ставок, а когда аукцион закончен, выберите выигрышный.

Если вы хотите использовать файл, он отлично, до тех пор, как вам нравится играть с вопросами, как:

  1. синхронизации доступа к этому файлу из многих клиентов
  2. обработки транзакций чтения и записи
  3. решить проблемы коррупции файла
  4. куча других проблем, которые могут произойти, если вы достаточно повезло

Звучит как много работы, которую можно сделать любым разумным движком базы данных.

Смежные вопросы