엔진
인터페이스 처리시 발생되는 다양한 요건을 위해 커스터마이징 프로그램을 개발하고, 적용할 수 있다. 이를 위해 별도로 전달되는 커스터마이징 프로젝트를 통해 소스를 작성하고, 해당 프로그램을 등록한다.
프로그램 적용절차
1. 프로그램 개발
bxi-extension
에 포함된 샘플 프로그램을 참고하여 커스터마이징할 프로그램을 개발한다. bxi-extension
프로젝트는 BXI 인스톨러 바이너리에 기본 포함된다.
bxi-extension/src/main/java/bxi/extension/sample
커스터마이징 프로그램에 다음과 같은 요소가 포함될 경우 정상 작동되지 않을 수 있으므로 개발할 때 제외하도록 한다.
@Slf4j
를 통한 로깅lambda
를 사용하는 로직(예. Functional inferface)static
활용
또한 java.lang.NoClassDefFoundError
가 발생하면 해당하는 클래스의 재로딩이 무시되어 동적배포가 이루어지지 않는다.
따라서 커스터마이징 프로그램 배포 중에 NoClassDefFoundError
가 발생한 경우 엔진을 재기동한 뒤에 배포를 수행하여야 한다.
2. 프로그램 파일 업로드
개발한 프로그램을 BXI서버에 업로드한다. jar
및 class
형태 모두 배포 가능하며,인스턴스를 재기동하고싶지 않은 경우에는 동적배포를 사용할 수 있다.
종류 | 설명 |
---|---|
동적배포 사용 시 | 개발한 프로그램의 class 파일을 BXI서버에 업로드한다. 업로드 위치는 시스템파라미터의 DYNAMIC_DEPLOY_PATH 에 설정한 위치이며, 프로그램정보 의 배포버튼을 통해 엔진 재기동없이 배포할 수 있다. |
동적배포 미사용 시 | bxi.extension.jar 로 빌드해 엔진의 libs 에 업로드한다. 이 때, 엔진을 반드시 재기동해야 한다. |
3. 프로그램 등록
기본설정관리 > 프로그램정보
를 이용하여 개발된 프로그램을 등록한다.
프로그램용도는 개발한 프로그램 종류에 따라 달라지므로 상세 가이드를 참조하고, 프로그램클래스는 패키지를 포함해 입력한다.

4. 프로그램 배포
저장 후 변경이력정보
우측의 배포버튼을 클릭하여 배포한다.
배포 성공 시, BXI서버에 업로드했던 class파일은 앞서 정의한 프로그램 클래스 정보에 따라 이동되며, 이 때 기존 클래스파일명에 프로그램버전
을 추가한다.
파일 위치 | |
---|---|
배포 전 | generation/deploy/SampleProcessor.class |
배포 후 | generation/customizing/bxi/extension/sample/SampleProcessor2023090400003.class |
5. 프로그램 설정
프로그램을 적용할 설정화면에 프로그램ID를 설정한다.