You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Shuchao Wan <wa...@gmail.com> on 2009/04/30 12:00:24 UTC

Has conformance item 80003 in sca assembly spec been implemented?

In conformance item 80003, it says that "If a remotable service is called
locally or remotely, the SCA container MUST ensure sure that no modification
of input messages by the service or post-invocation modifications to return
messages are seen by the caller. [ASM80003]"

When verifying this conformance item, I found that even the input message
has been changed, nothing happened, the expected error msg or exception does
not show up.

Here is my test case example:
---------------------------
ServiceRemote4Change.java
---------------------------

@Remotable
*

public* *interface* ServiceRemote4Change {

*public* String setAObject1(Object1 a);

}
 -------------------------------
ServiceRemote4ChangeImpl.java
-------------------------------

 @Service(ServiceRemote4Change.*class*)

@AllowsPassByReference
*

public* *class* serviceRemote4ChangeImpl *implements* ServiceRemote4Change {

 *private* Object1 *aObject1* = *null*;

*public* String setAObject1(Object1 a) {

a.aString = "serviceRemote4Change";

aObject1 = a;

*return* "serviceRemote4Change";

}

In the method setAObject1, aObject1 a has been changed, which also affects
the Object1 value provided by the calller. However it can still be invoked
normally. Is there anything wrong with this kind of behaviour? Thanks.