synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ruwan Linton <ruwan.lin...@gmail.com>
Subject Re: Creating HessianFaults using FaultMediator/HessianMessageFormatter
Date Mon, 16 Mar 2009 07:10:04 GMT
+1

Thanks,
Rwuan

On Mon, Mar 16, 2009 at 12:22 PM, Hubert, Eric <Eric.Hubert@foxmobile.com>wrote:

>  Yes, this has been exactly the direction I was looking for. I guess
> Asankha made just a typo in the name of the suggested property and wanted to
> use FAULTS_AS_HTTP200 as 500 would be the current default. Then the rest of
> the sentence setting it to true in the HessianMessageBuilder would still
> apply. ;-)
>
>
>
> If nobody objects or has better ideas, I’ll go ahead and propose a patch
> following Asankha’s suggestion.
>
>
>
> Regards,
>
>   Eric
>
>
>
>
>   ------------------------------
>
> *From:* Ruwan Linton [mailto:ruwan.linton@gmail.com]
> *Sent:* Monday, March 16, 2009 4:27 AM
> *To:* dev@synapse.apache.org
> *Subject:* Re: Creating HessianFaults using
> FaultMediator/HessianMessageFormatter
>
>
>
> I think all last three suggestions will work nicely to solve this issue,
> but I think asankha's solution seems quite handy in this case as well as in
> most of the other POX cases (it is a generic solution).
>
>
> I think HessianBuilder should set the value to false in the asankha's
> suggestion, because hessian messages want them to be to 200 rather than 500.
> :-)
>
> Thanks,
> Ruwan
>
> On Mon, Mar 16, 2009 at 6:59 AM, Asankha C. Perera <asankha@apache.org>
> wrote:
>
> Hi all
>
>  Yes, I think the overhead in the FaultMediator is rather low. It already
> handles a lot of other application protocol specific stuff. The only thing
> which is not nice is that the way to detect the Hessian message is making
> assumptions on the transport used (content-type of http transport header as
> a decision criteria). But there are obviously other alternatives to
> implement the isHessianMessage() method (e.g. letting the builder write an
> info about the application protocol used in a defined place within the
> message context or even something smarter?).
>
> Yes, there are limitations regarding message transformations changing the
> application protocol, this is true. On the other side this would be a
> relatively hard job. Either reimplementing the whole protocol or integrating
> a Hessian library (many library versions are incompatible amongst each
> other). Once we really do this, the effort to change a few lines in the
> FaultMediator can be neglected.
>
>  Considering all that has been brought up in this thread and the above in
> particular, what if we define a new Synapse property say 'FAULTS_AS_HTTP500'
> - and the Hessian builders would set this property to True. This way the
> fault mediator is not Hessian specific.
>
> When the fault mediator is invoked later, it would check this property and
> perform the logic given in Eric's patch. I believe many POX messages would
> also benefit from this - where many fault messages would actually go on the
> wire as HTTP 200's..
>
> cheers
> asankha
>
>  --
>
> Asankha C. Perera
>
> AdroitLogic, http://adroitlogic.org
>
>
>
> http://esbmagic.blogspot.com
>
>
>
>
>
>
>
>
>
>
> --
> Ruwan Linton
> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>



-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Mime
View raw message