Hi Ruwan,

I think the best place to put the Handler to deactivate headers is just after 
SynapseDispatcher.

<InFlow>
    <handler name="name" class="class">
        <order after="SynapseDispatcher" phase="Dispatch"/>
    </handler>
</InFlow>

In the handler we will check if the AxisService is Synapse and in case of true 
then uncheck the security headers.We will store that security headers in the 
message context.

At some point at the beginning of Synapse service (I'm not sure where) we'll 
get the headers from the message context, change them to 'must understand', do 
the Synapse work and before send the message to the final ws, check the 
security headers for 'must understand'.

Sorry but I've not obtained stack trace error on server side. The exactly point 
where it occurs is (according to axis2 1.2 src):

AxisEngine -> receive(MessageContext) -> call to 
checkMustUnderstand(msgContext) just after doing the InFlow phase treatment.

Regards,

Jose


Ruwan Linton <[EMAIL PROTECTED]> escribió: Hi Jose,

Comments in line,

On 9/17/07, Jose Luis Alba  wrote:
>
> Hi Ruwan,
>
> I want to use Synapse as a pure router using the mediators but without the
> need to process the message.
>
> But Axis forces to process security headers. Is Axis that raises the
> exception and Synapse is not reached.


Yes, your understanding is exactly correct on this and before message
reaches Synapse Axis will throw this MustUnderstand exception.

Surely we will use a Handler (via module) that deactivates 'must
> understands' and this way reach Synapse (and then reactivate 'must
> understands', do synapse process and check 'must understands')


You are exactly correct, this is what we also thought of doing. If you can
attach the  exception trace, then I can find the exact place for this
handler. If you can raise an improvement JIRA on this, attach the trace
there.

I don't know if there's a better approach. Any ideas?


Not to my knowledge...

Thanks,
Ruwan

Jose
>
>
> [EMAIL PROTECTED] escribió: Hi Jose,
>
> Again this is expected, Security headers are must understand AFAIK and
> you can not by pass them since Synapse gets the message from axis2,
> but I am trying to understand what you are going to do.
>
> Can U please send the configuration of Synapse which raises this
> AxisFault.
>
> May be you can use the pure module approach that we have just
> introduced, let me try it if you can attach the configuration.
>
> Thanks,
> Ruwan
>
> On 9/14/07, Jose Luis Alba  wrote:
> > Hi,
> >
> > I've a problem using Synapse while mediating a WSS message.
> >
> > The idea is that I only want to pass through the client message
> (encrypted
> > with WSS) to the final ws using the Synapse mediators.
> >
> > But the problem is that if I don't catch the WSS and treat them then
> Axis2
> > launchs a mustUnderstand exception before reach Synapse.
> >
> > 1. There's some way to use Synapse as a router without dealing the
> message?
> > I only want to use is mediators capabilities (endpoints, load balance,
> etc.)
> >
> > Thanks,
> >
> > Jose
> >
> >
> > ---------------------------------
> >
> > Sé un Mejor Amante del Cine
> > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!.
> >
>
>
> --
> Ruwan Linton
> http://www.wso2.org - "Oxygenating the Web Services Platform"
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>
> ---------------------------------
>
> Sé un Mejor Amante del Cine
> ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!.
>



-- 
Ruwan Linton
http://www.wso2.org - "Oxygenating the Web Services Platform"


       
---------------------------------

Sé un Mejor Amante del Cine
¿Quieres saber cómo? ¡Deja que otras personas te ayuden!.

Reply via email to