Asankha I thought of this because Esper is creating Map messages and I had to create my own mapping from Map to Axiom. So it would make my life easier :-)
Paul On 7/27/07, Asankha C. Perera <[EMAIL PROTECTED]> wrote: > > Paul > > I may be wrong, however, I haven't seen many people actually using JMS Map > messages.. The Axis2 JMS transport thus supports bytes and text messages. So > I would think this is a cool feature, but only few many find it actually > useful... > > asankha > > Paul Fremantle wrote: > One more thought. A number of systems use a java Map message as a core > data type. Especially a Map<String,Object> where Object is actually a > simple type object such as Float, Double, String, Boolean > > In particular JMS supports these. I think it would be valuable to > define this as a core Synapse datatype. For example, it would be cool > to be able to mediate between a JMS Map message and another JMS Map > message, and have a well-defined schema for what the Axiom > representation would look like in Synapse. > > Paul > > On 7/26/07, Paul Fremantle <[EMAIL PROTECTED]> wrote: > > > Hi > > As Synapse is getting more interest I see a number of people looking > to use it and extend it for binary and text content types as well as > XML. > > We already support those from some transports (e.g. JMS) but each > transport defines its own way of handling these things, and so I can't > be sure that a message coming in as binary/jms can go out correctly as > binary/http post. > > So here is what I'd like to do: > > I'd like to have explicit methods: > > OMElement get/setPayload() > DataHandler get/setBytesPayload() > String get/setTextPayload() > boolean isBinary(); > boolean isText(); > int getPayloadType() > > In order to make this work, we should have two well defined QNames - > one for binary and one for text. > > For example binary payload will be in a wrapper element called: > <a:binary > xmlns:a="http://ws.apache.org/commons/axiom/ns/data"> > > And text payload could be in > <a:text > xmlns:a="http://ws.apache.org/commons/axiom/ns/data"> > > So if I setBinaryPayload, basically what happens (under the covers is) > > OMElement el = fac.createOMElement("binary", axNS); > OMText bin = fac.createOMText(dh, true); > el.addChild(bin); > getBody().setFirstChild(el); > > Now I'd be very happy to do this just in Synapse, but it makes much > more sense to do it in Axiom. That would mean everyone using this > (axis2 transports, synapse mediators, etc) would inherit the same > definitions and use the data in a consistent way. Which is the point > of this. > > Paul > > > -- > Paul Fremantle > Co-Founder and VP of Technical Sales, WSO2 > OASIS WS-RX TC Co-chair > > blog: http://pzf.fremantle.org > [EMAIL PROTECTED] > > "Oxygenating the Web Service Platform", www.wso2.com > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] -- Paul Fremantle Co-Founder and VP of Technical Sales, WSO2 OASIS WS-RX TC Co-chair blog: http://pzf.fremantle.org [EMAIL PROTECTED] "Oxygenating the Web Service Platform", www.wso2.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
