In my investigations into TUSCANY-1341, I'have fixed a few minor
blocking defects (see my updates to the JIRA) and I'm now getting
to the heart of the problem.  I think the right approach is to do
this in a similar way to callbacks over direct local wires, with
the forward call proceeding as normal and a callback proxy being
injected on the service side to make a reverse call back to the
client instance using the same Web services connection thar was
used for the forward call from client to server.  This isn't the
approach used by the current code.

So far I have got this path working as far as the attempt to call
back using the service's proxy.  The code to inject this proxy
isn't working properly yet.

I'm not yet sure how callbacks should be mapped to the protocol
used by the Web services connection.  There need to be standard
mappings for this, or SCA callbacks won't interoperate with
non-SCA Web service endpoints.  I'm hoping Axis2 provides a way
to call back from a server to a client over an already established
connection, but I haven't looked into this in detail yet.

I'm hoping my fix will support callback from both two-way methods
and one-way methods.  (The spec seems to imply that both of these
are valid.)  The two-way case seems harder because the callback
invocation will be sent back on the wire before the forward
invocation has returned its response message.  If it's too hard
to do this, I may back off and only support callbacks from
one-way methods for now.  This seems to present challenges as well,
because I'm not sure whether the connection is guaranteed to
remain active after the one-way call has been made and the server
method is running.

Before I go further down this path, I would welcome any comments
on the above issues and whether my basic approach is sound.

  Simon


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

Reply via email to