}
public void loadAndStart() {
// ʹ��wizard��֤�����û�����
ConfigDescriptor[] descriptors = getAllDescriptors();
PropertiesSet props = settings.getPropertiesSet();
ConfigWizard wizard = new ConfigWizard(descriptors, props, settings.getCharset());
boolean valid = wizard.validate();
String interactiveMode = settings.getInteractiveMode();
boolean interactiveAuto = ConfigConstant.INTERACTIVE_AUTO.equals(interactiveMode);
boolean interactiveOn = ConfigConstant.INTERACTIVE_ON.equals(interactiveMode);
if (interactiveOn || (interactiveAuto && !valid)) {
if (!valid) {
StringBuffer confirm = new StringBuffer();
confirm.append("�q������������������������������������������������������\n");
confirm.append("��\n");
confirm.append("�� ���������ļ���Ҫ�����£�\n");
confirm.append("��\n");
confirm.append("�� ").append(props.getUserPropertiesFile().getURI()).append("\n");
confirm.append("��\n");
confirm.append("�� ����ļ������������˵��������ã�\n");
confirm.append("�� �����������˿ڡ������ʼ���ַ�����ݡ�\n");
confirm.append("��\n");
confirm.append("��������������������������������������\n");
confirm.append("\n").append(" ��������´��ļ������ܻᵼ�������ļ������ݲ�������\n");
confirm.append(" ����Ҫ���ڸ��´��ļ���?");
wizard.setConfirmMessage(confirm.toString());
}
wizard.start();
valid = wizard.validate();
}
// ����valid����Ϊtrue�����׳��쳣
if (!valid) {
throw new ConfigWizardException("��Ϊ�����ļ���" + props.getUserPropertiesFile().getURI() + "��δ���ã�������������ȥ��");
}
}