+1

Looks ok to me.

Regards,
Werner

Fred Dushin (JIRA) schrieb:
>     [ 
> https://issues.apache.org/jira/browse/WSS-112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12589176#action_12589176
>  ] 
> 
> Fred Dushin commented on WSS-112:
> ---------------------------------
> 
> I just submitted a change (r648361) to revert to the processor-per-request 
> behavior from previous versions of this module.  
> 
> Could I ask you to confirm that this addresses this issue?
> 
> Thanks, and apologies for the disruption!
> 
>> DerivedKeyProcessor is overwritten if more derivedkeys are present in a Soap 
>> Message.
>> -------------------------------------------------------------------------------------
>>
>>                 Key: WSS-112
>>                 URL: https://issues.apache.org/jira/browse/WSS-112
>>             Project: WSS4J
>>          Issue Type: Bug
>>         Environment: Rampart latest, Wss4J latest
>>            Reporter: Rasmus Rhein Helwigh
>>            Assignee: Ruchith Udayanga Fernando
>>
>> org.apache.ws.security.WSSConfig.getProcessor returns a cached Processor
>> public Processor getProcessor(QName el) throws WSSecurityException {
>>         Processor p = (Processor) processorMap.get(el);
>>         return p;
>>     }
>> This causes problem if two DerivedKeyProcessors are needed for the same 
>> message, as the second processor will overwrite the first.
>> A fix could be to Create a new instance each time. 
>> Check out this hack:
>>  public Processor getProcessor(QName el) throws WSSecurityException {
>>         Processor p = (Processor) processorMap.get(el);        
>>         try {
>>      return (Processor) 
>> Loader.loadClass(p.getClass().getName()).newInstance();
>> } catch (InstantiationException e) {
>>      throw new WSSecurityException("Unable to get processor",e);             
>>         
>> } catch (IllegalAccessException e) {
>>      throw new WSSecurityException("Unable to get processor",e);
>> } catch (ClassNotFoundException e) {
>>      throw new WSSecurityException("Unable to get processor",e);
>> }                     
>>  }
>> I can try and make a better fix if requested. WCF <-> Wss4j interop will 
>> work a lot better with this fix..
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to