Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package th.in.oneauthen.servlet;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.PrintWriter;
- import java.io.StringReader;
- import java.nio.file.Files;
- import java.nio.file.Paths;
- import java.text.SimpleDateFormat;
- import java.util.Arrays;
- import java.util.Date;
- import java.util.Locale;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.swing.text.html.HTMLDocument;
- import javax.swing.text.html.HTMLEditorKit;
- import th.in.oneauthen.object.SignatureProfileDB;
- import th.in.oneauthen.object.UserUidDB;
- import th.in.oneauthen.object.DAO.SignatureProfileDAO;
- import th.in.oneauthen.signing.SignatureProfile;
- import th.in.oneauthen.signing.SignatureUtil;
- public class SigningTest {
- public static String STATUS = "";
- public static String PROFILE_NAME = "profilename";
- public static String PATH_LOCATION_SFTP = "C:\\Users\\BallZaR5R5\\Desktop\\locationSftp\\";
- public static String PATH_SUCCESS = "C:\\Users\\BallZaR5R5\\Desktop\\success\\";
- public static String PATH_FAIL = "C:\\Users\\BallZaR5R5\\Desktop\\fail\\";
- public static String PATH_LOG = "C:\\Users\\BallZaR5R5\\Desktop\\log\\";
- public static String SFTP_ADDRESS = "";
- public static String SFTP_PORT = "";
- public static String SFTP_USERNAME = "";
- public static String SFTP_PASSWORD = "";
- public static String TARGETDIR = "";
- public static void doTest (HttpServletRequest request, HttpServletResponse response, String logoutMsg) throws ServletException, IOException {
- try {
- File folder = new File(PATH_LOCATION_SFTP);
- File[] listOfFiles = folder.listFiles();
- for (File file : listOfFiles) {
- if (file.isFile()) {
- System.out.println(file.getName());
- byte[] pdfData = Files.readAllBytes(Paths.get(PATH_LOCATION_SFTP + file.getName()));
- if(pdfData != null) {
- System.out.println("test");
- }
- String timestampURL = "http://203.154.52.180/signserver/process?workerName=TimeStampSigner";
- SignatureProfile sessionSigProfile = null;
- UserUidDB userID = (UserUidDB) request.getSession().getAttribute(LoginServlet.SESSION_PARAM_USER);
- int user_id =userID.getUserId();
- try {
- // SignatureProfileDB systemSigProfile = new SignatureProfileDAO().find(1);
- SignatureProfileDB systemSigProfile = new SignatureProfileDAO().findByNameAndUserUID(PROFILE_NAME, user_id);
- sessionSigProfile = new SignatureProfile(systemSigProfile);
- sessionSigProfile.setIsVisible(true);
- sessionSigProfile.setSignatureLocation("0.6:0.25:0.8:0.1");
- System.out.println(Arrays.toString(sessionSigProfile.getSignatuerCoOrdinate()));
- } catch (Exception e) {
- e.printStackTrace();
- Files.write(Paths.get(PATH_FAIL + file.getName()), pdfData);
- STATUS = "FAIL! key fail or can not find key";
- String log_fail = STATUS + ":" + file.getName();
- logServer(log_fail);
- }
- try {
- SignatureUtil util = new SignatureUtil(sessionSigProfile, timestampURL);
- byte[] signPDF = util.SignTheDocument(pdfData);
- Files.write(Paths.get(PATH_SUCCESS + file.getName()), signPDF);
- STATUS = "SUCCESS";
- String log_success = STATUS + ":" + file.getName();
- logServer(log_success);
- System.out.println("Done");
- } catch (Exception e) {
- e.printStackTrace();
- Files.write(Paths.get(PATH_FAIL + file.getName()), pdfData);
- STATUS = "FAIL! can not sign this location";
- String log_fail = STATUS + ":" + file.getName();
- logServer(log_fail);
- }
- String Del = PATH_LOCATION_SFTP + file.getName();
- Files.delete(Paths.get(Del));
- System.out.println("Done");
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- private static void logServer(String str) {
- Date dNow = new Date();
- SimpleDateFormat ft = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss ", Locale.ENGLISH);
- System.out.println("Current Date: " + ft.format(dNow));
- try (FileWriter fw = new FileWriter(PATH_LOG + "logFile.txt", true);
- BufferedWriter bw = new BufferedWriter(fw);
- PrintWriter out = new PrintWriter(bw)) {
- out.println("["+ft.format(dNow)+"] " + str);
- // more code
- } catch (IOException e) {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement