Bem, iniciando os comentários Sérgio, você deveria, urgentemente, escrever um pet project usando Rails, vai lhe poupar um bocado do trabalho e pode até dar idéias melhores, além de mostrar "como" se escreve em Ruby.
Continuando os comentários, vamos aos seus exemplos:
[code=ruby]class Hello < Action
def execute
username = input.get("username")
output.put("hi", "Hello #{username.upcase}")
:SUCCESS
end
end[/code]
Isso é Java, não Ruby, em vez de ser input.get("username"), deveria ser input[:username] e o output não deveria existir, todas as variáveis de instância da action deveriam ser copiadas pra view, assim como o Merb e Rails fazem. Outra coisa, o :SUCCESS também deveria ser desnecessário, além do que, não se usa maiúsculas em tudo pra nada em Ruby que não seja uma constante, então não use esse símbolo só com letras maiúsculas, use só com menúsculas e seria bom assumir que se a action não retorna nada, ela é um ":success", fazer com que o usuário sempre diga o óbvio é perda de tempo.
Então esse código deveria ser algo assim:
[code=ruby]class Hello < Action
def execute
@hi = "Hello #{input[:username].upcase}"
end
end[/code]
Continuando, isso é assustador:
<h2>Hello MentaOnRuby</h2>
<h3><%= "#{action.output.get('hi')}" %></h3>
Mais uma vez, isso é Java, não tem nada de Ruby, em Rails ou no próprio Merb seria simplesmente:
<h2>Hello MentaOnRuby</h2>
<h3><%= @hi %></h3>
Outra coisa, portar um framework Java pra Ruby pra aprender Ruby é uma péssima idéia, porque você vai querer portar ele como você fazia em Java (e é exatamente isso que você está fazendo) e isso não faz o menor sentido, o melhor é você começar a ver como se escreve aplicações usando Rails e Merb e depois ver o que o Mentawai tem de interessante pra ser levado pra Ruby.