- Timestamp:
- 2012-03-28T15:45:03+13:00 (12 years ago)
- Location:
- main/trunk/greenstone3
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/build.xml
r25214 r25308 1214 1214 1215 1215 </if> 1216 </target> 1217 1218 <!-- This target won't work with Eclipse because the SecureInputHandler used below conflicts with it. 1219 See http://www.dcepler.net/post.cfm/hiding-password-input-in-ant 1220 But you can do: echo mypassword | ant config-admin --> 1221 <target name="config-admin" description="Reset admin password"> 1222 <input addproperty="admin.password" defaultvalue="admin" message="New admin password (3-8 characters):>"> 1223 <handler classname="org.apache.tools.ant.input.SecureInputHandler" /> <!-- password won't be visible on screen --> 1224 </input> 1225 <!--<echo>${admin.password}</echo>--> <!-- for testing --> 1226 <java classname="org.greenstone.gsdl3.util.ChangePwdUsersDB"> 1227 <classpath refid="compile.classpath"/> <!--for ${web.lib}/gsdl3.jar and supporting files--> 1228 <arg file="${web.home}/sites/localsite/etc/usersDB"/> 1229 <arg value="admin"/> 1230 <arg value="${admin.password}"/> 1231 </java> 1216 1232 </target> 1217 1233 -
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/util/DerbyWrapper.java
r25261 r25308 345 345 } 346 346 347 // findUser(null) will return all users, which is why a UserQueryResult 348 // (a vector of UserTermInfo) is returned 347 349 public UserQueryResult findUser(String username) throws SQLException 348 350 { … … 464 466 public void db2txt() 465 467 { 466 try 467 { 468 conn.setAutoCommit(false); 468 System.err.println(db2txtString()); 469 } 470 471 public String db2txtString() 472 { 473 //String db2txt = "Error in converting db2txt string."; 474 String db2txt = ""; 475 try 476 { 477 conn.setAutoCommit(false); // An exception at this line can happen when the GS3 tomcat server is already running 478 // and GS3 is already accessing the usersDB when this function independently tries to 479 // connect to it (via usersDB2txt.java's main(). For an explanation of the possible 480 // reasons, see http://db.apache.org/derby/papers/DerbyTut/embedded_intro.html 481 // section "Embedded Derby supports multiple users in one JVM". 469 482 String sql_list_all_user = "select username, password, accountstatus, comment, email from " + USERS; 470 483 ResultSet rs = state.executeQuery(sql_list_all_user); … … 497 510 } 498 511 conn.commit(); 499 500 System.err.println("-------------------------------------"); 501 System.err.println("USERNAME = " + user.get("username")); 502 System.err.println("PASSWORD = " + user.get("password")); 503 System.err.println("GROUPS = " + returnedGroups); 504 System.err.println("STATUS = " + user.get("status")); 505 System.err.println("COMMENT = " + user.get("comment")); 506 System.err.println("EMAIL = " + user.get("email")); 507 System.err.println("-------------------------------------"); 512 513 StringBuffer buffer = new StringBuffer();//("-------------------------------------"); 514 buffer.append("USERNAME = " + user.get("username")); 515 buffer.append("\nPASSWORD = " + user.get("password")); 516 buffer.append("\nGROUPS = " + returnedGroups); 517 buffer.append("\nSTATUS = " + user.get("status")); 518 buffer.append("\nCOMMENT = " + user.get("comment")); 519 buffer.append("\nEMAIL = " + user.get("email")); 520 buffer.append("\n-------------------------------------\n"); 521 db2txt = buffer.toString(); 508 522 } 509 523 … … 514 528 { 515 529 ex.printStackTrace(); 530 } finally { 531 return db2txt; 516 532 } 517 533 } -
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/util/txt2usersDB.java
r16869 r25308 38 38 dw.connectDatabase(args[1],false); 39 39 boolean delete_rows = dw.deleteAllUser(); 40 dw.closeDatabase(); 40 41 if (!delete_rows){ 41 42 System.out.println("Couldn't delete rows of the users table"); … … 47 48 String accountstatus=null; 48 49 String comment=null; 50 String email=null; 49 51 while ((str = in.readLine()) != null) { 50 52 //ystem.out.println(str); 51 if (str.startsWith("<")){ 53 54 if(str.indexOf(" = ") != -1) { // works with DerbyWrapper.db2txt() and usersDB2txt.java. Fields listed as: USERNAME = admin 55 String field=str.substring(0,str.indexOf(" = ")); 56 if (field.equalsIgnoreCase("email")){ 57 email=str.substring(str.indexOf(" = ")+3,str.length()); 58 } 59 if (field.equalsIgnoreCase("comment")){ 60 comment=str.substring(str.indexOf(" = ")+3,str.length()); 61 } 62 if (field.equalsIgnoreCase("status")){ 63 accountstatus=str.substring(str.indexOf(" = ")+3,str.length()); 64 } 65 if (field.equalsIgnoreCase("groups")){ 66 groups=str.substring(str.indexOf(" = ")+3,str.length()); 67 } 68 if (field.equalsIgnoreCase("password")){ 69 //password=dw.rot13(str.substring(str.indexOf(">")+1,str.length())); 70 password=str.substring(str.indexOf(" = ")+3,str.length()); 71 } 72 if (field.equalsIgnoreCase("username")){ 73 username=str.substring(str.indexOf(" = ")+3,str.length()); 74 } 75 } 76 else if (str.startsWith("<")){ // fields listed as: <username>admin 52 77 String field=str.substring(1,str.indexOf(">")); 78 if (field.equals("email")){ 79 email=str.substring(str.indexOf(">")+1,str.length()); 80 } 53 81 if (field.equals("comment")){ 54 82 comment=str.substring(str.indexOf(">")+1,str.length()); 55 83 } 56 if (field.equals("enabled") ){84 if (field.equals("enabled") || field.equals("status")){ 57 85 accountstatus=str.substring(str.indexOf(">")+1,str.length()); 58 86 } … … 61 89 } 62 90 if (field.equals("password")){ 63 password=dw.rot13(str.substring(str.indexOf(">")+1,str.length())); 91 //password=dw.rot13(str.substring(str.indexOf(">")+1,str.length())); 92 password=str.substring(str.indexOf(">")+1,str.length()); 64 93 } 65 94 if (field.equals("username")){ … … 67 96 } 68 97 } 69 if (str.equals("----------------------------------------------------------------------")){ 70 if ((username!=null) && (password!=null) && (groups!=null) && (accountstatus!=null) && (comment!=null)){ 98 else if (str.equals("----------------------------------------------------------------------") 99 || str.equals("-------------------------------------")) { 100 101 if ((username!=null) && (password!=null) && (groups!=null) && (accountstatus!=null) && (comment!=null) && (email!=null)) { 71 102 dw.connectDatabase(args[1],false); 72 dw.addUser(username, password, groups, accountstatus, comment );103 dw.addUser(username, password, groups, accountstatus, comment, email); 73 104 username=null; 74 105 password=null; … … 76 107 accountstatus=null; 77 108 comment=null; 78 dw.connectDatabase(args[1],false); 109 email=null; 110 //dw.connectDatabase(args[1],false); // should this be closeDatabase()???? 111 dw.closeDatabase(); 112 } 113 } 114 else { // encrypted passwords can span multiple lines for some reason 115 // assume that is the case here 116 if(password != null) { 117 password = password + "\n" + str; 79 118 } 80 119 }
Note:
See TracChangeset
for help on using the changeset viewer.