I've been looking at how to bring conversational semantics back to life [1]
(as has Ant who has been worrying about the same problem). It seems that, in
resurrecting conversational semantics, a good place to start is a bit of a
reorg of itest/conversations to:

- make the test names more consistent
- separate the separate tests out a bit more and represent them explicitly
in the JUnit test
- add stateless conversations to the test

I just checked in a starting point for this [2] but have hit a snag. The
very first test case I made has a client component which calls several
operations on an @Conversational service component and it doesn't work. The
failure occurs because the runtime uses the message context from the client
message in order to obtain the conversation id to pass to the service.
However my client is not itself conversational and hence messages arriving
at it have no conversation id.

The existing/old test marks both client and service as conversational. This
is valid but should not be required according to the way that I interpret
the spec.

Is there anyone who can comment on why it is this way? I think we need to
change it to store the conversationId somewhere else in the reference/proxy
structure for a started conversation.

Simon


[1] http://issues.apache.org/jira/browse/TUSCANY-1377
[2]
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/itest/conversational/

Reply via email to