The Primitive Assertion:
package com.hcsc.security.sts;
import org.apache.cxf.ws.security.policy.SP12Constants;
import org.apache.neethi.builders.PrimitiveAssertion;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamWriter;
public class SmSessionAssertion extends PrimitiveAssertion {
// class level logger
private static final Logger logger =
LoggerFactory.getLogger(SmSessionAssertion.class);
public SmSessionAssertion() {
super();
}
@Override
public QName getName() {
return Constants.QN_SMSESSION_TOKEN;
}
@Override
public void serialize(XMLStreamWriter writer) throws XMLStreamException
{
// method's name
String methodName = "serialize()";
logger.info(methodName + ": entered.");
QName name = Constants.QN_SMSESSION_TOKEN;
String localname = name.getLocalPart();
String namespaceURI = name.getNamespaceURI();
String prefix = writer.getPrefix(namespaceURI);
if (prefix == null) {
prefix = name.getPrefix();
writer.setPrefix(prefix, namespaceURI);
}
// <hcsc:SmSessionToken>
writer.writeStartElement(prefix, localname, namespaceURI);
writer.writeNamespace(prefix, namespaceURI);
writer.writeAttribute(prefix, namespaceURI,
SP12Constants.ATTR_INCLUDE_TOKEN, SP12Constants.INCLUDE_ALWAYS);
String pPrefix =
writer.getPrefix(SP12Constants.POLICY.getNamespaceURI());
if (pPrefix == null) {
pPrefix = SP12Constants.POLICY.getPrefix();
writer.setPrefix(SP12Constants.POLICY.getPrefix(),
SP12Constants.POLICY.getNamespaceURI());
}
// <wsp:Policy>
writer.writeStartElement(pPrefix,
SP12Constants.POLICY.getLocalPart(),
SP12Constants.POLICY.getNamespaceURI());
// </wsp:Policy>
writer.writeEndElement();
writer.writeEndElement();
// </hcsc:SmSessionToken>
logger.info(methodName + ": exiting...");
}
}
--
View this message in context:
http://cxf.547215.n5.nabble.com/PolicyException-when-using-BST-with-custom-ValueType-tp5743444p5743551.html
Sent from the cxf-user mailing list archive at Nabble.com.