Ordenação com Struts?

Pessoal, estou com uma dúvida conceitual:

Quando devo utilizar cada um dos componentes Hashtable, LinkedList, TreeMap?

Pegunto isso por que em minha aplicação estou tendo problemas com a ordenação nos Hashtables em que armazeno VO’S, qdo ordeno o hashtable ele até funciona, no entanto na exibição pela logic iterate apresenta o resultado de forma desordenada, acho que está relacionado com fato de ser uma pilha.

Então, como faço para ordenar listagens de Objetos em minha aplicação?
e o que é melhor utilizar, Hash, Linked ou Maps?

Por natureza, o TreeMap sempre armazena os dados já ordenados