From sandeshajohnmartin@example.com Tue Jan 03 10:44:58 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 45442 invoked from network); 3 Jan 2006 10:44:56 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Jan 2006 10:44:56 -0000 Received: (qmail 61956 invoked by uid 500); 3 Jan 2006 10:44:55 -0000 Delivered-To: johnmartin@example.com Received: (qmail 61923 invoked by uid 500); 3 Jan 2006 10:44:54 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 61912 invoked by uid 99); 3 Jan 2006 10:44:54 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 02:44:54 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail.gmx.net) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 03 Jan 2006 02:44:53 -0800 Received: (qmail invoked by alias); 03 Jan 2006 10:44:32 -0000 Received: from p54A7243F.dip0.t-ipconnect.de (EHLO [83.161.120.155]) [83.161.120.155] by mail.gmx.net (mp035) with SMTP; 03 Jan 2006 11:44:32 +0100 X-Authenticated: #9133598 Message-ID: <johnmartin@example.com> Date: Tue, 03 Jan 2006 11:44:50 +0100 From: Benjamin Schmeling <johnmartin@example.com> User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: en-us, en MIME-Version: 1.0 To: johnmartin@example.com CC: johnmartin@example.com Subject: Re: Reliability Handler References: <johnmartin@example.com> <johnmartin@example.com> In-Reply-To: <johnmartin@example.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi, I put my handler to the listenerRequestHandlers before the RMHandler and to the responseHandlers before the RMHandler (defined in sandesha properties). Now I am tracking the messages that are exchanged. I wanted to test what happens when message gets lost, so I change the soapmessage to an empty message (for request and currentmessage of the message context) that I got in my Handler. Then I get an ERROR SenderWorker:158 - java.lang.NullPointerException. Thanks, Benjamin >Hi Benjamin, > >Applying a particular handler for a particular method in a Web service is >not possible with Axis1.x however if you use Sandesha2 that is build on >top of Axis2 that has the support for operation specific handlers you can >do it. > >The exception may be generated by axis since sandesha is using axis to >send the messages. What is the exception you are getting? > >Thanks, > >Jaliya > > > > >>Hi, >> >>when I add the ReliabilityHandler to a web service this web service only >>accepts reliable calls. Is it possible to define reliability to single >>methods of that web service? If it is possible how must the web service >>and the handler be configured. >> >>Another question. I need to block particular messages being sent by the >>reliable sender. I tried to realize this by putting my own handler to >>the listenerRequestHandlers and deleting the request message, but this >>did not work because sandesha has an exception. Any advices? >> >>Thanks, >> >>Benjamin >> >>--------------------------------------------------------------------- >>To unsubscribe, e-mail: johnmartin@example.com >>For additional commands, e-mail: johnmartin@example.com >> >> >> >> > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: johnmartin@example.com For additional commands, e-mail: johnmartin@example.com From sandeshajohnmartin@example.com Tue Jan 03 16:53:39 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 43822 invoked from network); 3 Jan 2006 16:53:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Jan 2006 16:53:37 -0000 Received: (qmail 21968 invoked by uid 500); 3 Jan 2006 16:53:34 -0000 Delivered-To: johnmartin@example.com Received: (qmail 21700 invoked by uid 500); 3 Jan 2006 16:53:32 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 21563 invoked by uid 99); 3 Jan 2006 16:53:32 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 08:53:32 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail.gmx.net) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 03 Jan 2006 08:53:31 -0800 Received: (qmail invoked by alias); 03 Jan 2006 16:53:09 -0000 Received: from p54A7243F.dip0.t-ipconnect.de (EHLO [83.161.120.155]) [83.161.120.155] by mail.gmx.net (mp001) with SMTP; 03 Jan 2006 17:53:09 +0100 X-Authenticated: #9133598 Message-ID: <johnmartin@example.com> Date: Tue, 03 Jan 2006 17:53:49 +0100 From: Benjamin Schmeling <johnmartin@example.com> User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Jaliya Ekanayake <johnmartin@example.com> CC: johnmartin@example.com, johnmartin@example.com Subject: Re: Reliability Handler References: <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> In-Reply-To: <johnmartin@example.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N johnmartin@example.com(RMMessageProcessorIdentifier.java:57) at org.apache.sandesha.server.SenderWorker.processResponseMessage(SenderWorker.java:371) at org.apache.sandesha.server.SenderWorker.sendServiceRequest(SenderWorker.java:356) at org.apache.sandesha.server.SenderWorker.sendMessage(SenderWorker.java:213) at org.apache.sandesha.server.SenderWorker.run(SenderWorker.java:144) at java.lang.Thread.run(Thread.java:595) > Hi Benjamin, > > Oops, Please send a stack trace so that we can fix it soon. > > Thanks, > > Jaliya > > On 1/3/06, *Benjamin Schmeling* <johnmartin@example.com > <mailto:johnmartin@example.com>> wrote: > > Hi, > > I put my handler to the listenerRequestHandlers before the > RMHandler and > to the responseHandlers > before the RMHandler (defined in sandesha properties). Now I am > tracking > the messages that are exchanged. I wanted to test what happens when > message gets lost, so I change the soapmessage to an empty message > (for > request and currentmessage of the message context) that I got in my > Handler. Then I get an ERROR SenderWorker:158 - > java.lang.NullPointerException. > > Thanks, > > Benjamin > > >Hi Benjamin, > > > >Applying a particular handler for a particular method in a Web > service is > >not possible with Axis1.x however if you use Sandesha2 that is > build on > >top of Axis2 that has the support for operation specific handlers > you can > >do it. > > > >The exception may be generated by axis since sandesha is using > axis to > >send the messages. What is the exception you are getting? > > > >Thanks, > > > >Jaliya > > > > > > > > > >>Hi, > >> > >>when I add the ReliabilityHandler to a web service this web > service only > >>accepts reliable calls. Is it possible to define reliability to > single > >>methods of that web service? If it is possible how must the web > service > >>and the handler be configured. > >> > >>Another question. I need to block particular messages being sent > by the > >>reliable sender. I tried to realize this by putting my own > handler to > >>the listenerRequestHandlers and deleting the request message, > but this > >>did not work because sandesha has an exception. Any advices? > >> > >>Thanks, > >> > >>Benjamin > >> > >>--------------------------------------------------------------------- > >>To unsubscribe, e-mail: johnmartin@example.com > <mailto:johnmartin@example.com> > >>For additional commands, e-mail: johnmartin@example.com > <mailto:johnmartin@example.com> > >> > >> > >> > >> > > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: johnmartin@example.com > <mailto:johnmartin@example.com> > For additional commands, e-mail: johnmartin@example.com > <mailto:johnmartin@example.com> > > --------------------------------------------------------------------- To unsubscribe, e-mail: johnmartin@example.com For additional commands, e-mail: johnmartin@example.com From sandeshajohnmartin@example.com Wed Jan 04 01:10:25 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 95579 invoked from network); 4 Jan 2006 01:10:25 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 4 Jan 2006 01:10:25 -0000 Received: (qmail 23145 invoked by uid 500); 4 Jan 2006 01:10:21 -0000 Delivered-To: johnmartin@example.com Received: (qmail 22902 invoked by uid 500); 4 Jan 2006 01:10:18 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 22891 invoked by uid 99); 4 Jan 2006 01:10:18 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 17:10:18 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO zproxy.gmail.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 17:10:17 -0800 Received: by zproxy.gmail.com with SMTP id 18so2398382nzp for <johnmartin@example.com>; Tue, 03 Jan 2006 17:09:56 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:from:to:cc:references:subject:date:mime-version:content-type:content-transfer-encoding:x-priority:x-msmail-priority:x-mailer:x-mimeole; b=KbIkMppivQTIHCZxmVsg685Lyfpm8/KBXQbUqDnfdH4Huh2UHR0I/5L7nH1hVi7yUmkYkW/U13Ebz70Ty7xjWkQGC6flKeJc1POcg5eZljQf+hjL938ug3RU2+cKvIOg0MnZGEmHj78fHLZ5fVSiA5in3Ls3iocuoEAzLyGicSY= Received: by 83.161.120.155 with SMTP id q13mr4488598nzq; Tue, 03 Jan 2006 17:09:56 -0800 (PST) Received: from BLRHJEKANAYA1 ( [83.161.120.155]) by mx.gmail.com with ESMTP id j7sm357100nzd.283.161.120.155.09.55; Tue, 03 Jan 2006 17:09:56 -0800 (PST) Message-ID: <johnmartin@example.com> From: "Jaliya Ekanayake" <johnmartin@example.com> To: "Benjamin Schmeling" <johnmartin@example.com> Cc: <johnmartin@example.com> References: <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> Subject: Re: Reliability Handler Date: Tue, 3 Jan 2006 20:09:54 -0500 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi Benjamin, Please send the changes you made to the sandesha.properties in the client and the server side. It seems that the change you have done is between Sandesha 1st handler and the middle handler. So there we expect the RM headers. Thanks, Jaliya ----- Original Message ----- From: "Benjamin Schmeling" <johnmartin@example.com> To: "Jaliya Ekanayake" <johnmartin@example.com> Cc: <johnmartin@example.com>; <johnmartin@example.com> Sent: Tuesday, January 03, 2006 11:53 AM Subject: Re: Reliability Handler > java.lang.NullPointerException > at > org.apache.sandesha.server.RMMessageProcessorIdentifier.getMessageProcessor(RMMessageProcessorIdentifier.java:57) > at > org.apache.sandesha.server.SenderWorker.processResponseMessage(SenderWorker.java:371) > at > org.apache.sandesha.server.SenderWorker.sendServiceRequest(SenderWorker.java:356) > at > org.apache.sandesha.server.SenderWorker.sendMessage(SenderWorker.java:213) > at org.apache.sandesha.server.SenderWorker.run(SenderWorker.java:144) > at java.lang.Thread.run(Thread.java:595) > >> Hi Benjamin, >> Oops, Please send a stack trace so that we can fix it soon. >> Thanks, >> Jaliya >> On 1/3/06, *Benjamin Schmeling* <johnmartin@example.com >> <mailto:johnmartin@example.com>> wrote: >> >> Hi, >> >> I put my handler to the listenerRequestHandlers before the >> RMHandler and >> to the responseHandlers >> before the RMHandler (defined in sandesha properties). Now I am >> tracking >> the messages that are exchanged. I wanted to test what happens when >> message gets lost, so I change the soapmessage to an empty message >> (for >> request and currentmessage of the message context) that I got in my >> Handler. Then I get an ERROR SenderWorker:158 - >> java.lang.NullPointerException. >> >> Thanks, >> >> Benjamin >> >> >Hi Benjamin, >> > >> >Applying a particular handler for a particular method in a Web >> service is >> >not possible with Axis1.x however if you use Sandesha2 that is >> build on >> >top of Axis2 that has the support for operation specific handlers >> you can >> >do it. >> > >> >The exception may be generated by axis since sandesha is using >> axis to >> >send the messages. What is the exception you are getting? >> > >> >Thanks, >> > >> >Jaliya >> > >> > >> > >> > >> >>Hi, >> >> >> >>when I add the ReliabilityHandler to a web service this web >> service only >> >>accepts reliable calls. Is it possible to define reliability to >> single >> >>methods of that web service? If it is possible how must the web >> service >> >>and the handler be configured. >> >> >> >>Another question. I need to block particular messages being sent >> by the >> >>reliable sender. I tried to realize this by putting my own >> handler to >> >>the listenerRequestHandlers and deleting the request message, >> but this >> >>did not work because sandesha has an exception. Any advices? >> >> >> >>Thanks, >> >> >> >>Benjamin >> >> >> >> >>--------------------------------------------------------------------- >> >>To unsubscribe, e-mail: johnmartin@example.com >> <mailto:johnmartin@example.com> >> >>For additional commands, e-mail: johnmartin@example.com >> <mailto:johnmartin@example.com> >> >> >> >> >> >> >> >> >> > >> > >> > >> > >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: johnmartin@example.com >> <mailto:johnmartin@example.com> >> For additional commands, e-mail: johnmartin@example.com >> <mailto:johnmartin@example.com> >> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: johnmartin@example.com For additional commands, e-mail: johnmartin@example.com From sandeshajohnmartin@example.com Wed Jan 04 02:31:00 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 24685 invoked from network); 4 Jan 2006 02:30:59 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 4 Jan 2006 02:30:59 -0000 Received: (qmail 72742 invoked by uid 500); 4 Jan 2006 02:30:55 -0000 Delivered-To: johnmartin@example.com Received: (qmail 72360 invoked by uid 500); 4 Jan 2006 02:30:53 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 72344 invoked by uid 99); 4 Jan 2006 02:30:53 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 18:30:53 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO xproxy.gmail.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 18:30:52 -0800 Received: by xproxy.gmail.com with SMTP id t16so1694374wxc for <johnmartin@example.com>; Tue, 03 Jan 2006 18:30:31 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=fUaIToZwxjhRemxF+qz36QW0nToFfd/1Q+kubYwbd3Q8tmR7dtTTFj/a6k5xJO6v0f4jZIOuArW1MbcZ/TV4ZuzQKVK1s8s0gk5GsWt9Y/L64Rcyfg4Z6FXUrO/Czt6gX4dcnf8ZLEyFq1/UpLCjI9zQBTWsfmdOO+y4Rfnujcc= Received: by 83.161.120.155 with SMTP id 12mr27818wxo; Tue, 03 Jan 2006 18:30:31 -0800 (PST) Received: by 83.161.120.155 with HTTP; Tue, 3 Jan 2006 18:30:31 -0800 (PST) Message-ID: <johnmartin@example.com> Date: Wed, 4 Jan 2006 08:30:31 +0600 From: Chamikara Jayalath <johnmartin@example.com> To: johnmartin@example.com, johnmartin@example.com Subject: Re: [Axis2] A persistence module for Axis2 In-Reply-To: <johnmartin@example.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_26131_1331307.1136341831335" References: <johnmartin@example.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_Part_26131_1331307.1136341831335 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi Don, This is nice. We were planning to develop a similar functionality for the R= M Module. If you develop this module we can certainly use it. Some points, Axis2 has a context hierarchy. So messages coming in and going out of the system will have some properties saved in those as well. So you may have to persist some information in other contexts as well (to make sure that the message could be affectively reused later). But initially we can start by saving only the message context. When security module is engaged, it will be the first to eccept incoming requests and verify them. So make sure that the persistent handlers of your module are placed after that. If you try to persist before the security handlers , that may pave the way for a DOS attack. My personal view is that this functionality should be a part of the core axis2 distribution. So that not only RM, but other modules also will be abl= e to use that (e.g. Transaction). So I believe a persistent module should com= e with Axis2 (like addressing). (But may not be engaged by default.) Thanks, Chamikara On 1/3/06, Dong Liu <johnmartin@example.com> wrote: > > Happy new year, folks. > > I am planning to develop a module for persistence the messages and > messaging contexts in and out axis2. I wonder if there is already such > efforts that have been made, or some good reference that I can turn > to. Or any suggestions? > > Thank you, > > Don > ------=_Part_26131_1331307.1136341831335 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi Don,<br> <br> This is nice. We were planning to develop a similar functionality for the RM Module. If you develop this module we can certainly use it. <br> <br> Some points,<br> <br> Axis2 has a context hierarchy. So messages coming in and going out of the system will have some properties saved in those as well. So you may have to persist some information in other contexts as well (to make sure that the message could be affectively reused later). But initially we can start by saving only the message context. <br> <br> When security module is engaged, it will be the first to eccept incoming requests and verify them. So make sure that the persistent handlers of your module are placed after that. If you try to&nbsp; persist before the security handlers , that may pave the way for a DOS attack.<br> <br> My personal view is that this functionality should be a part of the core axis2 distribution. So that not only RM, but other modules also will be able to use that (e.g. Transaction). So I believe a persistent module should come with Axis2 (like addressing). (But may not be engaged by default.)<br> <br> Thanks,<br> Chamikara<br> <br><br><div><span class=3D"gmail_quote">On 1/3/06, <b class=3D"gmail_sende= rname">Dong Liu</b> &lt;<a href=3D"mailto:johnmartin@example.com">edongliu@gmai= l.com</a>&gt; wrote:</span><blockquote class=3D"gmail_quote" style=3D"borde= r-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-le= ft: 1ex;"> Happy new year, folks.<br><br>I am planning to develop a module for persist= ence the messages and<br>messaging contexts in and out axis2. I wonder if t= here is already such<br>efforts that have been made, or some good reference= that I can turn <br>to.&nbsp;&nbsp;Or any suggestions?<br><br>Thank you,<br><br>Don<br></bl= ockquote></div><br> ------=_Part_26131_1331307.1136341831335-- From sandeshajohnmartin@example.com Wed Jan 04 04:20:48 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 75849 invoked from network); 4 Jan 2006 04:20:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 4 Jan 2006 04:20:48 -0000 Received: (qmail 4716 invoked by uid 500); 4 Jan 2006 04:20:47 -0000 Delivered-To: johnmartin@example.com Received: (qmail 4461 invoked by uid 500); 4 Jan 2006 04:20:46 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 4449 invoked by uid 99); 4 Jan 2006 04:20:46 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 20:20:46 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO zproxy.gmail.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Jan 2006 20:20:45 -0800 Received: by zproxy.gmail.com with SMTP id 18so2434655nzp for <johnmartin@example.com>; Tue, 03 Jan 2006 20:20:24 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:from:to:references:subject:date:mime-version:content-type:x-priority:x-msmail-priority:x-mailer:x-mimeole; b=kptOtMuyKprR9TxHseoChDcV6fywF6O3zvkI9hiuUBVGekdJ/U+s5oTGEshrRmJGjkH7ozMCXZCxr9ybPTiaZ0sjfbBIQ9+1TMtIkU1PYb6G7BgzNEhobTeHDjeVElS2HM1YhNDjuPM1aOKBTMCaJ4knO2sA2bXAT+h9K1KMVPk= Received: by 83.161.120.155 with SMTP id m6mr13080667nzm; Tue, 03 Jan 2006 20:20:23 -0800 (PST) Received: from BLRHJEKANAYA1 ( [83.161.120.155]) by mx.gmail.com with ESMTP id 19sm678289nzp.283.161.120.155.20.21; Tue, 03 Jan 2006 20:20:22 -0800 (PST) Message-ID: <johnmartin@example.com> From: "Jaliya Ekanayake" <johnmartin@example.com> To: "Chamikara Jayalath" <johnmartin@example.com>, <johnmartin@example.com>, <johnmartin@example.com> References: <johnmartin@example.com> <johnmartin@example.com> Subject: Re: [Axis2] A persistence module for Axis2 Date: Tue, 3 Jan 2006 23:20:19 -0500 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_000C_01C610BC.43421C60" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_NextPart_000_000C_01C610BC.43421C60 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi Don, It would be very nice if we can have generic persistency layer for axis2 = so that other modules can utilize it. However IMHO if we try to persist a message once the entire content = hierarchy is completed then we may end up with lot of unnecessary work. = What I also feel is if we can save the messages as an when they are = arrive then we only need to save the SOAP content and the transport = specific properties. We used this approach when we develop the initial = version of Sandesha. However when we have the security in place we = should let the security to run first and then we can save the messages = after that.In this case we may need to save some security related = properties as well. I would also like to give some help as well. Thanks, Jaliya ----- Original Message -----=20 From: Chamikara Jayalath=20 To: johnmartin@example.com ; johnmartin@example.com=20 Sent: Tuesday, January 03, 2006 9:30 PM Subject: Re: [Axis2] A persistence module for Axis2 Hi Don, This is nice. We were planning to develop a similar functionality for = the RM Module. If you develop this module we can certainly use it.=20 Some points, Axis2 has a context hierarchy. So messages coming in and going out of = the system will have some properties saved in those as well. So you may = have to persist some information in other contexts as well (to make sure = that the message could be affectively reused later). But initially we = can start by saving only the message context.=20 When security module is engaged, it will be the first to eccept = incoming requests and verify them. So make sure that the persistent = handlers of your module are placed after that. If you try to persist = before the security handlers , that may pave the way for a DOS attack. My personal view is that this functionality should be a part of the = core axis2 distribution. So that not only RM, but other modules also = will be able to use that (e.g. Transaction). So I believe a persistent = module should come with Axis2 (like addressing). (But may not be engaged = by default.) Thanks, Chamikara On 1/3/06, Dong Liu <johnmartin@example.com> wrote: Happy new year, folks. I am planning to develop a module for persistence the messages and messaging contexts in and out axis2. I wonder if there is already = such efforts that have been made, or some good reference that I can turn=20 to. Or any suggestions? Thank you, Don ------=_NextPart_000_000C_01C610BC.43421C60 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=3DContent-Type content=3D"text/html; = charset=3Diso-8859-1"> <META content=3D"MSHTML 6.00.2900.2802" name=3DGENERATOR> <STYLE></STYLE> </HEAD> <BODY bgColor=3D#ffffff> <DIV><FONT face=3DArial size=3D2> <DIV><FONT face=3DArial size=3D2>Hi Don,</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>It would be very nice if we can have = generic=20 persistency layer for axis2 so that other modules can utilize = it.</FONT></DIV> <DIV><FONT face=3DArial size=3D2>However IMHO if we try to persist a = message once=20 the entire content hierarchy is completed then we may end up with lot of = unnecessary work. What I also feel is if we can save the messages as an = when=20 they are arrive then we only need to save the SOAP content and the = transport=20 specific properties. We used this approach when we develop the initial = version=20 of Sandesha. However when we have the security in place we should let = the=20 security to run first and then we can save the messages after that.In = this case=20 we may need to save &nbsp;some security related properties as = well.</FONT></DIV> <DIV>&nbsp;</DIV> <DIV>I would also like to give some help as well.</DIV> <DIV>&nbsp;</DIV> <DIV>Thanks,</DIV> <DIV>&nbsp;</DIV> <DIV>Jaliya</DIV> <DIV>&nbsp;</DIV></FONT></DIV> <BLOCKQUOTE=20 style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; = BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px"> <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV> <DIV=20 style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: = black"><B>From:</B>=20 <A johnmartin@example.com = href=3D"mailto:johnmartin@example.com">Chamikara=20 Jayalath</A> </DIV> <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A = johnmartin@example.com=20 href=3D"mailto:johnmartin@example.com">johnmartin@example.com</A> ; <A = johnmartin@example.com=20 = href=3D"mailto:johnmartin@example.com">johnmartin@example.com</A>= </DIV> <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Tuesday, January 03, 2006 = 9:30=20 PM</DIV> <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> Re: [Axis2] A = persistence module=20 for Axis2</DIV> <DIV><BR></DIV>Hi Don,<BR><BR>This is nice. We were planning to = develop a=20 similar functionality for the RM Module. If you develop this module we = can=20 certainly use it. <BR><BR>Some points,<BR><BR>Axis2 has a context = hierarchy.=20 So messages coming in and going out of the system will have some = properties=20 saved in those as well. So you may have to persist some information in = other=20 contexts as well (to make sure that the message could be affectively = reused=20 later). But initially we can start by saving only the message context. = <BR><BR>When security module is engaged, it will be the first to = eccept=20 incoming requests and verify them. So make sure that the persistent = handlers=20 of your module are placed after that. If you try to&nbsp; persist = before the=20 security handlers , that may pave the way for a DOS attack.<BR><BR>My = personal=20 view is that this functionality should be a part of the core axis2=20 distribution. So that not only RM, but other modules also will be able = to use=20 that (e.g. Transaction). So I believe a persistent module should come = with=20 Axis2 (like addressing). (But may not be engaged by=20 default.)<BR><BR>Thanks,<BR>Chamikara<BR><BR><BR> <DIV><SPAN class=3Dgmail_quote>On 1/3/06, <B = class=3Dgmail_sendername>Dong Liu</B>=20 &lt;<A href=3D"mailto:johnmartin@example.com">johnmartin@example.com</A>&gt;=20 wrote:</SPAN> <BLOCKQUOTE class=3Dgmail_quote=20 style=3D"PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: = rgb(204,204,204) 1px solid">Happy=20 new year, folks.<BR><BR>I am planning to develop a module for = persistence=20 the messages and<BR>messaging contexts in and out axis2. I wonder if = there=20 is already such<BR>efforts that have been made, or some good = reference that=20 I can turn <BR>to.&nbsp;&nbsp;Or any suggestions?<BR><BR>Thank=20 = you,<BR><BR>Don<BR></BLOCKQUOTE></DIV><BR></BLOCKQUOTE></BODY></HTML> ------=_NextPart_000_000C_01C610BC.43421C60-- From sandeshajohnmartin@example.com Thu Jan 05 01:46:05 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 19426 invoked from network); 5 Jan 2006 01:46:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 5 Jan 2006 01:46:05 -0000 Received: (qmail 46839 invoked by uid 500); 5 Jan 2006 01:46:04 -0000 Delivered-To: johnmartin@example.com Received: (qmail 46591 invoked by uid 500); 5 Jan 2006 01:46:03 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 46580 invoked by uid 500); 5 Jan 2006 01:46:02 -0000 Delivered-To: johnmartin@example.com Received: (qmail 46567 invoked by uid 99); 5 Jan 2006 01:46:02 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 04 Jan 2006 17:46:02 -0800 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO minotaur.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 04 Jan 2006 17:46:02 -0800 Received: (qmail 19343 invoked by uid 65534); 5 Jan 2006 01:45:51 -0000 Message-ID: <johnmartin@example.com> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r366052 - /webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java Date: Thu, 05 Jan 2006 01:45:51 -0000 To: johnmartin@example.com From: johnmartin@example.com X-Mailer: svnmailer-1.0.5 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: jaliya Date: Wed Jan 4 17:45:43 2006 New Revision: 366052 URL: http://svn.apache.org/viewcvs?rev=366052&view=rev Log: bug fix Modified: webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java Modified: webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java?rev=366052&r1=366051&r2=366052&view=diff ============================================================================== --- webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java (original) +++ webservices/sandesha/branches/sandesha_1_0/src/org/apache/sandesha/server/RMMessageProcessorIdentifier.java Wed Jan 4 17:45:43 2006 @@ -54,9 +54,12 @@ return new CompositeProcessor(storageManager); } else return new FaultProcessor(storageManager); - } else if (rmHeaders.getSequenceAcknowledgement() != null || - rmHeaders.getSequence().getMessageNumber() != null) { - return new CompositeProcessor(storageManager); + } else if (rmHeaders != null) { + if (rmHeaders.getSequenceAcknowledgement() != null || + rmHeaders.getSequence().getMessageNumber() != null) { + return new CompositeProcessor(storageManager); + } else + return new FaultProcessor(storageManager); } else return new FaultProcessor(storageManager); } --------------------------------------------------------------------- To unsubscribe, e-mail: johnmartin@example.com For additional commands, e-mail: johnmartin@example.com From sandeshajohnmartin@example.com Thu Jan 05 02:04:00 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 29347 invoked from network); 5 Jan 2006 02:03:59 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 5 Jan 2006 02:03:59 -0000 Received: (qmail 61502 invoked by uid 500); 5 Jan 2006 02:03:58 -0000 Delivered-To: johnmartin@example.com Received: (qmail 61458 invoked by uid 500); 5 Jan 2006 02:03:58 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 61447 invoked by uid 99); 5 Jan 2006 02:03:58 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 04 Jan 2006 18:03:58 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of johnmartin@example.com designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO zproxy.gmail.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 04 Jan 2006 18:03:57 -0800 Received: by zproxy.gmail.com with SMTP id 18so2706373nzp for <johnmartin@example.com>; Wed, 04 Jan 2006 18:03:47 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:from:to:references:subject:date:mime-version:content-type:content-transfer-encoding:x-priority:x-msmail-priority:x-mailer:x-mimeole; b=pCoNs3z0pHDggFDE/kr6NM3vWMU18tXMKDKCdQTPmHets4LKu67CaXjXhRWQWl2jkhLwGafX8P6DL4OUP+m1p/fXmh6/lIVV0UH5ECLTAxP8gqIZmuOBRC1sqDNwvMuofXTOHLU156FeAu4SOhoZH/cUA45v2eP7E342wxjp97o= Received: by 83.161.120.155 with SMTP id q13mr6186830nzq; Wed, 04 Jan 2006 18:03:46 -0800 (PST) Received: from BLRHJEKANAYA1 ( [83.161.120.155]) by mx.gmail.com with ESMTP id 6sm2931099nzn.283.161.120.155.03.46; Wed, 04 Jan 2006 18:03:46 -0800 (PST) Message-ID: <johnmartin@example.com> From: "Jaliya Ekanayake" <johnmartin@example.com> To: "Benjamin Schmeling" <johnmartin@example.com>, <johnmartin@example.com> References: <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> <johnmartin@example.com> Subject: Re: Reliability Handler Date: Wed, 4 Jan 2006 21:03:44 -0500 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi, I corrected the NPE. Please get an update of the code. However the way you used to simulate a message loss will generate a fault in Sandesha since it is a message without any content. A better way to test message loss is use SOAP Monitor to redirect messages to somewhere else and start it before the InactivityTimOut is reached with correct url. Thanks, Jaliya ----- Original Message ----- From: "Benjamin Schmeling" <johnmartin@example.com> To: "Jaliya Ekanayake" <johnmartin@example.com> Sent: Wednesday, January 04, 2006 1:08 PM Subject: Re: Reliability Handler > Hi, > > I modified the sandesha .properties as to see in the attached file. > > Thanks, > > Benjamin > >> Hi Benjamin, >> >> Please send the changes you made to the sandesha.properties in the >> client and the server side. It seems that the change you have done is >> between Sandesha 1st handler and the middle handler. So there we >> expect the RM headers. >> >> Thanks, >> >> Jaliya >> ----- Original Message ----- From: "Benjamin Schmeling" >> <johnmartin@example.com> >> To: "Jaliya Ekanayake" <johnmartin@example.com> >> Cc: <johnmartin@example.com>; <johnmartin@example.com> >> Sent: Tuesday, January 03, 2006 11:53 AM >> Subject: Re: Reliability Handler >> >> >>> java.lang.NullPointerException >>> at >>> org.apache.sandesha.server.RMMessageProcessorIdentifier.getMessageProcessor(RMMessageProcessorIdentifier.java:57) >>> >>> at >>> org.apache.sandesha.server.SenderWorker.processResponseMessage(SenderWorker.java:371) >>> >>> at >>> org.apache.sandesha.server.SenderWorker.sendServiceRequest(SenderWorker.java:356) >>> >>> at >>> org.apache.sandesha.server.SenderWorker.sendMessage(SenderWorker.java:213) >>> >>> at org.apache.sandesha.server.SenderWorker.run(SenderWorker.java:144) >>> at java.lang.Thread.run(Thread.java:595) >>> >>>> Hi Benjamin, >>>> Oops, Please send a stack trace so that we can fix it soon. >>>> Thanks, >>>> Jaliya >>>> On 1/3/06, *Benjamin Schmeling* <johnmartin@example.com >>>> <mailto:johnmartin@example.com>> wrote: >>>> >>>> Hi, >>>> >>>> I put my handler to the listenerRequestHandlers before the >>>> RMHandler and >>>> to the responseHandlers >>>> before the RMHandler (defined in sandesha properties). Now I am >>>> tracking >>>> the messages that are exchanged. I wanted to test what happens when >>>> message gets lost, so I change the soapmessage to an empty message >>>> (for >>>> request and currentmessage of the message context) that I got in my >>>> Handler. Then I get an ERROR SenderWorker:158 - >>>> java.lang.NullPointerException. >>>> >>>> Thanks, >>>> >>>> Benjamin >>>> >>>> >Hi Benjamin, >>>> > >>>> >Applying a particular handler for a particular method in a Web >>>> service is >>>> >not possible with Axis1.x however if you use Sandesha2 that is >>>> build on >>>> >top of Axis2 that has the support for operation specific handlers >>>> you can >>>> >do it. >>>> > >>>> >The exception may be generated by axis since sandesha is using >>>> axis to >>>> >send the messages. What is the exception you are getting? >>>> > >>>> >Thanks, >>>> > >>>> >Jaliya >>>> > >>>> > >>>> > >>>> > >>>> >>Hi, >>>> >> >>>> >>when I add the ReliabilityHandler to a web service this web >>>> service only >>>> >>accepts reliable calls. Is it possible to define reliability to >>>> single >>>> >>methods of that web service? If it is possible how must the web >>>> service >>>> >>and the handler be configured. >>>> >> >>>> >>Another question. I need to block particular messages being sent >>>> by the >>>> >>reliable sender. I tried to realize this by putting my own >>>> handler to >>>> >>the listenerRequestHandlers and deleting the request message, >>>> but this >>>> >>did not work because sandesha has an exception. Any advices? >>>> >> >>>> >>Thanks, >>>> >> >>>> >>Benjamin >>>> >> >>>> >>>> >>>> >>--------------------------------------------------------------------- >>>> >>>> >>To unsubscribe, e-mail: johnmartin@example.com >>>> <mailto:johnmartin@example.com> >>>> >>For additional commands, e-mail: johnmartin@example.com >>>> <mailto:johnmartin@example.com> >>>> >> >>>> >> >>>> >> >>>> >> >>>> > >>>> > >>>> > >>>> > >>>> >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: johnmartin@example.com >>>> <mailto:johnmartin@example.com> >>>> For additional commands, e-mail: johnmartin@example.com >>>> <mailto:johnmartin@example.com> >>>> >>>> >>> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: johnmartin@example.com >> For additional commands, e-mail: johnmartin@example.com >> >> > > -------------------------------------------------------------------------------- ># This is the port in which client side listener listens. > CLIENT_LISTENER_PORT = 9090 > > # This is the SimpleAxisServerImpl running port. Only for testing > purposes. > SIMPLE_AXIS_SERVER_PORT = 8080 > > # Any number of handlers can be included as shown below for the response > path of the Sender. > responseHandler1 = > de.tud.ao4bpel.services.reliability.test.RMTestRequestHandler > responseHandler2 = > org.apache.axis.message.addressing.handler.AddressingHandler > responseHandler3 = > org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler > > # If there are additional handlers that needs to be included in the > Senders request path > # then use the following configuration. > # requestHandler1 = package.name.DummyHandler > > # These are the handlers for the Listener's request path. Listener's > request path is used to > # retrieve asynchronous responses and other RM protocol messages and hence > the handlers we put here > # should be the RESPONSE handlers with respect to normal invocation. > listenerRequestHandler1 = > de.tud.ao4bpel.services.reliability.test.RMTestRequestHandler > listenerRequestHandler2 = > org.apache.axis.message.addressing.handler.AddressingHandler > listenerRequestHandler3 = > org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler > > # Define the strategy for executing web service invokes. > # This impl uses the apache axis thread pool and configures > # it to the given size. > invokeStrategy=org.apache.sandesha.server.ThreadPoolInvokeStrategy:threadPoolSize=10 > > # Define the invoke handler that will execute the web service invokes. > # This impl simply delegates to the handler specified by the "invoker" > param. > invokeHandler=org.apache.sandesha.server.DelegateInvokeHandler:invoker=org.apache.axis.providers.java.RPCProvider --------------------------------------------------------------------- To unsubscribe, e-mail: johnmartin@example.com For additional commands, e-mail: johnmartin@example.com From sandeshajohnmartin@example.com Thu Jan 05 06:01:37 2006 Return-Path: <sandeshajohnmartin@example.com> Delivered-To: johnmartin@example.com Received: (qmail 24746 invoked from network); 5 Jan 2006 06:01:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 5 Jan 2006 06:01:36 -0000 Received: (qmail 20762 invoked by uid 500); 5 Jan 2006 06:01:35 -0000 Delivered-To: johnmartin@example.com Received: (qmail 20604 invoked by uid 500); 5 Jan 2006 06:01:33 -0000 Mailing-List: contact johnmartin@example.com; run by ezmlm Precedence: bulk List-Help: <mailto:johnmartin@example.com> List-Unsubscribe: <mailto:johnmartin@example.com> List-Post: <mailto:johnmartin@example.com> List-Id: <sandesha-dev.ws.apache.org> Delivered-To: mailing list johnmartin@example.com Received: (qmail 20584 invoked by uid 500); 5 Jan 2006 06:01:33 -0000 Delivered-To: johnmartin@example.com Received: (qmail 20580 invoked by uid 99); 5 Jan 2006 06:01:33 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 04 Jan 2006 22:01:33 -0800 X-ASF-Spam-Status: No, hits=-8.6 required=10.0 tests=ALL_TRUSTED,INFO_TLD,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO minotaur.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 04 Jan 2006 22:01:30 -0800 Received: (qmail 24491 invoked by uid 65534); 5 Jan 2006 06:01:19 -0000 Message-ID: <johnmartin@example.com> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r366091 - in /webservices/sandesha/trunk/src/org/apache/sandesha2: ./ handlers/ msgprocessors/ storage/inmemory/ util/ workers/ Date: Thu, 05 Jan 2006 06:01:00 -0000 To: johnmartin@example.com From: johnmartin@example.com X-Mailer: svnmailer-1.0.5 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: chamikara Date: Wed Jan 4 21:59:57 2006 New Revision: 366091 URL: http://svn.apache.org/viewcvs?rev=366091&view=rev Log: Updated code to comply with the latest Axis2 source. Changes to the RM Report functionality. Added loggers. Cleaned the code. Removed: webservices/sandesha/trunk/src/org/apache/sandesha2/RMReport.java webservices/sandesha/trunk/src/org/apache/sandesha2/Sandesha2ClientAPI.java Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/AcknowledgementManager.java webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaException.java webservices/sandesha/trunk/src/org/apache/sandesha2/TerminateManager.java webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaInHandler.java webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaOutHandler.java webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemorySequencePropertyBeanMgr.java webservices/sandesha/trunk/src/org/apache/sandesha2/util/PropertyManager.java webservices/sandesha/trunk/src/org/apache/sandesha2/util/RMMsgCreator.java webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java webservices/sandesha/trunk/src/org/apache/sandesha2/util/SequenceManager.java webservices/sandesha/trunk/src/org/apache/sandesha2/workers/InOrderInvoker.java webservices/sandesha/trunk/src/org/apache/sandesha2/workers/Sender.java Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/AcknowledgementManager.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/AcknowledgementManager.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/AcknowledgementManager.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/AcknowledgementManager.java Wed Jan 4 21:59:57 2006 @@ -22,6 +22,8 @@ import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.context.MessageContext; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.apache.sandesha2.storage.StorageManager; import org.apache.sandesha2.storage.beanmanagers.SenderBeanMgr; import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr; @@ -40,6 +42,8 @@ public class AcknowledgementManager { + private static Log log = LogFactory.getLog(AcknowledgementManager.class); + /** * Piggybacks any available acks of the same sequence to the given * application message. @@ -63,9 +67,11 @@ Sequence sequence = (Sequence) applicationRMMsgContext .getMessagePart(Sandesha2Constants.MessageParts.SEQUENCE); - if (sequence == null) - throw new SandeshaException( - "Application message does not contain a sequence part"); + if (sequence == null) { + String message = "Application message does not contain a sequence part"; + log.debug(message); + throw new SandeshaException(message); + } String sequenceId = sequence.getIdentifier().getIdentifier(); @@ -73,8 +79,11 @@ .retrieve( sequenceId, Sandesha2Constants.SequenceProperties.INTERNAL_SEQUENCE_ID); - if (internalSequenceBean == null) - throw new SandeshaException("Temp Sequence is not set"); + if (internalSequenceBean == null) { + String message = "Temp Sequence is not set"; + log.debug(message); + throw new SandeshaException(message); + } String internalSequenceId = (String) internalSequenceBean.getValue(); findBean.setInternalSequenceID(internalSequenceId); @@ -89,7 +98,8 @@ SenderBean ackBean = (SenderBean) it.next(); long timeNow = System.currentTimeMillis(); - if (ackBean.getTimeToSend() > timeNow) { //Piggybacking will happen only if the end of ack interval (timeToSend) is not reached. + if (ackBean.getTimeToSend() > timeNow) { + //Piggybacking will happen only if the end of ack interval (timeToSend) is not reached. //deleting the ack entry. retransmitterBeanMgr.delete(ackBean.getMessageID()); @@ -100,8 +110,11 @@ .getMessageContextRefKey()); RMMsgContext ackRMMsgContext = MsgInitializer .initializeMessage(ackMsgContext); - if (ackRMMsgContext.getMessageType() != Sandesha2Constants.MessageTypes.ACK) - throw new SandeshaException("Invalid ack message entry"); + if (ackRMMsgContext.getMessageType() != Sandesha2Constants.MessageTypes.ACK) { + String message = "Invalid ack message entry"; + log.debug(message); + throw new SandeshaException(message); + } SequenceAcknowledgement sequenceAcknowledgement = (SequenceAcknowledgement) ackRMMsgContext .getMessagePart(Sandesha2Constants.MessageParts.SEQ_ACKNOWLEDGEMENT); Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java Wed Jan 4 21:59:57 2006 @@ -20,9 +20,6 @@ import java.util.HashMap; import java.util.Iterator; -import javax.xml.stream.XMLOutputFactory; -import javax.xml.stream.XMLStreamWriter; - import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.addressing.RelatesTo; @@ -169,17 +166,6 @@ } } - public void serializeSOAPEnvelop() { - try { - SOAPEnvelope envelop = msgContext.getEnvelope(); - XMLStreamWriter writer = XMLOutputFactory.newInstance() - .createXMLStreamWriter(System.out); - envelop.serialize(writer); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - public void setFrom(EndpointReference epr) { msgContext.setFrom(epr); } @@ -240,5 +226,15 @@ public void setSOAPAction(String SOAPAction) { msgContext.setSoapAction(SOAPAction); + } + + public void pause () { + if (msgContext!=null) + msgContext.pause(); + } + + public void setPaused (boolean pause) { + if (msgContext!=null) + msgContext.setPaused(pause); } } Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaException.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaException.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaException.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaException.java Wed Jan 4 21:59:57 2006 @@ -31,4 +31,5 @@ public SandeshaException (String message) { super (message); } + } Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/TerminateManager.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/TerminateManager.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/TerminateManager.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/TerminateManager.java Wed Jan 4 21:59:57 2006 @@ -24,16 +24,13 @@ import org.apache.axis2.context.ConfigurationContext; import org.apache.sandesha2.storage.StorageManager; import org.apache.sandesha2.storage.beanmanagers.CreateSeqBeanMgr; -import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr; +import org.apache.sandesha2.storage.beanmanagers.InvokerBeanMgr; import org.apache.sandesha2.storage.beanmanagers.SenderBeanMgr; import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr; -import org.apache.sandesha2.storage.beanmanagers.InvokerBeanMgr; import org.apache.sandesha2.storage.beans.CreateSeqBean; -import org.apache.sandesha2.storage.beans.NextMsgBean; +import org.apache.sandesha2.storage.beans.InvokerBean; import org.apache.sandesha2.storage.beans.SenderBean; import org.apache.sandesha2.storage.beans.SequencePropertyBean; -import org.apache.sandesha2.storage.beans.InvokerBean; -import org.apache.sandesha2.util.PropertyManager; import org.apache.sandesha2.util.SandeshaUtil; /** @@ -55,7 +52,7 @@ * @throws SandeshaException */ public static void terminateReceivingSide (ConfigurationContext configContext, String sequenceID) throws SandeshaException { - StorageManager storageManager = SandeshaUtil.getSandeshaStorageManager(configContext); + /*StorageManager storageManager = SandeshaUtil.getSandeshaStorageManager(configContext); NextMsgBeanMgr nextMsgBeanMgr = storageManager.getNextMsgBeanMgr(); //removing nextMsgMgr entries @@ -71,7 +68,7 @@ boolean inOrderInvocation = PropertyManager.getInstance().isInOrderInvocation(); if(!inOrderInvocation) { terminateAfterInvocation(configContext,sequenceID); - } + }*/ } @@ -151,9 +148,7 @@ Collection collection = retransmitterBeanMgr.find(internalSequenceId); Iterator iterator = collection.iterator(); while (iterator.hasNext()) { - Object obj = iterator.next(); - System.out.println(obj); - SenderBean retransmitterBean = (SenderBean) obj; + SenderBean retransmitterBean = (SenderBean) iterator.next(); retransmitterBeanMgr.delete(retransmitterBean.getMessageID()); } @@ -174,21 +169,29 @@ iterator = collection.iterator(); while (iterator.hasNext()) { SequencePropertyBean sequencePropertyBean = (SequencePropertyBean) iterator.next(); - sequencePropertyBeanMgr.delete(sequencePropertyBean.getSequenceID(),sequencePropertyBean.getName()); + + if (isProportyDeletable(sequencePropertyBean.getName())) { + sequencePropertyBeanMgr.delete(sequencePropertyBean.getSequenceID(),sequencePropertyBean.getName()); + } + } - SequencePropertyBean findSequencePropertyBean2 = new SequencePropertyBean (); - findSequencePropertyBean2.setSequenceID(internalSequenceId); - collection = sequencePropertyBeanMgr.find(findSequencePropertyBean2); - iterator = collection.iterator(); - while (iterator.hasNext()) { - SequencePropertyBean sequencePropertyBean = (SequencePropertyBean) iterator.next(); - sequencePropertyBeanMgr.delete(sequencePropertyBean.getSequenceID(),sequencePropertyBean.getName()); - } +// SequencePropertyBean findSequencePropertyBean2 = new SequencePropertyBean (); +// findSequencePropertyBean2.setSequenceID(internalSequenceId); +// collection = sequencePropertyBeanMgr.find(findSequencePropertyBean2); +// iterator = collection.iterator(); +// while (iterator.hasNext()) { +// SequencePropertyBean sequencePropertyBean = (SequencePropertyBean) iterator.next(); +// sequencePropertyBeanMgr.delete(sequencePropertyBean.getSequenceID(),sequencePropertyBean.getName()); +// } } - private boolean isProportyDeletable (String name) { + private static boolean isProportyDeletable (String name) { boolean deleatable = true; + +// if (name.equals(Sandesha2Constants.SequenceProperties.INTERNAL_SEQUENCE_ID)) { +// int i=1; +// } if (Sandesha2Constants.SequenceProperties.TERMINATE_ADDED.equals(name)) deleatable = false; Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java Wed Jan 4 21:59:57 2006 @@ -31,9 +31,8 @@ import org.apache.axis2.soap.SOAPBody; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.apache.sandesha2.Sandesha2ClientAPI; -import org.apache.sandesha2.Sandesha2Constants; import org.apache.sandesha2.RMMsgContext; +import org.apache.sandesha2.Sandesha2Constants; import org.apache.sandesha2.SandeshaException; import org.apache.sandesha2.msgprocessors.ApplicationMsgProcessor; import org.apache.sandesha2.storage.StorageManager; @@ -83,24 +82,10 @@ ServiceContext serviceContext = msgContext.getServiceContext(); Object debug = null; - if (serviceContext != null) { - debug = msgContext.getProperty(Sandesha2ClientAPI.SANDESHA_DEBUG_MODE); - if (debug != null && "on".equals(debug)) { - System.out.println("DEBUG: SandeshaGlobalInHandler got a '" - + SandeshaUtil.getMessageTypeString(rmMessageContext - .getMessageType()) + "' message."); - } - } //Dropping duplicates boolean dropped = dropIfDuplicate(rmMessageContext); if (dropped) { - if (debug != null && "on".equals(debug)) { - System.out.println("DEBUG: SandeshaGlobalInHandler DROPPED a '" - + SandeshaUtil.getMessageTypeString(rmMessageContext - .getMessageType()) + "' message."); - } - processDroppedMessage(rmMessageContext); return; } @@ -152,7 +137,6 @@ drop = true; } } - } if (drop == false) { @@ -164,10 +148,8 @@ } if (emptyBody) { - boolean lastMessage = false; if (sequence.getLastMessage() != null) { - System.out - .println("Empty Body Last Message Received"); + log.info ("Empty Body LastMessage Received"); drop = true; if (receivedMsgsBean == null) { @@ -200,8 +182,7 @@ } if (drop) { - //rmMsgContext.getMessageContext().pause(); - rmMsgContext.getMessageContext().setPausedTrue(new QName (Sandesha2Constants.IN_HANDLER_NAME)); + rmMsgContext.getMessageContext().pause(); return true; } @@ -229,8 +210,7 @@ String receivedMsgStr = (String) receivedMsgsBean.getValue(); ApplicationMsgProcessor ackProcessor = new ApplicationMsgProcessor(); - //Even though the duplicate message is dropped, hv to send the ack - // if needed. + //Even though the duplicate message is dropped, hv to send the ack if needed. ackProcessor.sendAckIfNeeded(rmMsgContext, receivedMsgStr); } @@ -240,9 +220,8 @@ throws SandeshaException { switch (rmMsgCtx.getMessageType()) { case Sandesha2Constants.MessageTypes.ACK: - rmMsgCtx.setRelatesTo(null); //Removing the relatesTo part from - // ackMessageIf present. - //Some Frameworks tend to send this. + rmMsgCtx.setRelatesTo(null); + //Removing the relatesTo part from ackMessageIf present. Some Frameworks tend to send this. } } Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaInHandler.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaInHandler.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaInHandler.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaInHandler.java Wed Jan 4 21:59:57 2006 @@ -22,22 +22,18 @@ import org.apache.axis2.AxisFault; import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.context.MessageContext; -import org.apache.axis2.context.ServiceContext; import org.apache.axis2.description.AxisService; import org.apache.axis2.engine.AxisEngine; import org.apache.axis2.handlers.AbstractHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.sandesha2.RMMsgContext; -import org.apache.sandesha2.Sandesha2ClientAPI; import org.apache.sandesha2.Sandesha2Constants; import org.apache.sandesha2.SandeshaException; import org.apache.sandesha2.msgprocessors.MsgProcessor; import org.apache.sandesha2.msgprocessors.MsgProcessorFactory; -import org.apache.sandesha2.storage.StorageManager; import org.apache.sandesha2.util.FaultManager; import org.apache.sandesha2.util.MsgInitializer; -import org.apache.sandesha2.util.SandeshaUtil; /** * This is invoked in the inFlow of an RM endpoint. This is responsible for selecting an suitable @@ -57,8 +53,11 @@ public void invoke(MessageContext msgCtx) throws AxisFault { ConfigurationContext context = msgCtx.getConfigurationContext(); - if (context == null) - throw new AxisFault("ConfigurationContext is null"); + if (context == null) { + String message = "ConfigurationContext is null"; + log.debug(message); + throw new AxisFault(message); + } String DONE = (String) msgCtx .getProperty(Sandesha2Constants.APPLICATION_PROCESSING_DONE); @@ -75,41 +74,36 @@ } AxisService axisService = msgCtx.getAxisService(); - if (axisService == null) - throw new AxisFault("AxisService is null"); + if (axisService == null) { + String message = "AxisService is null"; + log.debug(message); + throw new AxisFault(message); + } RMMsgContext rmMsgCtx = null; try { rmMsgCtx = MsgInitializer.initializeMessage(msgCtx); } catch (SandeshaException ex) { - throw new AxisFault("Cant initialize the message"); - } - - ServiceContext serviceContext = msgCtx.getServiceContext(); - Object debug = null; - if (serviceContext != null) { - debug = msgCtx.getProperty(Sandesha2ClientAPI.SANDESHA_DEBUG_MODE); - if (debug != null && "on".equals(debug)) { - System.out.println("DEBUG: SandeshaInHandler got a '" - + SandeshaUtil.getMessageTypeString(rmMsgCtx - .getMessageType()) + "' message."); - } + String message = "Cant initialize the message"; + log.debug(message); + throw new AxisFault(message); } MsgProcessor msgProcessor = MsgProcessorFactory .getMessageProcessor(rmMsgCtx.getMessageType()); - if (msgProcessor == null) - throw new AxisFault("Cant find a suitable message processor"); + if (msgProcessor == null) { + String message = "Cant find a suitable message processor"; + log.debug(message); + throw new AxisFault(message); + } try { - StorageManager storageManager = SandeshaUtil.getSandeshaStorageManager(rmMsgCtx.getMessageContext().getConfigurationContext()); - msgProcessor.processMessage(rmMsgCtx); - } catch (SandeshaException se) { - se.printStackTrace(); - throw new AxisFault("Error in processing the message"); + String message = "Error in processing the message"; + log.debug(message); + throw new AxisFault(message); } } Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaOutHandler.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaOutHandler.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaOutHandler.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/SandeshaOutHandler.java Wed Jan 4 21:59:57 2006 @@ -36,9 +36,9 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.sandesha2.RMMsgContext; -import org.apache.sandesha2.Sandesha2ClientAPI; import org.apache.sandesha2.Sandesha2Constants; import org.apache.sandesha2.SandeshaException; +import org.apache.sandesha2.client.Sandesha2ClientAPI; import org.apache.sandesha2.policy.RMPolicyBean; import org.apache.sandesha2.storage.StorageManager; import org.apache.sandesha2.storage.Transaction; @@ -76,12 +76,18 @@ public void invoke(MessageContext msgCtx) throws AxisFault { ConfigurationContext context = msgCtx.getConfigurationContext(); - if (context == null) - throw new AxisFault("ConfigurationContext is null"); + if (context == null) { + String message = "ConfigurationContext is null"; + log.debug(message); + throw new AxisFault(message); + } AxisService axisService = msgCtx.getAxisService(); - if (axisService == null) - throw new AxisFault("AxisService is null"); + if (axisService == null) { + String message = "AxisService is null"; + log.debug(message); + throw new AxisFault(message); + } //getting rm message RMMsgContext rmMsgCtx = MsgInitializer.initializeMessage(msgCtx); @@ -100,15 +106,6 @@ ServiceContext serviceContext = msgCtx.getServiceContext(); OperationContext operationContext = msgCtx.getOperationContext(); - Object debug = null; - if (serviceContext != null) { - debug = msgCtx.getProperty(Sandesha2ClientAPI.SANDESHA_DEBUG_MODE); - if (debug != null && "on".equals(debug)) { - System.out.println("DEBUG: SandeshaOutHandler got a '" - + SandeshaUtil.getMessageTypeString(rmMsgCtx - .getMessageType()) + "' message."); - } - } //continue only if an possible application message if (!(rmMsgCtx.getMessageType() == Sandesha2Constants.MessageTypes.UNKNOWN)) { @@ -151,12 +148,18 @@ Sequence reqSequence = (Sequence) requestRMMsgCtx .getMessagePart(Sandesha2Constants.MessageParts.SEQUENCE); - if (reqSequence == null) - throw new SandeshaException("Sequence part is null"); + if (reqSequence == null) { + String message = "Sequence part is null"; + log.debug(message); + throw new SandeshaException(message); + } String incomingSeqId = reqSequence.getIdentifier().getIdentifier(); - if (incomingSeqId == null || incomingSeqId == "") - throw new SandeshaException("Invalid seqence Id"); + if (incomingSeqId == null || incomingSeqId == "") { + String message = "Invalid seqence Id"; + log.debug(message); + throw new SandeshaException(message); + } internalSequenceId = incomingSeqId; @@ -164,12 +167,13 @@ //set the internal sequence id for the client side. EndpointReference toEPR = msgCtx.getTo(); if (toEPR == null || toEPR.getAddress() == null - || "".equals(toEPR.getAddress())) - throw new AxisFault( - "TO End Point Reference is not set correctly. This is a must for the sandesha client side."); - + || "".equals(toEPR.getAddress())){ + String message = "TO End Point Reference is not set correctly. This is a must for the sandesha client side."; + log.debug(message); + throw new AxisFault(message); + } + String to = toEPR.getAddress(); - OperationContext opContext = msgCtx.getOperationContext(); String sequenceKey = (String) msgCtx .getProperty(Sandesha2ClientAPI.SEQUENCE_KEY); @@ -224,7 +228,9 @@ MessageContext requestMessage = operationContext.getMessageContext(OperationContextFactory.MESSAGE_LABEL_IN_VALUE); if (requestMessage==null) { - throw new SandeshaException ("Request message is not present"); + String message = "Request message is not present"; + log.debug(message); + throw new SandeshaException (message); } acksTo = requestMessage.getTo().getAddress(); @@ -264,9 +270,7 @@ } } - addCreateSequenceMessage(rmMsgCtx, internalSequenceId, acksTo); - } } @@ -280,10 +284,12 @@ } SOAPBody soapBody = rmMsgCtx.getSOAPEnvelope().getBody(); - if (soapBody == null) - throw new SandeshaException( - "Invalid SOAP message. Body is not present"); - + if (soapBody == null) { + String message = "Invalid SOAP message. Body is not present"; + log.debug(message); + throw new SandeshaException(message); + } + String messageId1 = SandeshaUtil.getUUID(); if (rmMsgCtx.getMessageId() == null) { rmMsgCtx.setMessageId(messageId1); @@ -309,8 +315,11 @@ } else { EndpointReference toEPR = msgCtx.getTo(); - if (toEPR == null) - throw new SandeshaException("To EPR is not found"); + if (toEPR == null) { + String message = "To EPR is not found"; + log.debug(message); + throw new SandeshaException(message); + } String to = toEPR.getAddress(); String operationName = msgCtx.getOperationContext() @@ -330,8 +339,8 @@ } //pausing the message - //msgCtx.pause(); - rmMsgCtx.getMessageContext().setPausedTrue(new QName (Sandesha2Constants.OUT_HANDLER_NAME)); + msgCtx.pause(); + //rmMsgCtx.getMessageContext().setPausedTrue(new QName (Sandesha2Constants.OUT_HANDLER_NAME)); transaction.commit(); } @@ -340,15 +349,21 @@ String internalSequenceId, String acksTo) throws SandeshaException { MessageContext applicationMsg = applicationRMMsg.getMessageContext(); - if (applicationMsg == null) - throw new SandeshaException("Message context is null"); + if (applicationMsg == null) { + String message = "Message context is null"; + log.debug(message); + throw new SandeshaException(message); + } + RMMsgContext createSeqRMMessage = RMMsgCreator.createCreateSeqMsg( applicationRMMsg, internalSequenceId, acksTo); CreateSequence createSequencePart = (CreateSequence) createSeqRMMessage .getMessagePart(Sandesha2Constants.MessageParts.CREATE_SEQ); - if (createSequencePart == null) - throw new SandeshaException( - "Create Sequence part is null for a CreateSequence message"); + if (createSequencePart == null) { + String message = "Create Sequence part is null for a CreateSequence message"; + log.debug(message); + throw new SandeshaException(message); + } SequenceOffer offer = createSequencePart.getSequenceOffer(); if (offer != null) { @@ -380,8 +395,11 @@ createSeqMsg.setRelatesTo(null); //create seq msg does not relateTo // anything AbstractContext context = applicationRMMsg.getContext(); - if (context == null) - throw new SandeshaException("Context is null"); + if (context == null) { + String message = "Context is null"; + log.debug(message); + throw new SandeshaException(message); + } StorageManager storageManager = SandeshaUtil .getSandeshaStorageManager(applicationMsg.getConfigurationContext()); @@ -418,12 +436,18 @@ SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SandeshaUtil .getSOAPVersion(rmMsg.getSOAPEnvelope())); - if (rmMsg == null) - throw new SandeshaException("Message or reques message is null"); + if (rmMsg == null) { + String message = "Message or reques message is null"; + log.debug(message); + throw new SandeshaException(message); + } AbstractContext context = rmMsg.getContext(); - if (context == null) - throw new SandeshaException("Context is null"); + if (context == null) { + String message = "Context is null"; + log.debug(message); + throw new SandeshaException(message); + } StorageManager storageManager = SandeshaUtil .getSandeshaStorageManager(msg.getConfigurationContext()); @@ -443,8 +467,11 @@ internalSequenceId, Sandesha2Constants.SequenceProperties.OUT_SEQUENCE_ID); - if (toBean == null) - throw new SandeshaException("To is null"); + if (toBean == null) { + String message = "To is null"; + log.debug(message); + throw new SandeshaException(message); + } EndpointReference toEPR = new EndpointReference (toBean.getValue()); EndpointReference replyToEPR = null; @@ -454,8 +481,11 @@ } if (toEPR == null || toEPR.getAddress() == null - || toEPR.getAddress() == "") - throw new SandeshaException("To Property has an invalid value"); + || toEPR.getAddress() == "") { + String message = "To Property has an invalid value"; + log.debug(message); + throw new SandeshaException(message); + } String newToStr = null; @@ -504,8 +534,11 @@ .initializeMessage(requestMsg); Sequence requestSequence = (Sequence) reqRMMsgCtx .getMessagePart(Sandesha2Constants.MessageParts.SEQUENCE); - if (requestSequence == null) - throw new SandeshaException("Request Sequence is null"); + if (requestSequence == null) { + String message = "Request Sequence is null"; + log.debug(message); + throw new SandeshaException(message); + } if (requestSequence.getLastMessage() != null) { lastMessage = true; Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java?rev=366091&r1=366090&r2=366091&view=diff ============================================================================== --- webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java (original) +++ webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java Wed Jan 4 21:59:57 2006 @@ -20,12 +20,12 @@ import java.util.Collection; import java.util.Iterator; -import javax.xml.namespace.QName; - import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.context.AbstractContext; import org.apache.axis2.context.MessageContextConstants; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.apache.sandesha2.RMMsgContext; import org.apache.sandesha2.Sandesha2Constants; import org.apache.sandesha2.SandeshaException; @@ -50,37 +50,48 @@ public class AcknowledgementProcessor implements MsgProcessor { + Log log = LogFactory.getLog(getClass()); + public void processMessage(RMMsgContext rmMsgCtx) throws SandeshaException { - - SequenceAcknowledgement sequenceAck = (SequenceAcknowledgement) rmMsgCtx .getMessagePart(Sandesha2Constants.MessageParts.SEQ_ACKNOWLEDGEMENT); - if (sequenceAck == null) - throw new SandeshaException("Sequence acknowledgement part is null"); + if (sequenceAck == null) { + String message = "Sequence acknowledgement part is null"; + log.debug(message); + throw new SandeshaException(message); + } AbstractContext context = rmMsgCtx.getContext(); if (context == null) - throw new SandeshaException("Context is null"); + { + String message = "Context is null"; + log.debug(message); + throw new SandeshaException(message); + } StorageManager storageManager = SandeshaUtil .getSandeshaStorageManager(rmMsgCtx.getMessageContext() .getConfigurationContext()); - - Transaction ackTransaction = storageManager.getTransaction(); - SenderBeanMgr retransmitterMgr = storageManager .getRetransmitterBeanMgr(); SequencePropertyBeanMgr seqPropMgr = storageManager .getSequencePropretyBeanMgr(); + + //Starting transaction + Transaction ackTransaction = storageManager.getTransaction(); + Iterator ackRangeIterator = sequenceAck.getAcknowledgementRanges() .iterator(); Iterator nackIterator = sequenceAck.getNackList().iterator(); String outSequenceId = sequenceAck.getIdentifier().getIdentifier(); -
{'source': 'Apache Software Foundation Public Mail Archives'}