[ 
https://issues.apache.org/jira/browse/WSCOMMONS-525?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12839724#action_12839724
 ] 

indika priyantha kumara commented on WSCOMMONS-525:
---------------------------------------------------

Hi Andreas 

I did not have time to check much about JAX-WS.  Just went through the code 
base for a few minute 

Are your referring JAXBDataSource ?. I cannot use that directly...It needs 
jaxws specific things.  For me, the possible way is to write an 
ObjectOMDataSource backed by an object.  I saw a JAXBDSContext reference in the 
JAXBDataSource. If it is a required one, even the ObjectOMDataSource will not 
work. 

If the ObjectOMDataSource is used, then, have to add a check for that in the 
jaxsws-data binding classes as needed.  Even  the ObjectDataSource (what is in 
the given patch) can be used if it is possible to do what I am doing in the JMS 
sender, in the jaxsws- data binding classes too.

In both of above cases, I may have to move either ObjectOMDataSource or 
ObjectDataSource into the AXIOM. 

I am extremely grateful for feedback for identifying the correct way. 

Thanks 
Indika 

> Supporting JMS Object Messages
> ------------------------------
>
>                 Key: WSCOMMONS-525
>                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-525
>             Project: WS-Commons
>          Issue Type: Improvement
>          Components: Transport
>    Affects Versions: Transports 1.0
>            Reporter: indika priyantha kumara
>             Fix For: Transports 1.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 is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to