Improve company productivity with a Business Account.Sign Up

x
?
Solved

Creating SAMLAttribute in OpenSAML 1 /Java

Posted on 2009-05-14
1
Medium Priority
?
480 Views
Last Modified: 2012-05-07
Hi,

I'm stuck using an old version of the OpenSAML 1 framework (the Java version). I'm trying to create an Attribute but am getting NullPointerExceptions. Tutorials and APIs for this early version of OpenSAML is extremely scarce, and I really hope someone here familiar with OpenSAML 1 can help me.

The NullPointer occurs when I'm transforming the AttributeStatement to a DOM tree. See code snippet.
SAMLAttributeStatement attributeStatement = new SAMLAttributeStatement();
Collection attribute = new ArrayList();
attribute.add("sv-se");
QName qualifiedName = new QName("saml", "AttributeValue");
SAMLAttribute samlAttribute = new SAMLAttribute("LanguageCulture",
                 "http://schemas.visma.com/saml/2009/03/languageCulture",
                 qualifiedName,
                 100,
                 attribute
);
attributeStatement.addAttribute(samlAttribute);
 
(...)
 
samlAssertion.addStatement(attributeStatement);
 
(...)
 
samlResponse.addAssertion(samlAssertion);
 
(...)
 
samlResponse.toDOM();

Open in new window

0
Comment
Question by:thecosimist
1 Comment
 

Accepted Solution

by:
thecosimist earned 0 total points
ID: 24392855
I have found the solution - the SAMLAttributeStatement expects a Subject element, so what is needed is something like the code below.

I realize that this might be a rather obscure field of interest :-) but I'm posting the solution anyway.
...
SAMLAttribute samlAttribute = new SAMLAttribute(...);
SAMLSubject subject = new SAMLSubject(...);
Collection<SAMLAttribute> attributes = new ArrayList<SAMLAttribute>();
attributes.add(samlAttribute);
SAMLAttributeStatement attributeStatement = new SAMLAttributeStatement(subject, attributes);
...

Open in new window

0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Create a Windows 10 custom Image with custom task bar and custom start menu using XML for deployment.
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…

608 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question