本文整理汇总了Java中org.opensaml.xml.schema.XSAny类的典型用法代码示例。如果您正苦于以下问题:Java XSAny类的具体用法?Java XSAny怎么用?Java XSAny使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
XSAny类属于org.opensaml.xml.schema包,在下文中一共展示了XSAny类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: wrongFrameworkHeaderShouldFail
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
@Test
public void wrongFrameworkHeaderShouldFail() throws Exception {
SOAPClientStub soapClient = new SOAPClientStub();
serviceClient.setSOAPClient(soapClient);
serviceClient.sendRequest(req, getProperty("endpoint"), getProperty("action"), null, null);
Envelope env = (Envelope) SAMLUtil.unmarshallElementFromString(soapClient.xml);
XSAny framework = (XSAny) env.getHeader().getUnknownXMLObjects(new QName("urn:liberty:sb:2006-08", "Framework")).get(0);
framework.getUnknownAttributes().put(new QName("version"), "1.0");
env.getHeader().getUnknownXMLObjects().remove(SAMLUtil.getFirstElement(env.getHeader(), Security.class));
OIOSoapEnvelope e = new OIOSoapEnvelope(env, true, new SigningPolicy(true));
e.addSecurityTokenReference(token, Boolean.valueOf(getProperty("protectTokens")));
e.setTimestamp(5);
try {
new HttpSOAPClient().wsCall(getProperty("endpoint"), null, null, true, XMLHelper.nodeToString(e.sign(credential)), getProperty("action"));
} catch (SOAPException ex) {
assertEquals(new QName("urn:liberty:sb:2006-08", "FrameworkVersionMismatch"), ex.getFault().getCode().getValue());
}
}
示例2: buildEnvelope
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/**
* Build a new soap envelope with standard OIO headers.
*
* Standard headers include sbf:Framework, wsa:MessageID, and an empty Security header.
*/
public static OIOSoapEnvelope buildEnvelope(String soapVersion, SigningPolicy signingPolicy, boolean includeFrameworkHeader) {
Envelope env = envelopeBuilder.buildObject(soapVersion, "Envelope", "s");
Header header = headerBuilder.buildObject(soapVersion, "Header", "s");
env.setHeader(header);
MessageID msgId = SAMLUtil.buildXMLObject(MessageID.class);
msgId.setValue("urn:uuid:" + UUID.randomUUID().toString());
header.getUnknownXMLObjects().add(msgId);
XSAny framework = null;
if (includeFrameworkHeader) {
framework = new XSAnyBuilder().buildObject("urn:liberty:sb:2006-08", "Framework", "sbf");
framework.getUnknownAttributes().put(new QName("version"), "2.0");
framework.getUnknownAttributes().put(new QName("urn:liberty:sb:profile", "profile"), "urn:liberty:sb:profile:basic");
framework.getUnknownAttributes().put(new QName(soapVersion, "mustUnderstand"), "1");
header.getUnknownXMLObjects().add(framework);
}
Security security = SAMLUtil.buildXMLObject(Security.class);
security.getUnknownAttributes().put(new QName(env.getElementQName().getNamespaceURI(), "mustUnderstand"), "1");
env.getHeader().getUnknownXMLObjects().add(security);
return new OIOSoapEnvelope(env, msgId, framework, signingPolicy);
}
示例3: buildFault
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
public Envelope buildFault(String request) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException, MarshalException, XMLSignatureException {
Envelope r = buildResponse(request, false);
r.getBody().getUnknownXMLObjects().clear();
Fault fault = SAMLUtil.buildXMLObject(Fault.class);
Detail detail = SAMLUtil.buildXMLObject(Detail.class);
FaultString msg = SAMLUtil.buildXMLObject(FaultString.class);
msg.setValue("test");
fault.setMessage(msg);
fault.setDetail(detail);
XSAny d = new XSAnyBuilder().buildObject("urn:test", "fault", "fa");
detail.getUnknownXMLObjects().add(d);
r.getBody().getUnknownXMLObjects().add(fault);
return r;
}
示例4: failOnMissingPrivilege
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
@Test
public void failOnMissingPrivilege() throws Exception {
final OIOAssertion assertion = getAssertion("assertion.xml", "1029275212");
Attribute attr = AttributeUtil.createAttribute(Constants.AUTHORISATIONS_ATTRIBUTE, "", "uri");
XSAnyBuilder builder = new XSAnyBuilder();
XSAny ep = builder.buildObject(SAMLConstants.SAML20_NS, AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
XSAnyUnmarshaller unmarshaller = new XSAnyUnmarshaller();
XMLObject val = unmarshaller.unmarshall(SAMLUtil.loadElementFromString(IOUtils.toString(getClass().getResourceAsStream("authorisations.xml"))));
ep.getUnknownXMLObjects().add(val);
attr.getAttributeValues().add(ep);
assertion.getAssertion().getAttributeStatements().get(0).getAttributes().add(attr);
context.checking(new Expectations() {{
one(req).getUserPrincipal(); will(returnValue(new OIOPrincipal(new UserAssertionImpl(assertion))));
one(req).getSession();
one(req).getRequestURI(); will(returnValue("/context/admin"));
one(req).getContextPath(); will(returnValue("/context"));
one(req).getMethod(); will(returnValue("post"));
one(res).sendError(with(equal(HttpServletResponse.SC_FORBIDDEN)), with(any(String.class)));
}});
filter.doFilter(req, res, chain);
}
示例5: testGrantAccess
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
@Test
public void testGrantAccess() throws Exception {
final OIOAssertion assertion = getAssertion("assertion.xml", "1029275212");
Attribute attr = AttributeUtil.createAttribute(Constants.AUTHORISATIONS_ATTRIBUTE, "", "uri");
XSAnyBuilder builder = new XSAnyBuilder();
XSAny ep = builder.buildObject(SAMLConstants.SAML20_NS, AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
XSAnyUnmarshaller unmarshaller = new XSAnyUnmarshaller();
XMLObject val = unmarshaller.unmarshall(SAMLUtil.loadElementFromString(IOUtils.toString(getClass().getResourceAsStream("authorisations.xml"))));
ep.getUnknownXMLObjects().add(val);
attr.getAttributeValues().add(ep);
assertion.getAssertion().getAttributeStatements().get(0).getAttributes().add(attr);
context.checking(new Expectations() {{
one(req).getUserPrincipal(); will(returnValue(new OIOPrincipal(new UserAssertionImpl(assertion))));
one(req).getSession();
one(req).getRequestURI(); will(returnValue("/context/test"));
one(req).getContextPath(); will(returnValue("/context"));
one(req).getMethod(); will(returnValue("post"));
one(chain).doFilter(req, res);
}});
filter.doFilter(req, res, chain);
}
示例6: extractAttributeValueValue
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/**
* Extract the value of the first attributeValue within an SAML20 attribute
*
* @param attribute
* The attribute
* @return The text value of the attributeValue
*/
public static String extractAttributeValueValue(Attribute attribute) {
for (int i = 0; i < attribute.getAttributeValues().size(); i++) {
if (attribute.getAttributeValues().get(i) instanceof XSString) {
XSString str = (XSString) attribute.getAttributeValues().get(i);
if (AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME.equals(str.getElementQName().getLocalPart())
&& SAMLConstants.SAML20_NS.equals(str.getElementQName().getNamespaceURI())) {
return str.getValue();
}
} else {
XSAny ep = (XSAny) attribute.getAttributeValues().get(i);
if (AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME.equals(ep.getElementQName().getLocalPart())
&& SAMLConstants.SAML20_NS.equals(ep.getElementQName().getNamespaceURI())) {
if (ep.getUnknownXMLObjects().size() > 0) {
StringBuilder res = new StringBuilder();
for (XMLObject obj : ep.getUnknownXMLObjects()) {
res.append(XMLHelper.nodeToString(SAMLUtil.marshallObject(obj)));
}
return res.toString();
}
return ep.getTextContent();
}
}
}
return null;
}
示例7: createAttributeStatement
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
private static AttributeStatement createAttributeStatement() {
AttributeStatement attributeStatement = create(AttributeStatement.DEFAULT_ELEMENT_NAME);
for (AttributeData attributeData : samlResponseData.getAttributes()) {
Attribute attribute = create(Attribute.DEFAULT_ELEMENT_NAME);
attribute.setFriendlyName(attributeData.getFriendlyName());
attribute.setName(attributeData.getName());
attribute.setNameFormat(attributeData.getNameFormat());
XMLObjectBuilder<XSAny> builder = getXMLObjectBuilder(XSAny.TYPE_NAME);
for (String values : attributeData.getValue().split(";", -1)) {
XSAny value = builder
.buildObject(AttributeValue.DEFAULT_ELEMENT_NAME);
value.setTextContent(values);
attribute.getAttributeValues().add(value);
}
attributeStatement.getAttributes().add(attribute);
}
return attributeStatement;
}
示例8: marshallAttributes
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/** {@inheritDoc} */
protected void marshallAttributes(XMLObject xmlObject, Element domElement) throws MarshallingException {
XSAny xsAny = (XSAny) xmlObject;
Attr attribute;
for (Entry<QName, String> entry : xsAny.getUnknownAttributes().entrySet()) {
attribute = XMLHelper.constructAttribute(domElement.getOwnerDocument(), entry.getKey());
attribute.setValue(entry.getValue());
domElement.setAttributeNodeNS(attribute);
if (Configuration.isIDAttribute(entry.getKey())
|| xsAny.getUnknownAttributes().isIDAttribute(entry.getKey())) {
attribute.getOwnerElement().setIdAttributeNode(attribute, true);
}
}
}
示例9: marshallElementContent
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/** {@inheritDoc} */
protected void marshallElementContent(XMLObject xmlObject, Element domElement) throws MarshallingException {
XSAny xsAny = (XSAny) xmlObject;
if (xsAny.getTextContent() != null) {
XMLHelper.appendTextContent(domElement, xsAny.getTextContent());
}
}
示例10: processChildElement
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/** {@inheritDoc} */
protected void processChildElement(XMLObject parentXMLObject, XMLObject childXMLObject)
throws UnmarshallingException {
XSAny xsAny = (XSAny) parentXMLObject;
xsAny.getUnknownXMLObjects().add(childXMLObject);
}
示例11: processAttribute
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/** {@inheritDoc} */
protected void processAttribute(XMLObject xmlObject, Attr attribute) throws UnmarshallingException {
XSAny xsAny = (XSAny) xmlObject;
QName attribQName = XMLHelper.constructQName(attribute.getNamespaceURI(), attribute.getLocalName(), attribute
.getPrefix());
if (attribute.isId()) {
xsAny.getUnknownAttributes().registerID(attribQName);
}
xsAny.getUnknownAttributes().put(attribQName, attribute.getValue());
}
示例12: getString
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
private String getString(XMLObject xmlValue) {
if (xmlValue instanceof XSString) {
return ((XSString) xmlValue).getValue();
} else if (xmlValue instanceof XSAny) {
return ((XSAny) xmlValue).getTextContent();
} else {
return null;
}
}
示例13: getXMLObject
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/**
* @see BRSSAMLExtensionObject#getXMLObject()
*/
public XMLObject getXMLObject() {
XSAnyBuilder builder = new XSAnyBuilder();
XSAny ep = builder.buildObject(OIOSAMLConstants.BRS_NS, DEFAULT_ELEMENT_LOCAL_NAME, OIOSAMLConstants.BRS_PREFIX);
ep.setTextContent(String.valueOf(value));
return ep;
}
示例14: createAttributeValue
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
private static XSAny createAttributeValue() {
XSAnyBuilder builder = new XSAnyBuilder();
XSAny ep = builder.buildObject(SAMLConstants.SAML20_NS,
AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME,
SAMLConstants.SAML20_PREFIX);
return ep;
}
示例15: extractAttributeValueValues
import org.opensaml.xml.schema.XSAny; //导入依赖的package包/类
/**
* Extract all attribute values within an SAML20 attribute
*
* @param attribute The attribute
* @return A list containing the text value of each attributeValue
*/
public static List<String> extractAttributeValueValues(Attribute attribute) {
List<String> values = new ArrayList<String>();
for (int i = 0; i < attribute.getAttributeValues().size(); i++) {
if (attribute.getAttributeValues().get(i) instanceof XSString) {
XSString str = (XSString) attribute.getAttributeValues().get(i);
if (AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME.equals(str.getElementQName().getLocalPart())
&& SAMLConstants.SAML20_NS.equals(str.getElementQName().getNamespaceURI())) {
values.add(str.getValue());
}
} else {
XSAny ep = (XSAny) attribute.getAttributeValues().get(i);
if (AttributeValue.DEFAULT_ELEMENT_LOCAL_NAME.equals(ep.getElementQName().getLocalPart())
&& SAMLConstants.SAML20_NS.equals(ep.getElementQName().getNamespaceURI())) {
if (ep.getUnknownXMLObjects().size() > 0) {
StringBuilder res = new StringBuilder();
for (XMLObject obj : ep.getUnknownXMLObjects()) {
res.append(XMLHelper.nodeToString(SAMLUtil.marshallObject(obj)));
}
values.add(res.toString());
}
values.add(ep.getTextContent());
}
}
}
return values;
}