You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by co...@apache.org on 2011/12/05 14:45:26 UTC
svn commit: r1210459 - in
/cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator:
SAMLTokenValidator.java UsernameTokenValidator.java
Author: coheigea
Date: Mon Dec 5 13:45:26 2011
New Revision: 1210459
URL: http://svn.apache.org/viewvc?rev=1210459&view=rev
Log:
Some fixes wrt caching in the STS TokenValidators
Modified:
cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/SAMLTokenValidator.java
cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/UsernameTokenValidator.java
Modified: cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/SAMLTokenValidator.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/SAMLTokenValidator.java?rev=1210459&r1=1210458&r2=1210459&view=diff
==============================================================================
--- cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/SAMLTokenValidator.java (original)
+++ cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/SAMLTokenValidator.java Mon Dec 5 13:45:26 2011
@@ -196,6 +196,9 @@ public class SAMLTokenValidator implemen
}
if (!(validFrom.isBeforeNow() && validTill.isAfterNow())) {
LOG.log(Level.WARNING, "SAML Token condition not met");
+ if (secToken != null) {
+ tokenParameters.getTokenStore().remove(secToken);
+ }
return response;
}
Modified: cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/UsernameTokenValidator.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/UsernameTokenValidator.java?rev=1210459&r1=1210458&r2=1210459&view=diff
==============================================================================
--- cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/UsernameTokenValidator.java (original)
+++ cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/UsernameTokenValidator.java Mon Dec 5 13:45:26 2011
@@ -135,28 +135,24 @@ public class UsernameTokenValidator impl
if (tokenParameters.getTokenStore() != null) {
secToken = tokenParameters.getTokenStore().getToken(usernameTokenType.getId());
}
-
- Element rootElement = null;
+
+ // Marshall the received JAXB object into a DOM Element
Element usernameTokenElement = null;
- if (secToken == null) {
- try {
- JAXBContext jaxbContext =
- JAXBContext.newInstance("org.apache.cxf.ws.security.sts.provider.model");
- Marshaller marshaller = jaxbContext.createMarshaller();
- Document doc = DOMUtils.createDocument();
- rootElement = doc.createElement("root-element");
- JAXBElement<UsernameTokenType> tokenType =
- new JAXBElement<UsernameTokenType>(
- QNameConstants.USERNAME_TOKEN, UsernameTokenType.class, usernameTokenType
- );
- marshaller.marshal(tokenType, rootElement);
- } catch (JAXBException ex) {
- LOG.log(Level.WARNING, "", ex);
- return response;
- }
+ try {
+ JAXBContext jaxbContext =
+ JAXBContext.newInstance("org.apache.cxf.ws.security.sts.provider.model");
+ Marshaller marshaller = jaxbContext.createMarshaller();
+ Document doc = DOMUtils.createDocument();
+ Element rootElement = doc.createElement("root-element");
+ JAXBElement<UsernameTokenType> tokenType =
+ new JAXBElement<UsernameTokenType>(
+ QNameConstants.USERNAME_TOKEN, UsernameTokenType.class, usernameTokenType
+ );
+ marshaller.marshal(tokenType, rootElement);
usernameTokenElement = (Element)rootElement.getFirstChild();
- } else {
- usernameTokenElement = secToken.getToken();
+ } catch (JAXBException ex) {
+ LOG.log(Level.WARNING, "", ex);
+ return response;
}
//