Правка приёма JSON
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
package kz.locust.CCALM; //Главная
|
||||
package com.geovizor.monitoring; //Главная 2
|
||||
|
||||
import java.io.BufferedOutputStream;
|
||||
import java.io.BufferedWriter;
|
||||
@ -29,8 +29,8 @@ import java.util.Random;
|
||||
import java.util.zip.CRC32;
|
||||
import java.util.zip.Checksum;
|
||||
|
||||
import javax.servlet.ServletContext;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import jakarta.servlet.ServletContext;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.transform.OutputKeys;
|
||||
@ -48,7 +48,10 @@ import javax.xml.xpath.XPathFactory;
|
||||
//import org.apache.commons.fileupload.FileItem;
|
||||
//import org.apache.commons.fileupload.disk.DiskFileItemFactory;
|
||||
//import org.apache.commons.fileupload.servlet.ServletFileUpload;
|
||||
import jakarta.servlet.ServletContext;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
@ -94,18 +97,24 @@ public class DBMSRecords implements ServletContextAware {
|
||||
return new User("none");
|
||||
}
|
||||
|
||||
//Документация по @RequestBody http://javastudy.ru/spring-mvc/json-xml/
|
||||
public String sendError(int code, String message) {
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("errorCode",code);
|
||||
json.put("errorMessage",message);
|
||||
return json.toString();
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/records",method = RequestMethod.POST,produces = "application/xml; charset=utf-8")
|
||||
//Документация по @RequestBody http://javastudy.ru/spring-mvc/json-xml/ application/xml
|
||||
@RequestMapping(value = "/records.php",method = {RequestMethod.POST,RequestMethod.GET},produces = "text/plain; charset=utf-8")
|
||||
@ResponseBody
|
||||
public Object ajaxTamer(@ModelAttribute User user,@RequestBody byte[] reqData,@RequestParam(required=false,name="lng") String language_id) {
|
||||
|
||||
if(language_id!=null && !language_id.equals(""))
|
||||
user.language_id=language_id;
|
||||
logger.info("user.id="+user.id+" user.name="+user.name+" user.language_id="+user.language_id+" user.country_id="+user.country_id);
|
||||
|
||||
|
||||
boolean error=false;
|
||||
String result="<metadata fn=\"-1\"><![CDATA[Request not processed!]]></metadata>";
|
||||
String result=sendError(1,"Request not processed!");
|
||||
//response.setCharacterEncoding("UTF-8");
|
||||
|
||||
//response.getWriter().append("Served at: ").append(request.getContextPath());
|
||||
@ -114,15 +123,39 @@ public class DBMSRecords implements ServletContextAware {
|
||||
String db_url = "";
|
||||
String db_login = "";
|
||||
String db_password = "";
|
||||
String data_dir = "";
|
||||
Properties prop = new Properties();
|
||||
InputStream input = null;
|
||||
try {
|
||||
prop.load(new FileInputStream("monitoring.properties")); // load a properties file
|
||||
//Читаю настройки базы
|
||||
db_url = prop.getProperty("db.url");
|
||||
System.out.println("db.url = " + db_url);
|
||||
//dbSchema = prop.getProperty("db.schema");
|
||||
//System.out.println("db.schema = " + dbSchema);
|
||||
db_login = prop.getProperty("db.login");
|
||||
System.out.println("db.login = " + db_login);
|
||||
db_password = prop.getProperty("db.password");
|
||||
//System.out.println("db.password = " + db_password);
|
||||
data_dir = prop.getProperty("data-dir");
|
||||
} catch (IOException ex) {
|
||||
ex.printStackTrace();
|
||||
} finally {
|
||||
/*if (input != null) {
|
||||
try {
|
||||
input.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
String mail_host = "";
|
||||
String mail_port = "";
|
||||
String mail_login = "";
|
||||
String mail_password = "";
|
||||
String data_dir = "";
|
||||
//Load DB configuration from "config.xml"
|
||||
try {
|
||||
//String fullPath = context.getRealPath("/WEB-INF/config.xml");
|
||||
//File fXmlFile = new File(fullPath);
|
||||
/*try {
|
||||
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
|
||||
//Document doc = dBuilder.parse(fXmlFile);
|
||||
@ -130,13 +163,6 @@ public class DBMSRecords implements ServletContextAware {
|
||||
Element nMain = doc.getDocumentElement();
|
||||
NodeList nl = nMain.getChildNodes();
|
||||
for (int i = 0; i < nl.getLength(); i++) {
|
||||
if (nl.item(i).getNodeName().equals("db-url"))
|
||||
db_url = nl.item(i).getTextContent();
|
||||
if (nl.item(i).getNodeName().equals("db-login"))
|
||||
db_login = nl.item(i).getTextContent();
|
||||
if (nl.item(i).getNodeName().equals("db-password"))
|
||||
db_password = nl.item(i).getTextContent();
|
||||
|
||||
if (nl.item(i).getNodeName().equals("mail-host"))
|
||||
mail_host = nl.item(i).getTextContent();
|
||||
if (nl.item(i).getNodeName().equals("mail-port"))
|
||||
@ -145,16 +171,10 @@ public class DBMSRecords implements ServletContextAware {
|
||||
mail_login = nl.item(i).getTextContent();
|
||||
if (nl.item(i).getNodeName().equals("mail-password"))
|
||||
mail_password = nl.item(i).getTextContent();
|
||||
|
||||
//if (nl.item(i).getNodeName().equals("metadata"))
|
||||
// metadata_file = nl.item(i).getTextContent();
|
||||
|
||||
if (nl.item(i).getNodeName().equals("data-dir"))
|
||||
data_dir = nl.item(i).getTextContent();
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
logger.info(ex.getMessage());
|
||||
}
|
||||
}*/
|
||||
|
||||
String jspPath = context.getRealPath("/");
|
||||
|
||||
@ -174,7 +194,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
doc = dBuilder.parse(body);
|
||||
} catch (Exception ex) {
|
||||
logger.info(ex.getMessage());
|
||||
return "<metadata fn=\"-1\"><![CDATA[Parsing request error!]]></metadata>";
|
||||
//return "<metadata fn=\"-1\"><![CDATA[Parsing request error!]]></metadata>";
|
||||
return sendError(1,"Parsing request error!");
|
||||
}
|
||||
|
||||
if (doc != null) {
|
||||
@ -194,12 +215,14 @@ public class DBMSRecords implements ServletContextAware {
|
||||
logger.info("Connect is OK!");
|
||||
} else {
|
||||
error=true;
|
||||
result="<metadata fn=\"-1\"><![CDATA[An error occurred while connecting to the database!]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[An error occurred while connecting to the database!]]></metadata>";
|
||||
result=sendError(1,"An error occurred while connecting to the database!");
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
logger.info(ex.getMessage());
|
||||
error=true;
|
||||
result="<metadata fn=\"-1\"><![CDATA[An error occurred while connecting to the database!]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[An error occurred while connecting to the database!]]></metadata>";
|
||||
result=sendError(1,"An error occurred while connecting to the database!");
|
||||
}
|
||||
|
||||
try {
|
||||
@ -210,7 +233,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
error=true;
|
||||
result="<metadata fn=\"-1\"><![CDATA[An set TYPE_SCROLL_SENSITIVE!]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[An set TYPE_SCROLL_SENSITIVE!]]></metadata>";
|
||||
result=sendError(1,"An set TYPE_SCROLL_SENSITIVE!");
|
||||
}
|
||||
|
||||
//response.getWriter().append("fn="+fn);
|
||||
@ -300,7 +324,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage() + " SQL=" + sql_query);
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}finally {
|
||||
if(rs!=null) try{rs.close();}catch(SQLException ex){}
|
||||
@ -327,7 +352,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}finally {
|
||||
if(rs!=null) try{rs.close();}catch(SQLException ex){}
|
||||
@ -354,7 +380,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}finally {
|
||||
if(rs!=null) try{rs.close();}catch(SQLException ex){}
|
||||
@ -381,7 +408,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}finally {
|
||||
if(rs!=null) try{rs.close();}catch(SQLException ex){}
|
||||
@ -505,7 +533,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
rs=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -616,7 +645,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt.close();
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -705,7 +735,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt.close();
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -811,7 +842,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
pagecount = (int) Math.ceil((double) pagecount / (double) rowspagecount);
|
||||
@ -844,7 +876,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
|
||||
//перебираем RS и строим XML только из тех столбцов которые записанны в секци objects-list поля column в не зависимости от их видимости
|
||||
String xmlstring = "";
|
||||
/*String xmlstring = "";
|
||||
xmlstring += "<metadata fn=\"" + fn + "\"><type n=\"" + typename + "\" pc=\"" + pagecount + "\" pp=\"" + pagepos + "\">\n";
|
||||
|
||||
int pos = -1;
|
||||
@ -893,9 +925,69 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
|
||||
xmlstring += "</type></metadata>\n";
|
||||
result=xmlstring;*/
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("errorCode",0);
|
||||
json.put("errorMessage","");
|
||||
json.put("fn",fn);
|
||||
json.put("n",typename);
|
||||
json.put("pc",pagecount);
|
||||
json.put("pp",pagepos);
|
||||
JSONArray datas = new JSONArray();
|
||||
json.put("data",datas);
|
||||
|
||||
result=xmlstring;
|
||||
//logger.info("xmlstring = " + xmlstring);
|
||||
int pos = -1;
|
||||
|
||||
// iterate through the java resultset
|
||||
try {
|
||||
while (rs.next()) {
|
||||
pos++;
|
||||
if ((Integer.parseInt(pagepos) != -1) && ((pos < (Integer.parseInt(pagepos) * rowspagecount)) || (pos >= Integer.parseInt(pagepos) * rowspagecount + rowspagecount)))
|
||||
continue;
|
||||
|
||||
JSONObject data = new JSONObject();
|
||||
datas.put(data);
|
||||
|
||||
|
||||
String access = ""; //u = enable update field, d = enable delete field
|
||||
try {
|
||||
if (rs.getBoolean("_u") == true)
|
||||
access += "u";
|
||||
} catch (java.sql.SQLException e) {
|
||||
access += "u";
|
||||
}
|
||||
try {
|
||||
if (rs.getBoolean("_d") == true)
|
||||
access += "d";
|
||||
} catch (java.sql.SQLException e) {
|
||||
access += "d";
|
||||
}
|
||||
|
||||
String id = "";
|
||||
try {
|
||||
id = rs.getString(nTypeS.getAttributes().getNamedItem("ObjectID").getNodeValue());
|
||||
} catch (SQLException e) {
|
||||
}
|
||||
|
||||
data.put("id", id);
|
||||
data.put("a", access);
|
||||
|
||||
JSONArray row = new JSONArray();
|
||||
data.put("row",row);
|
||||
for (int i = 0; i < columns.size(); i++) {
|
||||
try {
|
||||
String val = rs.getString(columns.get(i));
|
||||
row.put(val);
|
||||
} catch (SQLException e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (NumberFormatException | DOMException | SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
}
|
||||
|
||||
result=json.toString();
|
||||
//logger.info("json = " + json);
|
||||
|
||||
rs.close();
|
||||
stmt.close();
|
||||
@ -905,7 +997,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
ex.printStackTrace();
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -997,7 +1090,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -1131,14 +1225,16 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage()+"\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
} else {
|
||||
result="<metadata fn=\"-1\"><![CDATA[Could not find the requested node!]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Could not find the requested node!]]></metadata>";
|
||||
result=sendError(1,"Could not find the requested node!");
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -1202,7 +1298,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -1217,7 +1314,6 @@ public class DBMSRecords implements ServletContextAware {
|
||||
String content = "Login is: "+ email.toLowerCase()+"\n<br> New password: <b>" + newPass+"</b>";
|
||||
content += "<br><br>Sincerely, the administration of ccalm.org.";
|
||||
|
||||
|
||||
String answer = "";
|
||||
try {
|
||||
EmailUtility.sendEmail(mail_host, mail_port, mail_login, mail_password, recipient, subject, content);
|
||||
@ -1239,13 +1335,15 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
xmlstring = "<metadata fn=\"7\"><![CDATA[" + answer + "]]></metadata>";
|
||||
} else {
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[This email address was not registered!]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[This email address was not registered!]]></metadata>";
|
||||
xmlstring=sendError(1,"This email address was not registered!");
|
||||
}
|
||||
|
||||
} else if (cmd.equals("1")) //Logout
|
||||
@ -1262,7 +1360,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -1345,7 +1444,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
+ "]]></expiration><renewal><![CDATA[" + renewal + "]]></renewal></metadata>";
|
||||
}else
|
||||
{
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error_in_login_or_password]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA["+trt(conn,"Error_in_login_or_password",user)+"]]></metadata>";
|
||||
xmlstring=sendError(1,trt(conn,"Error_in_login_or_password",user));
|
||||
}
|
||||
}
|
||||
rs.close();
|
||||
@ -1354,7 +1454,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -1363,11 +1464,40 @@ public class DBMSRecords implements ServletContextAware {
|
||||
} else if (cmd.equals("4")) //Create new user
|
||||
{
|
||||
xmlstring = "<metadata fn=\"7\"><cmd><![CDATA[4]]></cmd><![CDATA[0]]></metadata>"; //if error
|
||||
|
||||
String newPass = getRandomString(8);
|
||||
String sql_query = "select * from main.p__Users_1(4,${country_id},${surname},${name},${company},${position},${phone},${email},${password});";
|
||||
|
||||
String sql_query = "";
|
||||
String val;
|
||||
|
||||
//Check exists user by email email
|
||||
sql_query = "select id from main._users where email=LOWER(TRIM(${email}))";
|
||||
val = getSQLValue("string", email);
|
||||
sql_query = Tools.replaceAll(sql_query,"${email}", val);
|
||||
try {
|
||||
Statement stt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
|
||||
ResultSet rs = stt.executeQuery(sql_query);
|
||||
if (rs != null) {
|
||||
try {
|
||||
if (rs.next()) {
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA["+trt(conn,"E_mail_already_exists_in_the_database",user)+"]]></metadata>";
|
||||
xmlstring=sendError(1,trt(conn,"E_mail_already_exists_in_the_database",user));
|
||||
error=true;
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
}
|
||||
}
|
||||
rs.close();
|
||||
stt.close();
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}
|
||||
|
||||
if(!error) {
|
||||
String newPass = getRandomString(8);
|
||||
sql_query = "select * from main.p__Users_1(4,${country_id},${surname},${name},${company},${position},${phone},${email},${password});";
|
||||
|
||||
val = getSQLValue("i4", country_id);
|
||||
sql_query = Tools.replaceAll(sql_query,"${country_id}", val);
|
||||
val = getSQLValue("string", lastname);
|
||||
@ -1384,10 +1514,10 @@ public class DBMSRecords implements ServletContextAware {
|
||||
sql_query = Tools.replaceAll(sql_query,"${email}", val);
|
||||
val = getSQLValue("string", newPass);
|
||||
sql_query = Tools.replaceAll(sql_query,"${password}", val);
|
||||
|
||||
|
||||
//logger.info("sql_query = " + sql_query);
|
||||
|
||||
|
||||
|
||||
|
||||
try {
|
||||
Statement stt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
|
||||
ResultSet rs = stt.executeQuery(sql_query);
|
||||
@ -1395,13 +1525,13 @@ public class DBMSRecords implements ServletContextAware {
|
||||
try {
|
||||
if (rs.next()) {
|
||||
xmlstring = "<metadata fn=\"7\"><cmd><![CDATA[4]]></cmd><![CDATA[1]]></metadata>";
|
||||
|
||||
|
||||
//Отправляем пароль на Email
|
||||
String recipient = email;
|
||||
String subject = "Password for new user on http://www.ccalm.org";
|
||||
String content = "Login is: "+ email.toLowerCase()+"\n<br> Password: <b>" + newPass+"</b>";
|
||||
content += "<br><br>Sincerely, the administration of ccalm.org.";
|
||||
|
||||
|
||||
//String answer = "";
|
||||
try {
|
||||
EmailUtility.sendEmail(mail_host, mail_port, mail_login, mail_password, recipient, subject, content);
|
||||
@ -1413,7 +1543,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
//request.setAttribute("Message", resultMessage);
|
||||
//context.getRequestDispatcher("/Result.jsp").forward(request, response);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
@ -1425,10 +1555,12 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//xmlstring = "<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
xmlstring=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
result=xmlstring;
|
||||
//logger.info("xmlstring = " + xmlstring);
|
||||
@ -1455,7 +1587,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -1635,7 +1768,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (IOException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage());
|
||||
error=true;
|
||||
} finally {
|
||||
try {
|
||||
@ -1652,7 +1786,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
stt=null;
|
||||
} catch (SQLException ex) {
|
||||
logger.info(ex.getMessage());
|
||||
result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
//result="<metadata fn=\"-1\"><![CDATA[Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query + "]]></metadata>";
|
||||
result=sendError(1,"Error: " + ex.getMessage() + "\n\nSQL query: " + sql_query);
|
||||
error=true;
|
||||
}
|
||||
}
|
||||
@ -1749,7 +1884,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
*/
|
||||
|
||||
} else {
|
||||
result="<metadata fn=\"-1\"><![CDATA[Unknown function \"" + fn + "\" !]]></metadata>";
|
||||
result=sendError(1,"Unknown function \"" + fn + "\" !");
|
||||
error=true;
|
||||
}
|
||||
|
||||
@ -1763,8 +1898,8 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setServletContext(ServletContext context) {
|
||||
this.context=context;
|
||||
public void setServletContext(ServletContext servletContext) {
|
||||
this.context=servletContext;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1775,7 +1910,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
public FileSystemResource home(HttpServletResponse response,@ModelAttribute User user,@RequestParam(required=false,name="t") String typename,@RequestParam(required=false,name="f") String field,@RequestParam(required=false,name="i") String id) {
|
||||
|
||||
String metadata_file = "";
|
||||
String db_url = "";
|
||||
/*String db_url = "";
|
||||
String db_login = "";
|
||||
String db_password = "";
|
||||
//String data_dir = "";
|
||||
@ -1805,6 +1940,33 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
logger.info(ex.getMessage());
|
||||
}*/
|
||||
String db_url="";
|
||||
String db_login="";
|
||||
String db_password="";
|
||||
Properties prop = new Properties();
|
||||
InputStream input = null;
|
||||
try {
|
||||
prop.load(new FileInputStream("monitoring.properties")); // load a properties file
|
||||
//Читаю настройки базы
|
||||
db_url = prop.getProperty("db.url");
|
||||
System.out.println("db.url = " + db_url);
|
||||
//dbSchema = prop.getProperty("db.schema");
|
||||
//System.out.println("db.schema = " + dbSchema);
|
||||
db_login = prop.getProperty("db.login");
|
||||
System.out.println("db.login = " + db_login);
|
||||
db_password = prop.getProperty("db.password");
|
||||
//System.out.println("db.password = " + db_password);
|
||||
} catch (IOException ex) {
|
||||
ex.printStackTrace();
|
||||
} finally {
|
||||
/*if (input != null) {
|
||||
try {
|
||||
input.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
|
||||
@ -1919,7 +2081,6 @@ public class DBMSRecords implements ServletContextAware {
|
||||
|
||||
String result="";
|
||||
String data_dir="";
|
||||
|
||||
|
||||
try {
|
||||
//String fullPath = context.getRealPath("/WEB-INF/config.xml");
|
||||
@ -2157,7 +2318,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
//Перевести слово по идентификатору из базы
|
||||
//Translate word by id from database
|
||||
public String trt(Connection conn,String key,User user)
|
||||
{
|
||||
String result="";
|
||||
@ -2165,7 +2326,7 @@ public class DBMSRecords implements ServletContextAware {
|
||||
Statement st = null;
|
||||
try {
|
||||
st = conn.createStatement();
|
||||
String sql = "select case when '"+user.language_id+"'='666' then t.translation||'''\"' alse t.translation end as translation from main._translations t where t.identifier='"+key+"' and (t.language_id='"+user.language_id+"' or ('"+user.language_id+"'='666' and t.language_id=1));";
|
||||
String sql = "select case when '"+user.language_id+"'='666' then translation||'''\"' else translation end as translation from main._translations t where t.identifier='"+key+"' and (t.language_id='"+user.language_id+"' or ('"+user.language_id+"'='666' and t.language_id=1));";
|
||||
rs = st.executeQuery(sql);
|
||||
if(rs != null) {
|
||||
if (rs.next()) {
|
||||
@ -2179,7 +2340,6 @@ public class DBMSRecords implements ServletContextAware {
|
||||
if(st!=null) try{st.close();}catch(SQLException ex) {}
|
||||
if(rs!=null) try{rs.close();}catch(SQLException ex) {}
|
||||
}
|
||||
|
||||
if(result.equals(""))
|
||||
{
|
||||
result = Tools.replaceAll(key,"_", " ");
|
||||
@ -2258,5 +2418,5 @@ public class DBMSRecords implements ServletContextAware {
|
||||
}
|
||||
return doc;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user