I think that pattern corresponds to how the 1st method (createSession(boolean transacted) type works. That is we ignore the acknowledge mode and use the transport.jms.SessionTransacted parameter for creating transacted sessions. Maybe to improve the user experience we can omit the transport.jms.SessionTransacted parameter and use the acknowledge mode for all modes including transacted sessions. WDYT?
On Wed, Jan 3, 2018 at 11:17 AM, Chanika Geeganage <chan...@wso2.com> wrote: > According to the spec, if session transacted, the session should be > committed/ rollback. But in our code we set isTransacted flag to true only > if transport.jms.SessionTransacted is set, but not when the acknowledge > mode is set to SESSION_TRANSACTED, and therefore session commit/rollback > happens only when transport.jms.SessionTransacted is set [1]. Do we have > to change that logic to commit/rollback when the acknowledge mode is set to > SESSION_TRANSACTED also? > > [1] https://github.com/wso2/carbon-mediation/blob/master/ > components/inbound-endpoints/org.wso2.carbon.inbound. > endpoint/src/main/java/org/wso2/carbon/inbound/endpoint/protocol/jms/ > JMSPollingConsumer.java#L236 > > > > > On Wed, Jan 3, 2018 at 11:00 AM, Asanka Abeyweera <asank...@wso2.com> > wrote: > >> Hi Heshitha, >> >> There are two methods we can use to create a transacted session in JMS, >> >> 1. createSession(boolean transacted, int acknowledgeMode)- you can >> set the transacted parameter to true to create a transacted session. >> Acknowledge mode is ignored when the transacted parameter is set to true. >> 2. createSession(int sessionMode) - you can use SESSION_TRANSACTED as >> acknowledge mode to create a transacted session. AFAIK this method is >> only vailable in JMS 2. >> >> You can use either of the methods depending on the JMS version used and >> the behaviuor should be similar. >> >> On Wed, Jan 3, 2018 at 10:06 AM, Heshitha Hettihewa <heshit...@wso2.com> >> wrote: >> >>> Hi, >>> >>> Inside JMS inbound endpoint code base there is a ack mode for >>> SESSION_TRANSACTED [1] as well as transport.jms.SessionTransacted >>> property[2]. In JMS specs(in 1.0, 1.1 and 2.0) SESSION_TRANSACTED ack mode >>> is not defined. But this is used in Java JMS api [3]. Are these two methods >>> used for the same purpose?. Or is there any difference?. >>> >>> [1]. https://github.com/wso2/carbon-mediation/blob/master/compone >>> nts/inbound-endpoints/org.wso2.carbon.inbound.endpoint/src/ >>> main/java/org/wso2/carbon/inbound/endpoint/protocol/jms/fact >>> ory/JMSConnectionFactory.java#L155 >>> [2]. https://github.com/wso2/carbon-mediation/blob/master/compone >>> nts/inbound-endpoints/org.wso2.carbon.inbound.endpoint/src/ >>> main/java/org/wso2/carbon/inbound/endpoint/protocol/jms/fact >>> ory/JMSConnectionFactory.java#L138 >>> [3]. https://docs.oracle.com/javaee/7/api/javax/jms/Session.html# >>> SESSION_TRANSACTED >>> >>> Thanks, >>> Heshitha. >>> -- >>> Heshitha Hettihewa >>> *Software Engineer* >>> Mobile : +94716866386 >>> <%2B94%20%280%29%20773%20451194> >>> heshit...@wso2.com >>> >> >> >> >> -- >> Asanka Abeyweera >> Associate Technical Lead >> WSO2 Inc. >> >> Phone: +94 712228648 <+94%2071%20222%208648> >> Blog: a5anka.github.io >> >> <https://wso2.com/signature> >> > > > > -- > Best Regards.. > > Chanika Geeganage > +94773522586 <+94%2077%20352%202586> > WSO2, Inc.; http://wso2.com > > -- Asanka Abeyweera Associate Technical Lead WSO2 Inc. Phone: +94 712228648 Blog: a5anka.github.io <https://wso2.com/signature>
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev