출처 : http://blog.naver.com/skywood1/220330131740
전자정부 프레임워크 3.2 공통 콤포넌트
URL : http://www.egovframe.go.kr/ (전자정부프레임워크)
전자정부프레임워크를 이해하려면 예제를 한번 돌려보는 것이 중요하다. 위의 사이트에서 공통 콤포넌트를 다운받아서 설치해보자.
필요한 것은 포기하지 않는 근성이다.
0. 설치 관련
- new -> eGovFrame Web Project로 이름과 group id를 입력하고 finish를 한다.
- import의 Archive File을 선택하여 해당 zip파일을 선택해주면 자동으로 등록이 된다.
- DB script는 (/src/script/) 해당 DB에 ddl, dml을 사용하여 테이블과 기본 정보들을 생성한다.
- 해당 전자정부 공통프레임워크에 설정정보를 참고하여 인증과 sms관련 설정을 pom.xml파일에 해준다.
인증서 로그인 컴포넌트는 행정전자서명 인증관리센터에서 제공하는 표준보안 API를 사용합니다.
1. GPKI 라이브러리를 사용하실 경우- 행정전자서명 인증관리센터에 공무원이 직접 신청하여 라이브러리를 제공받아야 합니다.
(GPKI서비스관련 URL : http://www.gpki.go.kr)
- 제공받은 라이브러리를 다음 경로에(\src\main\webapp\WEB-INF\lib) GPKI 라이브러리를 넣으시면 오류없이 사용이 가능합니다.
2. GPKI 라이브러리를 사용하지 않으실 경우
- 아래의 안내에 따라 조치하시면 오류를 제거하실 수 있습니다.
============================================================================================2-1.pom.xml 파일에 주석처리(pom.xml 파일 참조 : GPKI 관련 dependency 2종)
**************** pom.xml ****************<!-- GPKI인증서 로그인처리 라이브러리 -->
<dependency>
<groupId>kr.go.gpki</groupId>
<artifactId>gpkisecureweb</artifactId>
<version>1.0.4.9</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/gpkisecureweb-1.0.4.9.jar</systemPath>
</dependency>
<dependency>
<groupId>kr.go.gpki</groupId>
<artifactId>libgpkiapi_jni</artifactId>
<version>1.4.0.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/libgpkiapi_jni-1.4.0.0.jar</systemPath>
</dependency>
*****************************************
2-2. 관련 파일 삭제* GPKI 인증서
src/main/java/egovframework/com/sec/pki/service/impl/EgovGPKIServiceImpl.java
src/main/java/egovframework/com/utl/sec/service/EgovCertInfoUtil.java
src/main/java/egovframework/com/utl/sec/web/EgovCertLoginController.java
3. SMS 라이브러리를 사용하실 경우- 모바일 전자정부 M-gov(http://www.mgov.go.kr)에서 공무원이 직접 신청하여 라이브러리를 제공받아야 합니다.
- 제공받은 라이브러리를 다음 경로에(\src\main\webapp\WEB-INF\lib) SMSI 라이브러리를 넣으시면 오류없이 사용이 가능합니다.
4. SMS 라이브러리를 사용하지 않으실 경우- 아래의 안내에 따라 조치하시면 오류를 제거하실 수 있습니다.
============================================================================================
4-1.pom.xml 파일에 주석처리(pom.xml 파일 참조 : SMSI 관련 dependency 1종)
<!-- M-Gov (SMS Service API) -->
<dependency>
<groupId>kr.go.mgov</groupId>
<artifactId>smeapi</artifactId>
<version>2.7</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/smeapi_2_7.jar</systemPath>
</dependency>
*****************************************
4-2. 관련 파일 삭제
* SMS 컴포넌트
src/main/java/egovframework/com/cop/sms/service/impl/EgovSmsBasicReceiver.java
src/main/java/egovframework/com/cop/sms/service/impl/EgovSmsBasicServiceImpl.java
src/main/java/egovframework/com/cop/sms/service/impl/EgovSmsInfoReceiver.java
src/main/java/egovframework/com/cop/sms/service/impl/EgovSmsInfoSender.java
src/main/java/egovframework/com/cop/sms/service/impl/EgovSmsInfoServiceImpl.java
src/main/java/egovframework/com/cop/sms/web/EgovSmsInfoController.java
src/main/resources/egovframework/spring/com/context-scheduling-cop-sms.xml
* 서버자원모니터링 컴포넌트
src/main/java/egovframework/com/utl/sys/srm/service/EgovServerResrceMntrngScheduling.java
src/main/resources/egovframework/spring/com/context-scheduling-utl-sys-srm.xml
- DB 정보를 설정해준다. (JDBC)
pom.xml의 DB 설정
<!-- oracle 10g driver -->
<dependency>
<groupId>ojdbc</groupId>
<artifactId>ojdbc</artifactId>
<version>14</version>
<scope>system</scope>
<systemPath>D:\oracle\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar</systemPath>
</dependency>
* 많은 에러를 보더라도 절대 굴복하지 말고 Google을 참고해서 해결하세요.
공통 컴포넌트는 데이터베이스 설정을 하는 spring context xml(dataSources)파일을 외부 properties파일에서 로드합니다.
/src/main/resources/egovframework/egovProps/globals.properties
Globals.DbType = oracle
Globals.DriverClassName=oracle.jdbc.driver.OracleDriver
Globals.Url=jdbc:oracle:thin:@127.0.0.1:1521:orclGlobals.UserName = userid
Globals.Password = pass
* 설정시 필요사항
run-jetty-run 설치
help->eclipse market place에서 jetty로 검색하여 install한다.
tomcat native library 설치
doc : http://tomcat.apache.org/tomcat-7.0-doc/apr.html
login 정보
- 공통 콤포넌트 사용시
분류/id/pass : 업무/TEST1/공통12 ( 설치가 완료하여 웹페이지가 뜰 경우의 기본 로그인 정보이다 )
- simple homepage 사용시
* DB생성 및 데이터 생성은 DATABASE/all_sht_data_oracle.sql, DATABASE/all_sht_ddl_oracle로 생성하자.
id/pass : admin / 1
2. 포함된 라이브러리
- 기본
oauth : spring-social-facebook-web 1.1.1, spring-social-twitter 1.1.0, httpclient 4.3.4, commons-logging, h2 1.4.180
WYSIWYG Editor : ckeditor-java-core 3.5.3
fileupload : commons-fileupload 1.3.1
- DB
mysql : mysql-connector-java 5.1.31
ojdbc : ojdbc 14
altibase
tibero
cubrid
- WEB 개발시 필요
게시판 생성시 사용 TokenStream : antlr 3.5
우편번호를 위한 라이브러리 : oro 2.0.8
요소기술 달력을 위한 라이브러리 : icu4j 53.1
- PROTOCOL
FTP용 3rd party 라이브러리 : commons-net 3.3
Email : commons-email 1.3.2, sndng-mail 1.0
- 서비스 연동
WebSocket Messenger : javax.websocket-api 1.0, javax.json 1.0.4
facebook 연동시 추가 : spring-social-security 1.1.0, spring-security-web
Twitter : twitter4j-core 4.0.2
- 문서
PDF변환용 라이브러리 : jodconverter 2.2.1, slf4j-api, commons-io
- 기타
xmlParserAPI : batik-ext 1.7
XML스키마를 자바클래스로 생성하는 라이브러리 : xbean 2.2.0
Cross-Site Scripting : ldapsdk 4.1
LDAP조직도관리 관련 라이브러리 : spring-ldap-core 2.0.2
M-Gov (SMS Service API) : smeapi 2.7
GPKI인증서 로그인처리 라이브러리 : gpkisecureweb 1.0.4.9, libgpkiapi_jni 1.4.0.0
Ajax : ajaxtags-resources 1.5.7
3. 공통콤포넌트에서 구현된 서비스 기능
포털(예제) 메인화면
1. 포털(예제) 메인화면
사용자디렉토리/통합인증
10. 로그인
30. 로그인정책관리
보안
60. 권한관리
70. 권한그룹관리
80. 그룹관리
90. 롤관리
100. 부서권한관리
통계/리포팅
120. 게시물통계
130. 사용자통계
140. 접속통계
150. 화면통계
160. 보고서통계
161. 자료이용현황통계
협업
180. 게시판속성관리
190. 게시판사용정보
200. 템플릿관리
250. 스크랩 목록
270. 커뮤니티관리
320. 부서일정관리
330. 일정관리
340. 일지관리
350. 전체일정관리
360. 메일발송
361. 발송메일내역
370. 명함관리
371. 내명함목록
380. 주소록관리
390. 간부일정관리
400. 부서업무함관리
401. 부서업무정보
410. 주간/월간보고관리
420. 메모할일관리
430. 메모보고
사용자지원
450. 기업회원관리
460. 업무사용자관리
461. 부서관리
470. 일반회원관리
480. 마이페이지관리
490. 약관관리
500. 저작권보호정책
510. 개인정보보호정책확인
520. 도움말
530. 용어사전
540. FAQ관리
550. Q&A관리
551. Q&A답변관리
560. 행정전문용어사전
561. 행정전문용어사전관리
570. 온라인매뉴얼
571. 사용자온라인매뉴얼
580. 상담관리
581. 상담답변관리
590. 설문관리
600. 설문조사
610. 설문템플릿관리
620. 응답자관리
630. 질문관리
640. 항목관리
650. 회의관리
660. 온라인poll관리
661. 온라인poll참여
670. 뉴스관리
680. 사이트관리
700. 추천사이트관리
710. 행사/이벤트/캠페인
711. 외부인사정보
720. 팝업창관리
730. 정보알림이
740. 배너관리
741. MYPAGE배너관리
750. 로그인화면이미지관리
760. 최근검색어 조회
770. 메인이미지관리
771. 메인이미지 반영결과보기
780. 통합링크관리
790. 사용자부재관리
800. 인터넷서비스안내및관리
810. Wiki기능
820. RSS태그관리
822. RSS태그서비스
830. Twitter연동
831. Facebook 연동
840. 쪽지관리
850. 받은쪽지함관리
860. 보낸쪽지함관리
870. 회의실관리
871. 회의실예약관리
890. 직원경조사관리
891. 직원경조사승인관리
900. 휴가관리
901. 휴가승인관리
902. 개인연차관리
910. 당직관리
911. 당직체크관리
920. 포상관리
921. 포상승인관리
930. 기념일관리
931. 기념일목록(메인화면용)
940. 행사신청관리
941. 행사접수관리
942. 행사접수승인관리
943. 약도 관리
950. 출퇴근관리
시스템관리
960. 공통분류코드
970. 공통상세코드
980. 공통코드
1000. 우편번호관리
1010. 행정코드관리
1020. 기관코드수신
1030. 로그관리
1040. 사용로그관리
1050. 송/수신로그관리
1060. 시스템이력관리
1070. 웹로그관리
1080. 접속로그관리
1085. 개인정보조회로그관리
1090. 메뉴리스트관리
1091. 메뉴관리리스트
1100. 메뉴생성관리
1101. 사이트맵
1110. 바로가기메뉴관리
1111. 프로그램관리
1112. 프로그램변경요청관리
1113. 프로그램변경요청처리
1114. 프로그램변경이력
1120. 배치작업관리
1130. 배치결과관리
1140. 스케줄처리
1150. 백업관리
1151. 백업결과관리
1160. 네트워크관리
1170. 서버정보관리
1171. 서버(S/W)목록
1180. 장애신청관리
1190. 장애처리결과관리
시스템/서비스연계
1210. 시스템연계관리
1220. 연계현황관리
1230. 연계메시지관리
1240. 연계기관관리
디지털 자산 관리
1250. 개인지식관리
1260. 지식맵관리(유형)
1261. 지식맵관리(조직)
1270. 지식전문가관리
1280. 지식정보관리
1290. 지식평가관리
1291. 지식정보제공
요소기술
1300. 공휴일관리(달력)
2080. 송수신모니터링
2090. DB서비스모니터링
2100. HTTP서비스모니터링
2110. 프로세스모니터링
2120. 네트워크서비스모니터링
2130. 파일시스템모니터링
2140. 프록시서비스
2150. 파일동기화(대상서버)
2160. 로그인세션정보체크
2170. 서버자원모니터링-대상목록
2180. 주소정보연계
외부 추가 컴포넌트
3000. JFile 가이드
3010. JFile 파일 업로드
3020. JFile 파일 다운로드
3100. LDAP 조직도 트리
3110. LDAP 조직도 그래프
3200. 웹소켓 메신저
'프로그래밍 > JAVA' 카테고리의 다른 글
자바 정규식 표현 정리 (0) | 2012.08.31 |
---|---|
indexOf와 startwith 의 차이 (0) | 2012.08.13 |
HashMap, HashTable의 비교 (0) | 2012.08.13 |