com.sds.acube.bpm.framework.api
Class HtmlProcessor

java.lang.Object
  extended by com.sds.acube.bpm.framework.api.HtmlProcessor

public class HtmlProcessor
extends java.lang.Object

양식을 HTML파일 변환하는 API (마이싱글연계나 기타 레거시연계시 사용할 수 있음) HtmlProcessor.java 2009. 6. 19.

Version:
1.0.0.0 Copyright 2001 Samsung SDS Co., Ltd. All rights reserved.
Author:
LEE IL YONG

Constructor Summary
HtmlProcessor()
           
 
Method Summary
static java.lang.String getContentFromFile(java.sql.Connection conn, java.lang.String processID, java.util.HashMap xmlMap, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromFile(java.sql.Connection conn, java.lang.String processID, javax.servlet.http.HttpServletRequest request, java.util.HashMap additionalXml, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromFile(java.sql.Connection conn, java.lang.String processID, javax.servlet.http.HttpServletRequest request, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromFile(java.lang.String processID, java.util.HashMap xmlMap, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromFile(java.lang.String processID, javax.servlet.http.HttpServletRequest request, java.util.HashMap additionalXml, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromFile(java.lang.String processID, javax.servlet.http.HttpServletRequest request, java.lang.String templateFilePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함.
static java.lang.String getContentFromString(java.sql.Connection conn, java.lang.String processID, java.util.HashMap xmlMap, java.lang.String content, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함.
static java.util.HashMap getJFORMFromRequest(javax.servlet.http.HttpServletRequest request)
          request에서 jform으로 시작하는 input 태그를 추출하여 HashMap으로 리턴하는 함수
[참고] 이 함수는 주로 개발자 프로세스 핸들러에서 양식페이지를 만들어 낼때 사용자 데이터 추출용으로 사용함. for 마이싱글 연계
static java.lang.String getString(java.lang.String filePath)
          문자열로 파일읽기
[참고] 예전버전 패치때문에 지원함.
static java.lang.String getString(java.lang.String filePath, java.lang.String charsetName)
          문자열로 파일읽기
[참고] 예전버전 패치때문에 지원함.
static java.lang.String loadFile(java.lang.String filePath, org.apache.log4j.Logger logger)
          템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것
static void main(java.lang.String[] args)
           
static java.lang.String replaceDataIslandXmlTag(java.lang.String content, java.util.HashMap xmlMap, org.apache.log4j.Logger logger)
          본문에 <ACUBE_XML/>을 xml태그(<xml id=JFORM_XML>)로 변환해주는 함수
[참고] 따라서 본문에 데이터 아일랜드 효과를 줄 수 있음.
static java.lang.String replaceDataIslandXmlTag(java.lang.String content, java.lang.String xml, org.apache.log4j.Logger logger)
          본문에 <ACUBE_XML/>을 xml태그(<xml id=JFORM_XML>)로 변환해주는 함수
[참고] 따라서 본문에 데이터 아일랜드 효과를 줄 수 있음.
static java.lang.String replaceFileAttachString(java.sql.Connection conn, java.lang.String processID, java.lang.String content, boolean subProcessAttachFlag, org.apache.log4j.Logger logger)
          본문에 <ACUBE_ATTACH:location> 을 해당 location의 첨부목록으로 삽입해주는 함수
[주의] 서브프로세스가 여러개일 경우 location은 서로 유일해야 함.
static java.lang.String replaceLoopString(java.lang.String content, java.util.HashMap xmlMap, org.apache.log4j.Logger logger)
          본문에 <ACUBE_WHILE:반복변수명> 구간을 자동 반복삽입해주는 함수
[참고] xmlMap는 CabinetProcessor.getXMLElements()함수를 참조할것
static boolean saveFile(java.lang.String filePath, java.lang.String content, boolean overwriteFlag)
          문자열을 파일로 저장
[참고] 예전버전 패치때문에 지원함.
static boolean saveFile(java.lang.String filePath, java.lang.String content, java.lang.String charsetName, boolean overwriteFlag)
          문자열을 파일로 저장
[참고] 예전버전 패치때문에 지원함.
static java.lang.String setValueOfHTMLTag(java.lang.String html, java.util.HashMap jformMap, java.lang.String header, org.apache.log4j.Logger logger)
          HTML 파일에서 INPUT,TEXTAREA를 찾아 값(jformMap 중 header로 시작하는 값만)을 세팅해 줌 for 화면전송 [참고] html tag에 value는 없다고 가정함
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HtmlProcessor

public HtmlProcessor()
Method Detail

setValueOfHTMLTag

public static java.lang.String setValueOfHTMLTag(java.lang.String html,
                                                 java.util.HashMap jformMap,
                                                 java.lang.String header,
                                                 org.apache.log4j.Logger logger)
                                          throws java.lang.Exception
HTML 파일에서 INPUT,TEXTAREA를 찾아 값(jformMap 중 header로 시작하는 값만)을 세팅해 줌 for 화면전송 [참고] html tag에 value는 없다고 가정함

Parameters:
html -
jformMap -
header - ex)JFORM_PMM_
Returns:
String
Throws:
java.lang.Exception
Since:
2013.05.01 LEE IL YONG

getContentFromFile

public static java.lang.String getContentFromFile(java.lang.String processID,
                                                  javax.servlet.http.HttpServletRequest request,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromFile

public static java.lang.String getContentFromFile(java.lang.String processID,
                                                  javax.servlet.http.HttpServletRequest request,
                                                  java.util.HashMap additionalXml,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromFile

public static java.lang.String getContentFromFile(java.sql.Connection conn,
                                                  java.lang.String processID,
                                                  javax.servlet.http.HttpServletRequest request,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하 는XML값들
templateFilePath - 템플릿파일풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromFile

public static java.lang.String getContentFromFile(java.sql.Connection conn,
                                                  java.lang.String processID,
                                                  javax.servlet.http.HttpServletRequest request,
                                                  java.util.HashMap additionalXml,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromFile

public static java.lang.String getContentFromFile(java.lang.String processID,
                                                  java.util.HashMap xmlMap,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는 CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromFile

public static java.lang.String getContentFromFile(java.sql.Connection conn,
                                                  java.lang.String processID,
                                                  java.util.HashMap xmlMap,
                                                  java.lang.String templateFilePath,
                                                  org.apache.log4j.Logger logger)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는 CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getContentFromString

public static java.lang.String getContentFromString(java.sql.Connection conn,
                                                    java.lang.String processID,
                                                    java.util.HashMap xmlMap,
                                                    java.lang.String content,
                                                    org.apache.log4j.Logger logger)
                                             throws com.sds.acube.bpm.framework.api.ProcessorException
템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] 템플릿파일에 가 있어야 함. 내부적으로 replaceDataIslandXmlTag(),replaceLoopString(),replaceFileAttachString()등을 호출함.
[참고] 이 함수 결과값으로 HtmlProcessor.saveFile()를 호출하여 저장하면 됨
[참고] xmlMap는 CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getJFORMFromRequest

public static java.util.HashMap getJFORMFromRequest(javax.servlet.http.HttpServletRequest request)
                                             throws com.sds.acube.bpm.framework.api.ProcessorException
request에서 jform으로 시작하는 input 태그를 추출하여 HashMap으로 리턴하는 함수
[참고] 이 함수는 주로 개발자 프로세스 핸들러에서 양식페이지를 만들어 낼때 사용자 데이터 추출용으로 사용함. for 마이싱글 연계

Parameters:
request -
Returns:
HashMap
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

loadFile

public static java.lang.String loadFile(java.lang.String filePath,
                                        org.apache.log4j.Logger logger)
                                 throws java.lang.Exception
템플릿파일에 XML값들을 바인딩해주는 클래스
[참고] xmlMap는CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
processID - 프로스세ID
xmlMap - JFORM_으로시작하는 XML값들
templateFilePath - 템플릿파일 풀경로
Returns:
String
Throws:
java.lang.Exception

replaceLoopString

public static java.lang.String replaceLoopString(java.lang.String content,
                                                 java.util.HashMap xmlMap,
                                                 org.apache.log4j.Logger logger)
                                          throws java.lang.Exception
본문에 <ACUBE_WHILE:반복변수명> 구간을 자동 반복삽입해주는 함수
[참고] xmlMap는 CabinetProcessor.getXMLElements()함수를 참조할것

Parameters:
content - 변환할 본문
xmlMap - JFORM_으로시작하는 XML값들
logger - 로거
Returns:
String
Throws:
java.lang.Exception

replaceFileAttachString

public static java.lang.String replaceFileAttachString(java.sql.Connection conn,
                                                       java.lang.String processID,
                                                       java.lang.String content,
                                                       boolean subProcessAttachFlag,
                                                       org.apache.log4j.Logger logger)
                                                throws java.lang.Exception
본문에 <ACUBE_ATTACH:location> 을 해당 location의 첨부목록으로 삽입해주는 함수
[주의] 서브프로세스가 여러개일 경우 location은 서로 유일해야 함.

Parameters:
processID - processID
content - 변환할 본문
subProcessAttachFlag - 서브프로세스첨부()도 변환할지 여부
Returns:
String
Throws:
java.lang.Exception

replaceDataIslandXmlTag

public static java.lang.String replaceDataIslandXmlTag(java.lang.String content,
                                                       java.util.HashMap xmlMap,
                                                       org.apache.log4j.Logger logger)
                                                throws java.lang.Exception
본문에 <ACUBE_XML/>을 xml태그(<xml id=JFORM_XML>)로 변환해주는 함수
[참고] 따라서 본문에 데이터 아일랜드 효과를 줄 수 있음.

Parameters:
content - 변환할 본문
xmlMap - JFORM_으로시작하는 XML값들
Returns:
String
Throws:
java.lang.Exception

replaceDataIslandXmlTag

public static java.lang.String replaceDataIslandXmlTag(java.lang.String content,
                                                       java.lang.String xml,
                                                       org.apache.log4j.Logger logger)
                                                throws java.lang.Exception
본문에 <ACUBE_XML/>을 xml태그(<xml id=JFORM_XML>)로 변환해주는 함수
[참고] 따라서 본문에 데이터 아일랜드 효과를 줄 수 있음.

Parameters:
content - 변환할 본문
xml - xmlLocation(TBPM_ARCHIVE에서)으로 얻은 통 xml, ex) ~
Returns:
String
Throws:
java.lang.Exception

getString

public static java.lang.String getString(java.lang.String filePath)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
문자열로 파일읽기
[참고] 예전버전 패치때문에 지원함. FileAttachProcessor의 것을 권장함. 2009.11.18 LEE IL YONG

Parameters:
filePath - 파일경로
Returns:
내용 문자열
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

getString

public static java.lang.String getString(java.lang.String filePath,
                                         java.lang.String charsetName)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
문자열로 파일읽기
[참고] 예전버전 패치때문에 지원함. FileAttachProcessor의 것을 권장함. 2009.11.18 LEE IL YONG

Parameters:
filePath - 파일경로
charsetName - 인코딩타입
Returns:
내용 문자열
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

saveFile

public static boolean saveFile(java.lang.String filePath,
                               java.lang.String content,
                               boolean overwriteFlag)
                        throws com.sds.acube.bpm.framework.api.ProcessorException
문자열을 파일로 저장
[참고] 예전버전 패치때문에 지원함. FileAttachProcessor의 것을 권장함. 2009.11.18 LEE IL YONG

Parameters:
filePath - 파일경로
content - 본문내용
overwriteFlag - 덮어쓰기 여부
Returns:
boolean
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

saveFile

public static boolean saveFile(java.lang.String filePath,
                               java.lang.String content,
                               java.lang.String charsetName,
                               boolean overwriteFlag)
                        throws com.sds.acube.bpm.framework.api.ProcessorException
문자열을 파일로 저장
[참고] 예전버전 패치때문에 지원함. FileAttachProcessor의 것을 권장함. 2009.11.18 LEE IL YONG

Parameters:
filePath - 파일경로
content - 본문내용
charsetName - 인코딩타입
overwriteFlag - 덮어쓰기 여부
Returns:
boolean
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

main

public static void main(java.lang.String[] args)
Parameters:
args -