We are coming to the end of this series on the basics of OGNL.
As mentioned in my first article, Introduction to OGNL, I'm using the OGNL Language Guide as my rough outline for the topics to cover in the series. In earlier posts, I covered examples showing some of the features that you could use in your own PingFederate implementations to solve the problem of providing the proper identity information in Federation connections.
The remaining items in the Language Guide are reasonably well coveref in the Guide itself so I will just mention them here for completion.
One of the things that we used often in past articles is Collections, for example discussing curly braces and looping in my earlier posts OGNL: What about those curly braces and also Looping in OGNL and Looping in OGNL take 2. Since Collections don't follow the JavaBean pattern, certain methods such as size() or iterator() are exposed as pseudo-properties. This means that you can reference then by simply using the name, for example:
Refer to Pseudo-Properties for Collections in the OGNL Language Guide for more details
We have talked about some of the Operators that differ from Java's operators such as the comma, as I described in Declaring variables in OGNL. Reviewing the Language Guide is always a good source when you are trying to solve a problem using OGNL.
Sometimes just knowing what we have is not enough so you may want to review Coercing Objects to Types in the OGNL Language Guide, which describes how OGNL interprets (coerces) objects as various types, such as booleans, numbers, integers, and collections.
Let me know of any additional topics on OGNL you would like to see by posting comments to this article. Follow me on Twitter.