<h: inputSecret /> Segurança: existe uma maneira de usar uma referência direta a char [] em vez de uma String?

Preâmbulo: Isso pode ser um erro gigante de noob, todos os desenvolvedores da minha equipe estão um pouco confusos no Java 101 aqui, então, se estamos preocupados com nada, por favor me avise. [preocupado com os literais de String armazenados em cache no permgen para ser específico]

Temos uma página de login simples que se parece basicamente com: // Backing Bean "LoginBean"

  String username;
  String password;
  //getter/setter pairs

// JSF

  <h:form id="login">
    <h:inputText value="#{loginBean.username} />
    <h:inputSecret value="#{loginBean.password} />
    <h:commandButton actionListener="#{loginBean.login} />
  </h:form>

Minha preocupação aqui é que um literal de cadeia que está sendo passado possa ser armazenado em cache e abrir possíveis falhas de segurança. Existe uma maneira de configurar isso para que ignoremos completamente uma string literal? Se esse fosse um aplicativo Swing, eu estaria usando JPasswordField, que explicitamente possui "char [] getPassword ();"

ou no código que eu quero:

String username;
char[] password;

Obrigado pela ajuda, se for um post duplo, sinta-se à vontade para me dar um tapa, não consigo encontrá-lo, mas parece um problema centra

questionAnswers(1)

yourAnswerToTheQuestion