You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2016/01/24 16:34:40 UTC

[jira] [Updated] (AXIS2-5529) Supporting JMS Object Messages

     [ https://issues.apache.org/jira/browse/AXIS2-5529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen updated AXIS2-5529:
-----------------------------------
    Fix Version/s:     (was: 1.7.0)
                   1.7.1

> Supporting JMS Object Messages
> ------------------------------
>
>                 Key: AXIS2-5529
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5529
>             Project: Axis2
>          Issue Type: Improvement
>          Components: JMS transport
>    Affects Versions: Transports 1.0.0
>            Reporter: indika priyantha kumara
>             Fix For: 1.7.1
>
>         Attachments: jms-object-msg.patch
>
>
> I have attached herewith a patch to support Object Messages. What I did is as follows
> 1)   Add a content type rule as follows
>               <parameter name="transport.jms.ContentType"> 
>                       <rules> 
>                        <objectMessage>application/java-serialized-object</objectMessage> 
>                         </rules> 
>                 </parameter> 
> Even there is no content type for Java object messages, I have to specify one due to fact the JMS message receiver validates the content type. Furthermore, if there is content type, we can specify message builder / formatters.
> 2)      When an Object message is received, it is wrapped with an ObjectDataSource and processed by the ObjectMessageBuilder. Within the ObjectMessageBuilder , if the content type is ''application/java-serialized-object" , It just wraps the ObjectDataSource using a DataHandler. The actual object can be accessed directly through the ObjectDataSource.  This is useful for Apache Synapse as a mediator can access the object directly and do whatever it needs. If the content type is something other than ''application/java-serialized-object", selects the correct builder for the content type and build the java object with it by giving object as an XML stream. I here used XML Encoder... I will change it later.
> 3)      When sending Object Messages, within the JMS transport, the object can be directly accessed from the ObjectDataSource.  For other transport, if it is useful, ObjectMessageFormatter can be used.At later, I can improve ObjectDataSource to rerun the representation of Object based on the content type.  E.g. XML, byte, etc... representations
> Any feedback is welcome. I will improve as per any suggestions and update the patch
> Thanks Indika 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org