Re: Is there a BEA Tuxedo equivalence in Java?



> With many - maybe most - applications, you don't
> need to maintain state. But when you do, I prefer stateful
> session beans.

Most applications do maintain a state. But this is done in the
database. If you maintain state in your application server, that state
will be lost if you have to restart the application server. But if you
still want to maintain state in the application server, it is no
problem doing this without EJB.

If you have a state associated to the client session, just put put the
objects in the session object. As a matter of fact, EJB handles session
state very badly. If you need a session state, all beans that need to
access that state need to be stateful beans. The servlet approach is
much better, the serverlet object is stateless, but you can grab the
session object at any time.

> I didn't word this right. How do you rollback a transaction > that
involves multiple web services without a global
> transaction.
The only actor that calls a web service is the client. The server can
never call its own web services. It calls the same methods internally
instead. A web service is just a POJO that are registered as a service.
If one web service need to call another web service, it should call the
physical method on that POJO instead. The interceptor (handler) that
starts and complets transaction are registered with a web service, so
transaction handling will not be done if interal method calls are done.
It is only done when the client calls the server.

If the server wants to call a web service on another server, you need
distributed transactions. But having multiple application servers for a
single application, is bad design. Inter-application collaboration
should be done with asynchronous messages, not synchronous web service
calls.

Fredrik Bertilsson
http://butler.sourceforge.net

.



Relevant Pages

  • Re: How do Large Scale Web Service Applications Maintain Session State?
    ... cache these profiles on the server in order to increase performance. ... which is something different than stateful Web Service classes. ... We do pass a session token as ... Having systems deployed through web services allows clients to access via ...
    (microsoft.public.dotnet.framework.webservices)
  • Re: bind() udp behavior 2.6.8.1
    ... "Transaction ID" in the DNS porttion of the packet. ... > ip:port and from no other server on the net. ... You new session is totally ...
    (Linux-Kernel)
  • Re: Are distributed partitioned views supposed to improve performance?
    ... has their "Session." ... the minute transaction details are pretty much guaranteed to be useless ... The design was to archive data older than 90-days onto a separate server - ... The query takes intolerably long, when a remote query issused to the Live ...
    (microsoft.public.sqlserver.programming)
  • Re: Web Service State
    ... You can enable the ASP.NET session for the web services, but as you said, it ... users store the session state. ... - Store state on the server and uniquely identify each visitor. ... We use windows authentication to authorise users to our web service, ...
    (microsoft.public.dotnet.framework.webservices)
  • Server Side Caching
    ... familiar with server side cache implementation using the IIS Application, ... Session, objects etc. ... implement this for a web service application in the same manner? ... information in the same IIS Application and Session objects on the server? ...
    (microsoft.public.dotnet.framework.webservices)