Author: nandana Date: Thu Aug 27 23:09:44 2009 New Revision: 808675 URL: http://svn.apache.org/viewvc?rev=808675&view=rev Log: RAMPART-244 merging Dobri's fix to branch
Modified: webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/EncryptedPartsBuilder.java webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/EncryptedPartsBuilder.java Modified: webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/EncryptedPartsBuilder.java URL: http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/EncryptedPartsBuilder.java?rev=808675&r1=808674&r2=808675&view=diff ============================================================================== --- webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/EncryptedPartsBuilder.java (original) +++ webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/EncryptedPartsBuilder.java Thu Aug 27 23:09:44 2009 @@ -36,9 +36,17 @@ SignedEncryptedParts signedEncryptedParts = new SignedEncryptedParts(false, SPConstants.SP_V11); - for (Iterator iterator = element.getChildElements(); iterator.hasNext();) { - processElement((OMElement) iterator.next(), signedEncryptedParts); - } + Iterator iterator = element.getChildElements(); + if (iterator.hasNext()) { + for (; iterator.hasNext();) { + processElement((OMElement) iterator.next(), + signedEncryptedParts); + } + } else { + // If we have only <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"/> + // then we need to encrypt the whole body (refer to http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/ws-securitypolicy-1.2-spec-os.html#_Toc161826515). + signedEncryptedParts.setBody(true); + } return signedEncryptedParts; } Modified: webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/EncryptedPartsBuilder.java URL: http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/EncryptedPartsBuilder.java?rev=808675&r1=808674&r2=808675&view=diff ============================================================================== --- webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/EncryptedPartsBuilder.java (original) +++ webservices/rampart/branches/java/1_5/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/EncryptedPartsBuilder.java Thu Aug 27 23:09:44 2009 @@ -36,9 +36,17 @@ SignedEncryptedParts signedEncryptedParts = new SignedEncryptedParts(false, SPConstants.SP_V12); - for (Iterator iterator = element.getChildElements(); iterator.hasNext();) { - processElement((OMElement) iterator.next(), signedEncryptedParts); - } + Iterator iterator = element.getChildElements(); + if (iterator.hasNext()) { + for (; iterator.hasNext();) { + processElement((OMElement) iterator.next(), + signedEncryptedParts); + } + } else { + // If we have only <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"/> + // then we need to encrypt the whole body (refer to http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/ws-securitypolicy-1.2-spec-os.html#_Toc161826515). + signedEncryptedParts.setBody(true); + } return signedEncryptedParts; }