1 45 package org.openejb.webadmin.main; 46 47 import java.io.PrintWriter ; 48 49 import org.exolab.castor.mapping.xml.MappingRoot; 50 import org.openejb.util.HtmlUtilities; 51 import org.openejb.util.StringUtilities; 52 53 56 public class CMPMappingWriter { 57 public static final String FORM_FIELD_JDBC_DRIVER = "jdbcDriver"; 58 public static final String FORM_FIELD_FILE_NAME = "fileName"; 59 public static final String FORM_FIELD_JNDI_NAME = "jndiName"; 60 public static final String FORM_FIELD_DB_ENGINE = "dbEngine"; 61 public static final String FORM_FIELD_DRIVER_CLASS = "driverClass"; 62 public static final String FORM_FIELD_DRIVER_URL = "driverUrl"; 63 public static final String FORM_FIELD_USERNAME = "mappingUsername"; 64 public static final String FORM_FIELD_PASSWORD = "mappingPassword"; 65 public static final String FORM_FIELD_SUBMIT_DB_INFO = "submitDBInfo"; 66 public static final String FORM_FIELD_HANDLE_FILE = "handleFile"; 67 public static final String FORM_FIELD_CLASS_NAME = "className"; 68 public static final String FORM_FIELD_IDENTITY_FIELD = "identityField"; 69 70 76 public static void printDBInfo(PrintWriter body, String errorMessage, DatabaseData databaseData, String handleFile) { 77 body.println("<form action=\"CMPMapping\" method=\"post\" enctype=\"multipart/form-data\">"); 78 body.println("<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">"); 79 body.print("<tr>\n<td colspan=\"2\"><strong>Step 1:</strong> Choose database options."); 80 body.println("The bold fields are required.</td>\n</tr>"); 81 82 if (!"".equals(errorMessage)) { 84 body.print("<tr>\n<td colspan=\"2\"><font color=\"red\"><b>"); 85 body.print(errorMessage); 86 body.println("</b></font></td>\n</tr>"); 87 } 88 89 body.println("<tr>\n<td colspan=\"2\"> </td>\n</tr>"); 90 body.print("<tr>\n<td>JDBC Driver "); 91 body.print(createHelpLink()); 92 body.println("</td>\n<td>"); 93 body.println(HtmlUtilities.createFileFormField(FORM_FIELD_JDBC_DRIVER, "", 25)); 94 body.print("</td>\n</tr>\n<tr>\n<td><b>File Names</b> "); 95 body.print(createHelpLink()); 96 body.println("</td>\n<td>"); 97 body.println( 98 HtmlUtilities.createTextFormField( 99 FORM_FIELD_FILE_NAME, 100 StringUtilities.nullToBlankString(databaseData.getFileName()), 101 10, 102 25)); 103 body.println(".cmp_local/global_database.xml</td>\n</tr>"); 104 body.print("<tr>\n<td><b>DB Engine</b> "); 105 body.print(createHelpLink()); 106 body.println("</td>\n<td>"); 107 body.println( 108 HtmlUtilities.createTextFormField( 109 FORM_FIELD_DB_ENGINE, 110 StringUtilities.nullToBlankString(databaseData.getDbEngine()), 111 20, 112 0)); 113 body.print("</td>\n</tr>\n<tr>\n<td><b>JNDI Name</b> "); 114 body.print(createHelpLink()); 115 body.println("</td>\n<td>"); 116 body.println( 117 HtmlUtilities.createTextFormField( 118 FORM_FIELD_JNDI_NAME, 119 StringUtilities.nullToBlankString(databaseData.getJndiName()), 120 20, 121 0)); 122 body.print("</td>\n</tr>\n<tr>\n<td><b>Driver Class</b> "); 123 body.print(createHelpLink()); 124 body.println("</td>\n<td>"); 125 body.println( 126 HtmlUtilities.createTextFormField( 127 FORM_FIELD_DRIVER_CLASS, 128 StringUtilities.nullToBlankString(databaseData.getDriverClass()), 129 25, 130 0)); 131 body.print("</td>\n</tr>\n<tr>\n<td><b>Driver URL</b> "); 132 body.print(createHelpLink()); 133 body.println("</td>\n<td>"); 134 body.println( 135 HtmlUtilities.createTextFormField( 136 FORM_FIELD_DRIVER_URL, 137 StringUtilities.nullToBlankString(databaseData.getDriverUrl()), 138 25, 139 0)); 140 body.print("</td>\n</tr>\n<tr>\n<td>Username "); 141 body.print(createHelpLink()); 142 body.println("</td>\n<td>"); 143 body.println( 144 HtmlUtilities.createTextFormField( 145 FORM_FIELD_USERNAME, 146 StringUtilities.nullToBlankString(databaseData.getUsername()), 147 20, 148 0)); 149 body.print("</td>\n</tr>\n<tr>\n<td>Password "); 150 body.print(createHelpLink()); 151 body.println("</td>\n<td>"); 152 body.println( 153 HtmlUtilities.createTextFormField( 154 FORM_FIELD_PASSWORD, 155 StringUtilities.nullToBlankString(databaseData.getPassword()), 156 20, 157 0)); 158 body.println("</td>\n</tr>\n<tr>\n<td colspan=\"2\"> </td>\n</tr>"); 159 body.println("<tr>\n<td colspan=\"2\">"); 160 body.println(HtmlUtilities.createSubmitFormButton(FORM_FIELD_SUBMIT_DB_INFO, "Continue")); 161 body.println(HtmlUtilities.createHiddenFormField(FORM_FIELD_HANDLE_FILE, handleFile)); 162 body.println("</td>\n</tr>\n</table>\n</form>"); 163 } 164 165 168 public static void printMappingInfo(PrintWriter body, String handleFile, MappingRoot mappingRoot) { 169 body.println("Step 2: Map the fields in the database to the fields in your entity bean. "); 170 body.println("Once you map the field, the page will reload and your mapping will appear in"); 171 body.println("the table at the bottom of the page. The bold fields are required."); 172 body.println("<form action=\"CMPMapping\" method=\"post\">"); 173 body.println("<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">"); 174 175 body.print("<tr>\n<td><b>Class Name</b> "); 176 body.print(createHelpLink()); 177 body.print("</td>\n<td>"); 178 body.print(HtmlUtilities.createTextFormField(FORM_FIELD_CLASS_NAME, "", 30, 0)); 179 body.print("</td>\n</tr>\n<tr>\n<td><b>Identity Field</b> "); 180 body.print(createHelpLink()); 181 body.print("</td>\n<td>"); 182 body.print(HtmlUtilities.createTextFormField(FORM_FIELD_IDENTITY_FIELD, "", 20, 0)); 183 body.println("</table>\n</form>"); 184 } 185 186 190 private static String createHelpLink() { 191 return HtmlUtilities.createAnchor( 192 "javascript:popUpHelp('help/mapping/help.html')", 193 "(?)", 194 HtmlUtilities.ANCHOR_HREF_TYPE); 195 } 196 197 } 198 | Popular Tags |