BX Framework(BXM) Center-Cut Processing Service Instance Installation
The location of the ccServiceEndpoint web application for the Center-Cut processing service instance is $BXM_HOME/centercut/ccServiceEndpoint02.
-
Create a symbolic link from $BXM_HOME/centercut/ccServiceEndpoint02 to the tomcat9/webapps/ directory.
-
After that, $BXM_HOME/centercut/ccServiceEndpoint02 is replaced with ccServiceEndpoint02.
BX Framework(BXM) Center-Cut Processing Service Instance Environment Files File name File location Remarks web.xml
ccServiceEndpoint02/WEB-INF/
web context configuration file
bxm-management-instance.xml
ccServiceEndpoint02/WEB-INF/classes
BXM Framework Center-Cut instance configuration file
logback.xml
logback configuration file (used by BXM)
commons-logging.properties
commons logging configuration file (used by Spring)
-
Modify the web context configuration file.
-
Move to the ccServiceEndpoint02/WEB-INF/ directory.
-
Configure and check web.xml.
Default configuration (no modifications)
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"> <display-name>ccServiceEndpoint</display-name> <context-param> <param-name>config-location</param-name> <param-value>bxm-management-instance.xml</param-value> </context-param> <listener> <listener-class>bxm.service.endpoint.http.HttpServiceEndpointContextListener</listener-class> </listener> <servlet> <servlet-name>bxmCCHttpServiceEndpointMapping</servlet-name> <servlet-class>bxm.dft.service.endpoint.http.DefaultHttpServiceEndpointMapping</servlet-class> <load-on-startup>1</load-on-startup> <init-param> <param-name>fld-encoding</param-name> <param-value>UTF-8</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>bxmCCHttpServiceEndpointMapping</servlet-name> <url-pattern>/httpService/*</url-pattern> </servlet-mapping> </web-app>
-
-
Modify the BX Framework(BXM) configuration file.
-
Move to the ccServiceEndpoint02/WEB-INF/classes directory.
-
Configure and check commons-logging.properties.
Since a large volume of Spring logs is output through commons-logging, it is configured so that logs are not output.
Use the default value as is.
-
Configure and check logback.xml.
<?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" scanPeriod="30 seconds"> <property name="LOGS_ABSOLUTE_PATH" value="{BXM_HOME}/logs" /> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}][%-5level][%logger{36}:%line] - %msg%n</pattern> </encoder> </appender> <appender name="applogfile" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${LOGS_ABSOLUTE_PATH}/centercut02/app_${bxm.node.name}_${bxm.instance.name}.log</file> <encoder> <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}][%X{guid}][%-5level][%logger{36}:%line] - %msg%n</pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOGS_ABSOLUTE_PATH}/centercut02/app_${bxm.node.name}_${bxm.instance.name}.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> <totalSizeCap>3GB</totalSizeCap> </rollingPolicy> </appender> <appender name="applogdb" class="bxm.dft.logging.logback.DefaultAsyncTableAppender"> <connectionSource class="ch.qos.logback.core.db.JNDIConnectionSource"> <jndiLocation>java:/comp/env/BXMNXA</jndiLocation> </connectionSource> <bufferSize>5</bufferSize> <pattern>[%-5level][%d{yyyy-MM-dd HH:mm:ss.SSS}][%logger{36}:%line] - %msg%n</pattern> </appender> <root level="debug"> <appender-ref ref="console" /> <appender-ref ref="applogfile" /> <appender-ref ref="applogdb" /> </root> </configuration>-
For log levels, using the debug level in development and the warn level in production is recommended.
-
Modify << BXM_HOME >> to the path where BX Framework(BXM) is installed.
Since the applogdb appender stores logs in the Database, it is recommended to use it only on development servers where the log volume is low. When the log volume is high, it may cause performance degradation of the Application, so use it with caution.
-
-
Configure and check bxm-management-instance.xml.
<?xml version="1.0" encoding="UTF-8"?> <bxm-instance xmlns="http://www.bankwareglobal.com/schema/instance" xmlns:cn="http://www.bankwareglobal.com/schema/common" name="bxm-instance"> <description> Bxm Center-Cut Configuration</description> <environment> <system-properties> beantype.usemetadata=true accrue.data.accesstime=true accrue.beanfactory.accesstime=true asyncTaskExecutor.workerpool=100 asyncTaskExecutor.taskqueue=10 <!-- For Main Service Only --> deferred.run=bxm.centercut.dft.deferred.impl.DefaultCcutDeferredRun <!-- For Main Service Only --> </system-properties> <!-- Development: D, Production: O, Test: T --> <system-mode>D</system-mode> <datasource> <jndi-datasource jndi-name="java:/comp/env/BXMNXA" /> </datasource> <loader mode="hot" autodeploy="true" interval-millis="10000" lazy-init="true" deferred-init="true" deferred-init-interval="1000" sessionfactory-lazyinit="true"> <application-home><<BXM_HOME>>/apps/online</application-home> </loader> </environment> <management> <connector serviceurl="service:jmx:rmi:///jndi/rmi://localhost:30002/jmxrmi"> <environment> </environment> </connector> <objectname domain="JRF"> <properties> Name=bxm-management </properties> </objectname> </management> <context forced-timeout="3600000"> <preprocessor classname="bxm.dft.service.processor.DefaultSystemPreProcessor" order="1"/> <postprocessor classname="bxm.dft.service.processor.DefaultSystemPostProcessor" order="1"/> <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> <!-- Development (the max-resultset value is defined according to project settings) --> <data-access trace-inject="false" monitor-inject="false" identify-inject="true" max-resultset="1000" fetch-size="10" min-fetch-size="10" limit-exceeded-action="Warning" forced-logging="false"> <jndi-datasource-aliases> <!-- name : J2EE Application Service dataSource jndiName for applications --> <!-- alias : jndi-datasource, jndi-xadatasource value in application configuration file( bxm-application.xml) --> <alias name="java:/comp/env/APPNXA" alias="DSNXA"/> <alias name="java:/comp/env/APPXA" alias="DSXA"/> </jndi-datasource-aliases> </data-access> <message message-source-classname="bxm.instance.message.DatabaseMessageSource"/> <system-message message-source-classname="bxm.instance.message.DatabaseMessageSource" message-classname="bxm.instance.message.SystemDatabaseMessage" /> </bxm-instance>-
Configure the NonXA and XA Datasource by referring to the Datasource JNDI configured in the WAS. In this document, APPNXA is used as the NonXA datasource, and APPXA is used as the XA datasource.
-
Modify << BXM_HOME >> to the path where BX Framework(BXM) is installed.
-
-
-