개요

본 문서에서는 BXM 온라인 프레임워크를 사용자환경에 맞게 커스터마이징 개발 하기 위하여 작성된 가이드이다.

1. 처리Flow

아래의 그림은 온라인 서비스가 어떠한 흐름으로 처리가 되고 있는지 나타내고 있는 그림이다.

온라인 처리 Flow
Figure 1. 온라인 처리 Flow

2. 온라인 커스터마이징 프로젝트

온라인 커스터마이징을 좀 더 쉽게 하게 위해서 default 온라인 커스터마이징 Project (bxm.default.extension)를 제공한다.

중요 커스터마이징 소스파일 리스트
파일명 설명

DefaultPreProcessor.java

시스템 선처리 Sample

DefaultPostProcessor.java

시스템 후처리 Sample

DefaultControlParameters.java

서비스 제어 파라미터 Sample

DefaultSystemHeader.java

기본 시스템 헤더

DefaultRequestResolver.java

기본 Request 처리 Resolver (XML,
FixedLength, Serialized Object, JSON 등을 처리)

DefaultResponseResolver.java

기본 Response 처리 Resolver (XML,
FixedLength, Serialized Object, JSON 등을 처리)

DefaultXmlRequestResolver.java

기본 XML 요청전문 처리 Resolver

DefaultXmlResponseResolver.java

기본 XML 응답전문 처리 Resolver

DefaultFixedLengthDataRequestResolver.java

FixedLength 요청전문 처리
Resolver

DefaultFixedLengthDataResponseResolver.java

FixedLength 응답전문 처리
Resolver

SerializedRequestResolver.java

Serialized Object 요청전문 처리
Resolver

SerializedResponseResolver.java

Serialized Object 응답전문 처리
Resolver

3. Framework Instance Configuration 설정

커스터마이징 개발한 Source를 반영하기 위해서 Framework Instance Configuration 설정 파일(bxm-management-instance.xml) 에 적용하여야 한다.

다음은 Framework Instance Configuration 설정 예 이다. 각 항목에 대한 설명은 "BX Framework 환경설정가이드"를 참고한다.

…
    <context forced-timeout="30000">
        <preprocessor classname="bxm.dft.service.processor.DefaultSystemPreProcessor" order="1"/>
        <postprocessor classname="bxm.dft.service.processor.DefaultSystemPostProcessor" order="1"/>
        <postprocessor classname="bxm.dft.service.processor.DefaultServiceLogPostProcessor" order="2"/>
        <control-parameter classname="bxm.dft.context.control.impl.DefaultControlParametersImpl"/>
        <transaction-rollbackfors>
            bxm.app.ApplicationException
            bxm.dft.app.DefaultApplicationException
        </transaction-rollbackfors>
        <request header-classname="bxm.dft.context.DefaultSystemHeader" imagelogging="true"
            request-resolver-classname="bxm.dft.request.DefaultRequestResolver"
            response-resolver-classname="bxm.dft.request.DefaultResponseResolver"
            request-trace-classname="bxm.dft.request.DefaultRequestTrace"
            interceptor-classname="bxm.dft.service.endpoint.DefaultRequestInterceptor"
            service-executor-interceptor-classname="bxm.dft.service.DefaultServiceExecutorInterceptor"
            />
    </context>

Copyright© Bankwareglobal All Rights Reserved.