Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
Java-SCA-1.x
-
None
Description
the current Tuscany models convert blank element or attribute into one with the default value during deserialization. This causes issues in tools that use Tuscany models to read and write composite files.
For example,
After going through deserialization and serialization of Tuscany models, the following binding.jms element is changed from
<binding.jms>
<destination name="jms/SCA_JMSSAMPLE_Log_Request" type="queue"/>
<response>
<destination name="jms/SCA_JMSSAMPLE_Log_Response"/>
<connectionFactory name="jms/SCA_JMSSAMPLE_Log_Response_CF"/>
</response>
<tuscany:wireFormat.jmsObject/>
</binding.jms>
to
<binding.jms>
<destination name="jms/SCA_JMSSAMPLE_Log_Request" type="queue"/>
<response>
<destination create="ifnotexist" name="jms/SCA_JMSSAMPLE_Log_Response" type="queue"/>
<connectionFactory create="ifnotexist" name="jms/SCA_JMSSAMPLE_Log_Response_CF"/>
<tuscany:wireFormat.jmsObject wrapSingle="false"/>
</response>
<tuscany:wireFormat.jmsObject wrapSingle="false"/>
</binding.jms>
As you see above, the create attribute, the wrapSingle attribute, and the wireFormat.jmsObject in the response element are added. They don't make any functional harm on the composite but they are confusing to the user because the user didn't have those attributes and elements in the original composite.