Параметр предназначен для доступа по имени, поэтому заказы не гарантируются.
Если вы действительно нуждаетесь в них в определенном порядке, вы можете жестко закодировать имена параметров (в вашем собственном порядке) в коллекцию:
List<String> paramNames = Arrays.asList("DriverName", "Username", "Password");
for(String paramName: paramNames) {
pw.println("<br>" + context.getInitParameter(paramName));
}
Или, если вы хотите сохранить динамические параметры без какого-либо жесткого кодирования, вы можете хотя бы отсортировать их.
Enumeration<String> e = context.getInitParameterNames();
List<String> paramNames = Collections.list(e);
Collections.sort(paramNames);
for(String paramName: paramNames) {
pw.println("<br>" + context.getInitParameter(paramName));
}