On 10/22/07, Walker, Jeff <[EMAIL PROTECTED]> wrote:
> You can definitely create stateful web services. It's just that they are
> very difficult to use. How do you force the client to make the operation
> calls in the expected calling sequence? The client will likely need to
> keep track of the order of the operations it has called. This is
> complicated book-keeping and often the client unable or unwilling to do
> this. Errors become a big issue. What do you do when the 5th call of 7
> expected calls fails? Should you abandon altogether? How do you retry?
> The complexity gets ugly, quickly.
>

Its not that difficult - its actually common and standardized via
WS-SecureConversation. I personally have also used my own UUID scheme
where WS-SecureConversation hasn't been supported on all sides. Coding
up your own scheme takes about 2-3 days depending on the programmer -
I've even seen beginner .net programmers implement UUID token passing
easily.

Calling DB transactions often also requires the right sequence, and
people get by just fine. EJB stateful web services may not be as easy
as a pojo, but people do that often enough too.

In short, anything is easier when its stateless. The whole idea though
behind WS-* is enterprise stuff like asynchronous calls, addressing,
conversations, transactions and reliability. A good case could be made
that its not needed a lot - that's where REST comes in. But if you do
need common usage patterns beyond simple HTTP get and post, there are
seemingly endless WS-* standards that thought of just about everything
- and axis2 implements most of them.

Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to