You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2009/05/13 23:24:45 UTC

[jira] Created: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Implement a smarter default policy for SOAP header removal/preservation
-----------------------------------------------------------------------

                 Key: SYNAPSE-549
                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
             Project: Synapse
          Issue Type: Improvement
          Components: Proxy Services
            Reporter: Andreas Veithen
            Priority: Minor
             Fix For: 1.3.1


Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.

The most reasonable default behavior would actually be as follows: 

- If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
- If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 

Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.

We should also apply a similar default policy to responses sent back to the client:

- If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
- If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 

For this case, samples 100 and 101 are interesting.

Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.

Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12748084#action_12748084 ] 

Andreas Veithen commented on SYNAPSE-549:
-----------------------------------------

I didn't test it, but the patch looks good. When updating the documentation, please add a note to upgrading.xml [1] since this is something that people should be aware of when upgrading to 1.3.

Thanks,

Andreas

[1] http://people.apache.org/~veithen/synapse/upgrading.html

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12746756#action_12746756 ] 

Supun Kamburugamuva commented on SYNAPSE-549:
---------------------------------------------

This is a important requirement and I would like to contribute a patch. Before going with the implementation, I'd like to explain how I'm planning to implement it.

The default behavior will be to remove the headers if they are processed.

If a user wants to override the default behavior he can do so with a property. I'd like to propose the name preserveProcessedHeader for the property. This will take the value true or false.

The actual removal of the headers will happen in the Axis2FlexibleMEPClient code.

Regards,
Supun..

 

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Updated: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Supun Kamburugamuva updated SYNAPSE-549:
----------------------------------------

    Attachment: synapse-549_1.patch

Re-attaching with Ruwans suggestion. 

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Assignee: Ruwan Linton
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch, synapse-549_1.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Updated: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hiranya Jayathilaka updated SYNAPSE-549:
----------------------------------------

        Fix Version/s: 2.0
                           (was: 2.1)
    Affects Version/s: 2.0
             Priority: Major  (was: Minor)

Increasing priority

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>    Affects Versions: 2.0
>            Reporter: Andreas Veithen
>            Assignee: Supun Kamburugamuva
>             Fix For: 2.0
>
>         Attachments: synapse-549.patch, synapse-549_1.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Ruwan Linton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12748238#action_12748238 ] 

Ruwan Linton commented on SYNAPSE-549:
--------------------------------------

Also, if this is working for addressing as well correctly we should be able to get rid of the removeAddresingHeaders internal method that is invoked before sending...



> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Assigned: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Ruwan Linton (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ruwan Linton reassigned SYNAPSE-549:
------------------------------------

    Assignee: Ruwan Linton

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Assignee: Ruwan Linton
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Ruwan Linton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12748237#action_12748237 ] 

Ruwan Linton commented on SYNAPSE-549:
--------------------------------------

I also had a look at the patch and did tested the security scenarios, which seems to be working fine. Need to test addressing as well. 

I agree with Andreas. Supun, can you please provide a separate patch for the document??

Also some of the configurations are complete replacements, it is better if they can be maded to just the differences so that the history persists nicely in the svn. :-)

Thanks,
Ruwan

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12748289#action_12748289 ] 

Supun Kamburugamuva commented on SYNAPSE-549:
---------------------------------------------

In the addressing header removal code it expects SOAPElements as well. So in this case our general SOAPHeader removal code will not work. That is why I didn't remove that method.

Sorry I didn't get the comment about preserving the history. Are you suggesting something like commenting out the Header removals?

Thanks,
Supun..

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Assignee: Ruwan Linton
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Resolved: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Supun Kamburugamuva resolved SYNAPSE-549.
-----------------------------------------

    Resolution: Fixed

Fixed in the trunk

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>    Affects Versions: 2.0
>            Reporter: Andreas Veithen
>            Assignee: Supun Kamburugamuva
>             Fix For: 2.0
>
>         Attachments: synapse-549.patch, synapse-549_1.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Updated: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Supun Kamburugamuva updated SYNAPSE-549:
----------------------------------------

    Attachment: synapse-549.patch

Attaching a patch that handles the removal of headers

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Commented: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12747312#action_12747312 ] 

Supun Kamburugamuva commented on SYNAPSE-549:
---------------------------------------------

Please review and let me know if there are any improvements that need to be done. If there are improvements I like to recreate the patch. Also I have change the samples. But didn't change the documentation in this patch. If the community is OK with this patch I can change the documentation as well.

Regards,
Supun..

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Priority: Minor
>             Fix For: 1.3.1
>
>         Attachments: synapse-549.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Assigned: (SYNAPSE-549) Implement a smarter default policy for SOAP header removal/preservation

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hiranya Jayathilaka reassigned SYNAPSE-549:
-------------------------------------------

    Assignee: Supun Kamburugamuva  (was: Ruwan Linton)

This is bit of a 'big' change but since we are looking at a 2.0 release I think it's worth getting this fixed. From the looks of it patch is ok. Supun, please do the needful.

> Implement a smarter default policy for SOAP header removal/preservation
> -----------------------------------------------------------------------
>
>                 Key: SYNAPSE-549
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-549
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Proxy Services
>            Reporter: Andreas Veithen
>            Assignee: Supun Kamburugamuva
>            Priority: Minor
>             Fix For: 2.1
>
>         Attachments: synapse-549.patch, synapse-549_1.patch
>
>
> Currently, when sending a message out to the target service, by default the WS-Addressing headers are removed while all other headers are preserved. SYNAPSE-525 introduced the option to preserve WS-Addressing headers.
> The most reasonable default behavior would actually be as follows: 
> - If the SOAP header has been processed by a module engaged on the proxy service, remove it when forwarding the message. 
> - If the SOAP header has not been processed by a module engaged on the proxy service, preserve it and forward it to the target service. 
> Note that since only addressing is engaged by default on proxy services, the current behavior is consistent with this default policy, except when security or RM is enabled. In those latter cases, samples 200 and 201 clearly show that the proposed behavior would be much more natural.
> We should also apply a similar default policy to responses sent back to the client:
> - If the SOAP header has been processed by a module engaged by Axis2FlexibleMEPClient, remove it when sending back the response. 
> - If the SOAP header has not been processed by a module engaged by Axis2FlexibleMEPClient, preserve it. 
> For this case, samples 100 and 101 are interesting.
> Note that since Axis2 keeps track of processed headers using the setProcessed/isProcessed methods in SOAPHeaderBlock, the proposed change could be implemented in a completely generic way.
> Since there will be cases where the proposed default policy is not appropriate, we should also add a generic mechanism to preserve/remove specific headers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org