Bascially, you have an entity that has properties loaded lazily. But, you care closing the session, and when the application goes to grab the lazily loaded data, there is no connection open to the database over which to do it.
I discuss the LazyLoadingException here in this
Hibernate tutorial. You might find it interesting:
Understanding How Hibernate Works
How do you avoid the LazyLoadingInitializationException? Use longer sessions. Open the Session when a request comes in, and close it when it leaves, using a ServletFilter or something. It's known as the Open Session in View Pattern, and it's a standard.
Here's more on
Hibernate transactions that you might find interesting. Query Open Session in View as well, you'll get some good stuff.
http://www.hibernate.org/42.html