// '*','@', '#', '$', '%', '^',
//'+',
public String generatePassword()
{
RandomStrg rs = new RandomStrg();
//TODO put in a more secure random number provider
//rs.setAlgorithm(); -- ideally call this for super security. need rnd provider
try
{
rs.generateRandomObject();
} catch (JspException e)
{
// this would only get thrown if we tried a secure random and the provider
// was not available.
e.printStackTrace();
}
rs.setLength(new Integer(12));
rs.setSingle(PASS_CHARS,PASS_CHARS.length);
ArrayList upper = new ArrayList();
ArrayList lower = new ArrayList();
//upper.add(new Character('A'));
//lower.add(new Character('B'));
rs.setRanges(upper,lower);
String retval = rs.getRandom();
return retval;
}