Merge branch 'jenkins_with_weblogic' of ssh://git@192.168.240.178:18081/eapim/eapim-online.git into jenkins_with_weblogic

This commit is contained in:
Yunsam.Eo
2025-12-05 14:23:22 +09:00
49 changed files with 6995 additions and 34 deletions
+1 -1
View File
@@ -12,4 +12,4 @@
url = ssh://git@192.168.240.178:18081/eapim/elink-online-emsclient.git
[submodule "elink-online-core-jpa"]
path = elink-online-core-jpa
url = ssh://git@192.168.240.178:18081/eapim/elink-online-core-jpa.git
url = ssh://git@192.168.240.178:18081/eapim/elink-online-core-jpa.git
@@ -63,7 +63,7 @@
<prop key="hibernate.hbm2ddl.auto">validate</prop>
<prop key="hibernate.format_sql">true</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.dialect">${hibernate.dialect:org.hibernate.dialect.PostgreSQL10Dialect}</prop>
<prop key="hibernate.dialect">${hibernate.dialect:org.hibernate.dialect.Oracle12cDialect}</prop>
<prop key="hibernate.jdbc.batch_size">100</prop>
<prop key="hibernate.jdbc.fetch_size">100</prop>
<prop key="hibernate.cache.use_second_level_cache">false</prop>
+41 -4
View File
@@ -34,9 +34,7 @@
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!-- Weblogic 14.1.2 서블릿 설정 -->
<!--
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>weblogic.servlet.FileServlet</servlet-class>
@@ -45,7 +43,7 @@
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
-->
<!-- oAuth 2.0 인증서버 설정 -->
<servlet>
<servlet-name>authserver</servlet-name>
@@ -71,6 +69,8 @@
</filter-mapping>
<!-- Dynamic REST API 어댑터 설정 -->
<!--
<!--
<servlet>
<description/>
<servlet-name>RestApiDynamicInAdapter</servlet-name>
@@ -82,7 +82,8 @@
<url-pattern>/API/*</url-pattern>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
-->
-->
<!--
<listener>
<listener-class>com.eactive.eai.adapter.http.async.AppContextListener</listener-class>
@@ -161,9 +162,45 @@
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>400</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>401</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>402</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>405</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>501</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>502</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>503</error-code>
<location>/error.jsp</location>
</error-page>
</web-app>
+11 -1
View File
@@ -34,7 +34,17 @@
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!-- Weblogic 14.1.2 서블릿 설정 -->
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>weblogic.servlet.FileServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
<!-- oAuth 2.0 인증서버 설정 -->
<servlet>
<servlet-name>authserver</servlet-name>
+407
View File
@@ -0,0 +1,407 @@
<%@ page import="java.util.*"%>
<%@ page import="com.eactive.eai.common.message.*,java.text.SimpleDateFormat"%>
<%@ page import="javax.jms.*,com.eactive.eai.flowcontrol.jms.*,javax.naming.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%!
public final static String JMS_FACTORY = "com.eactive.eai.common.FlowRouterConnectionFactory";
public ArrayList displayQueue(String queueName, String mSelector, int maxCount) throws Exception {
ArrayList al = new ArrayList();
InitialContext ctx = ctx = new InitialContext();
QueueConnectionFactory qconFactory = null;
QueueConnection qcon = null;
QueueSession qsession = null;
QueueBrowser qbrowser = null;
javax.jms.Queue queue = null;
int count = 0;
try {
java.text.DateFormat DATE_FORMAT = DATE_FORMAT = java.text.DateFormat.getDateTimeInstance(
java.text.DateFormat.SHORT, java.text.DateFormat.SHORT);
if (DATE_FORMAT instanceof java.text.SimpleDateFormat)
((java.text.SimpleDateFormat) DATE_FORMAT)
.applyPattern("yy/MM/dd kk:mm:ss");
qconFactory = (QueueConnectionFactory) ctx.lookup(JMS_FACTORY);
qcon = qconFactory.createQueueConnection();
qsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
queue = (javax.jms.Queue) ctx.lookup(queueName);
if(mSelector != null && mSelector.length() > 0) {
qbrowser = qsession.createBrowser(queue, mSelector);
}
else {
qbrowser = qsession.createBrowser(queue);
}
qcon.start();
Enumeration e = qbrowser.getEnumeration();
Message m = null;
if (! e.hasMoreElements()) {
System.out.println("There are no messages on this queue. - " + queueName);
}
else {
System.out.println(queueName + " - Queued JMS Messages: "+DATE_FORMAT.format(new java.util.Date(System
.currentTimeMillis())));
while (e.hasMoreElements()) {
m = (Message) e.nextElement();
count++;
System.out.println("get Message " + count );
/*
System.out.println("Message ID " + m.getJMSMessageID() +
" delivered " + new Date(m.getJMSTimestamp()) +
" to " + m.getJMSDestination());
System.out.print("\tExpires ");
if (m.getJMSExpiration() > 0) {
System.out.println( new Date( m.getJMSExpiration()));
}
else {
System.out.println("never");
}
System.out.println("\tPriority " + m.getJMSPriority());
System.out.println("\tMode " + (
m.getJMSDeliveryMode() == DeliveryMode.PERSISTENT ?
"PERSISTENT" : "NON_PERSISTENT"));
System.out.println("\tCorrelation ID " + m.getJMSCorrelationID());
System.out.println("\tReply to " + m.getJMSReplyTo());
System.out.println("\tMessage type " + m.getJMSType());
System.out.println("\tMessage BizCode " + m.getStringProperty("BizCode"));
if (m instanceof TextMessage) {
System.out.println("\tTextMessage \"" +
((TextMessage)m).getText() + "\"");
}
*/
if(count > maxCount) {
break;
}
else {
if(m instanceof ObjectMessage) {
al.add(m);
}
}
}
}
}
catch( Exception e ) {
//e.printStackTrace();
}
finally {
try {
if(qbrowser != null) qbrowser.close();
if(qsession != null) qsession.close();
if(qcon != null) qcon.close();
}
catch(Exception ex) {}
}
return al;
}
public ArrayList purgeQueue(String queueName, String mSelector, int purgeSize, boolean isLogging) throws Exception {
ArrayList al = new ArrayList();
InitialContext ctx = new InitialContext();
QueueConnectionFactory qconFactory = null;
QueueConnection qcon = null;
QueueSession qsession = null;
QueueReceiver qreceiver = null;
javax.jms.Queue queue = null;
long sTime = System.currentTimeMillis();
long cTime = 0;
int purgeCount = 0;
try {
java.text.DateFormat DATE_FORMAT = DATE_FORMAT = java.text.DateFormat.getDateTimeInstance(
java.text.DateFormat.SHORT, java.text.DateFormat.SHORT);
if (DATE_FORMAT instanceof java.text.SimpleDateFormat)
((java.text.SimpleDateFormat) DATE_FORMAT)
.applyPattern("yy/MM/dd kk:mm:ss");
qconFactory = (QueueConnectionFactory) ctx.lookup(JMS_FACTORY);
qcon = qconFactory.createQueueConnection();
qsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
queue = (javax.jms.Queue) ctx.lookup(queueName);
if(mSelector != null && mSelector.length() > 0) {
qreceiver = qsession.createReceiver(queue, mSelector);
}
else {
qreceiver = qsession.createReceiver(queue);
}
qcon.start();
Message m = null;
System.out.println(">> "+queueName + " - Queued JMS Messages: "+DATE_FORMAT.format(new java.util.Date(System
.currentTimeMillis())));
cTime = System.currentTimeMillis() - sTime;
sTime = System.currentTimeMillis();
for(int i=0; i<purgeSize; i++) {
m = (Message)qreceiver.receiveNoWait();
if(m == null) {
System.out.println(">> No more Message in Queue - " + queueName);
System.out.println(">> Stop Purge.");
break;
}
purgeCount++;
System.out.println("\n>> purge "+(i+1));
if(isLogging) {
/*
System.out.println("Message ID " + m.getJMSMessageID() +
" delivered " + new Date(m.getJMSTimestamp()) +
" to " + m.getJMSDestination());
System.out.print("\tExpires ");
if (m.getJMSExpiration() > 0) {
System.out.println( new Date( m.getJMSExpiration()));
}
else {
System.out.println("never");
}
System.out.println("\tPriority " + m.getJMSPriority());
System.out.println("\tMode " + (
m.getJMSDeliveryMode() == DeliveryMode.PERSISTENT ?
"PERSISTENT" : "NON_PERSISTENT"));
System.out.println("\tCorrelation ID " + m.getJMSCorrelationID());
System.out.println("\tReply to " + m.getJMSReplyTo());
System.out.println("\tMessage type " + m.getJMSType());
System.out.println("\tMessage BizCode " + m.getStringProperty("BizCode"));
if (m instanceof TextMessage) {
System.out.println("\tTextMessage \"" +
((TextMessage)m).getText() + "\"");
}
*/
if(m instanceof ObjectMessage) {
al.add(m);
}
}
}
System.out.println("----------------------------------------------------------------");
System.out.println(">> Purge "+purgeCount+" messages completed : connect time("+cTime+") ms, purge time ("
+ (System.currentTimeMillis() - sTime) +") ms");
System.out.println("----------------------------------------------------------------");
return al;
}
catch( Exception e ) {
throw e;
}
finally {
try {
if(qreceiver != null) qreceiver.close();
if(qsession != null) qsession.close();
if(qcon != null) qcon.close();
}
catch(Exception ex) {}
}
}%>
<%
ArrayList al = null;
String queueName = request.getParameter("queueName");
String maxCount = request.getParameter("maxCount");
String fromTime = request.getParameter("fromTime");
String toTime = request.getParameter("toTime");
String selector = request.getParameter("selector");
String actionType = request.getParameter("actionType");
String[][] monitorDataTotal = null;
String[][] monitorData = null;
String timeSelector = "";
String mSelector = "";
if( (fromTime != null && fromTime.length() == 14) && (toTime != null && toTime.length() == 14)) {
SimpleDateFormat SDF_YYYYMMDDHHMMSS_NO_MARK = new SimpleDateFormat( "yyyyMMddHHmmss");
Date fDate= SDF_YYYYMMDDHHMMSS_NO_MARK.parse(fromTime);
Date tDate= SDF_YYYYMMDDHHMMSS_NO_MARK.parse(toTime);
Calendar calendar = new GregorianCalendar(TimeZone.getTimeZone("GMT+09:00"),Locale.KOREA);
calendar.setTime (fDate);
Long ftimeMili = calendar.getTimeInMillis();
calendar.setTime (tDate);
Long ttimeMili = calendar.getTimeInMillis();
timeSelector = "JMSTimestamp BETWEEN " + ftimeMili + " AND " + ttimeMili ;
if(selector != null && selector.trim().length() > 0) {
mSelector = selector + " AND " + timeSelector;
}
else {
mSelector = timeSelector;
}
}
FCQueueReceiverManager man = FCQueueReceiverManager.getInstance();
System.out.println("actionType = " + actionType);
System.out.println("queueName = " + queueName);
System.out.println("maxCount = " + maxCount);
System.out.println("selector = " + selector);
System.out.println("fromTime = " + fromTime);
System.out.println("toTime = " + toTime);
System.out.println("mSelector = " + mSelector);
String errorMsg = null;
try {
if("DISPLAY".equals(actionType)) {
System.out.println("DISPLAY : queueName = " + queueName);
int mCount = Integer.parseInt(maxCount);
al = displayQueue(queueName, mSelector, mCount);
}
else if("PURGE".equals(actionType)) {
System.out.println("PURGE : queueName = " + queueName);
int mCount = Integer.parseInt(maxCount);
al = purgeQueue(queueName, mSelector, mCount, true);
}
else {
System.out.println("Unhandled Action " + actionType);
}
} catch(Exception e) {
errorMsg = e.getMessage();
}
%>
<html>
<head>
<title>
FC Queue Purger
</title>
<script>
function doAction() {
document.frm.submit();
}
function doDisplay() {
document.frm.actionType.value="DISPLAY";
document.frm.submit();
}
function doPurge() {
document.frm.actionType.value="PURGE";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>FC Queue Receiver Manager</b>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table border='0' width="800" >
<tr>
<td colspan="5" align='left'>
<%
if(errorMsg != null) {
%>
<font color=red>Error : <%= errorMsg %></font>
<%
}
%>
</td>
</tr>
<tr>
<td width="200" align='left'>* Queue Name</td>
<td align='left'><input type="text" name="queueName" size='40' value="<%= queueName==null?"":queueName %>" ></td>
</tr>
<td width="200" align='left'>* Message Count</td>
<td align='left'><input type="text" name="maxCount" size='40' value="<%= maxCount==null?"":maxCount %>" ></td>
</tr>
<tr>
<td width="200" align='left'>Selector</td>
<td align='left'><input type="text" name="selector" size='40' value="<%= selector==null?"":selector %>" ></td>
</tr>
<tr>
<td width="200" align='left'>Selector Time(yyyyMMddHHmmss)</td>
<td align='left'>
<input type="text" name="fromTime" size='14' maxlength='14' value="<%= fromTime==null?"":fromTime %>" >
<input type="text" name="toTime" size='14' maxlength='14' value="<%= toTime==null?"":toTime %>" >
</td>
</tr>
<tr>
<td colspan="2" align='left'>Selector keys( EAIBWKCLS, EAISVCCD, OSIDINSTCD )</td>
</tr>
<tr>
<td colspan="2" align='right'>
<input type="button" value="DISPLAY" onclick="doDisplay()">
<input type="button" value="PURGE" onclick="doPurge()">
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' width='300' bgcolor="#ccccff">JMS MsgID</td>
<td align='center' width='300' bgcolor="#ccccff">JMS delivered</td>
<td align='center' width='200' bgcolor="#ccccff">BwkCls</td>
<td align='center' width='200' bgcolor="#ccccff">EAISvcCd</td>
</tr>
<%
if(al == null || al.size() == 0) {
%>
<tr bgcolor='white'>
<td align='left' colspan="4" bgcolor="#ffffff">No Message in Queue&nbsp;</td>
</tr>
<%
}
else {
try {
for(int i=0; i<al.size(); i++) {
Object o = al.get(i);
EAIMessage msg = null;
ObjectMessage om = null;
if(o instanceof ObjectMessage) {
om = (ObjectMessage)o;
msg = (EAIMessage)om.getObject();
%>
<tr bgcolor='white'>
<td align='left' bgcolor="#ffffff"><%= om.getJMSMessageID() %>&nbsp;</td>
<td align='left' bgcolor="#ffffff"><%= new Date(om.getJMSTimestamp()) %>&nbsp;</td>
<td align='left' bgcolor="#ffffff"><%= msg.getBwkCls() %>&nbsp;</td>
<td align='left' bgcolor="#ffffff"><%= msg.getEAISvcCd() %>&nbsp;</td>
</tr>
<%
}
}
} catch(Exception e) {
out.println(e.getMessage());
}
}
%>
</table><br>
</form>
</body>
</html>
+245
View File
@@ -0,0 +1,245 @@
<%@ page import="javax.jms.*,com.eactive.eai.flowcontrol.jms.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%
String receiverName = request.getParameter("receiverName");
String queueName = request.getParameter("queueName");
String errorQueueName = request.getParameter("errorQueueName");
String receiverCount = request.getParameter("receiverCount");
String delayMs = request.getParameter("delayMs");
String retryCnt = request.getParameter("retryCnt");
String selector = request.getParameter("selector");
String descr = request.getParameter("descr");
String sreceiverName = request.getParameter("s_receiverName");
String actionType = request.getParameter("actionType");
String[][] monitorDataTotal = null;
String[][] monitorData = null;
FCQueueReceiverManager man = FCQueueReceiverManager.getInstance();
System.out.println("actionType = " + actionType);
System.out.println("sreceiverName = " + sreceiverName);
String errorMsg = null;
String[] receiverNames = null;
try {
if("START".equals(actionType)) {
System.out.println("START : receiverName = " + receiverName);
int ireceiverCount = Integer.parseInt(receiverCount);
int idelayMs = Integer.parseInt(delayMs);
int iretryCnt = Integer.parseInt(retryCnt);
FCQueueReceiverVO vo = new FCQueueReceiverVO();
vo.setReceiverName(receiverName);
vo.setQueueName(queueName);
vo.setErrorQueueName(errorQueueName);
vo.setReceiverCount(ireceiverCount);
vo.setErrorDelayTimeMs(idelayMs);
vo.setRetryCount(iretryCnt);
vo.setMessageSelector(selector);
vo.setDescription(descr);
man.setFCQueueReceiver(vo);
}
else if("STOP".equals(actionType)) {
System.out.println("STOP : receiverName = " + sreceiverName);
man.removeFCQueueReceiver(sreceiverName);
}
else if("STATUS".equals(actionType)) {
System.out.println("STATUS : receiverName = " + sreceiverName);
monitorDataTotal = man.getMonitorData();
monitorData = man.getMonitorData(sreceiverName);
FCQueueReceiverVO vo = man.getFCQueueReceiver(sreceiverName);
receiverName = vo.getReceiverName();
queueName = vo.getQueueName();
errorQueueName = vo.getErrorQueueName();
receiverCount = "" + vo.getReceiverCount();
delayMs = "" + vo.getErrorDelayTimeMs();
retryCnt = "" + vo.getRetryCount();
selector = vo.getMessageSelector();
descr = vo.getDescription();
}
else if("RESET".equals(actionType)) {
System.out.println("RESET : receiverName = " + sreceiverName);
man.resetCount(sreceiverName);
}
else {
System.out.println("Unhandled Action " + actionType);
}
System.out.println("receiverName = " + receiverName);
System.out.println("queueName = " + queueName);
System.out.println("errorQueueName= " + errorQueueName);
System.out.println("receiverCount = " + receiverCount);
System.out.println("delayMs = " + delayMs);
System.out.println("retryCnt = " + retryCnt);
System.out.println("selector = " + selector);
System.out.println("descr = " + descr);
} catch(Exception e) {
errorMsg = e.getMessage();
//e.printStackTrace();
}
try {
receiverNames = man.getAllReceiverNames();
} catch(Exception e) {
errorMsg = e.getMessage();
//e.printStackTrace();
}
%>
<html>
<head>
<title>
FC Queue Receiver Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doStop() {
document.frm.actionType.value="STOP";
document.frm.submit();
}
function doStart() {
document.frm.actionType.value="START";
document.frm.submit();
}
function doStatus() {
document.frm.actionType.value="STATUS";
document.frm.submit();
}
function doReset() {
document.frm.actionType.value="RESET";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>FC Queue Receiver Manager</b>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table border='0' width="800" >
<tr>
<td colspan="5" align='left'>
<%
if(errorMsg != null) {
%>
<font color=red>Error : <%= errorMsg %></font>
<%
}
%>
</td>
</tr>
<tr>
<td width="200" align='left'>* Receiver Name</td>
<td align='left'><input type="text" name="receiverName" size='40' value="<%= receiverName==null?"":receiverName %>" ></td>
</tr>
<tr>
<td width="200" align='left'>* Queue Name</td>
<td align='left'><input type="text" name="queueName" size='40' value="<%= queueName==null?"":queueName %>" ></td>
</tr>
<td width="200" align='left'>* Error Queue Name</td>
<td align='left'><input type="text" name="errorQueueName" size='40' value="<%= errorQueueName==null?"":errorQueueName %>" ></td>
</tr>
<tr>
<td width="200" align='left'>* Queue Thread Count</td>
<td align='left'><input type="text" name="receiverCount" size='40' value="<%= receiverCount==null?"":receiverCount %>" ></td>
</tr>
<tr>
<td width="200" align='left'>* Error Delay Time(ms)</td>
<td align='left'><input type="text" name="delayMs" size='40' value="<%= delayMs==null?"":delayMs %>" ></td>
</tr>
<td width="200" align='left'>* Retry Count</td>
<td align='left'><input type="text" name="retryCnt" size='40' value="<%= retryCnt==null?"":retryCnt %>" ></td>
</tr>
<tr>
<td width="200" align='left'>Selector</td>
<td align='left'><input type="text" name="selector" size='40' value="<%= selector==null?"":selector %>" ></td>
</tr>
<tr>
<td colspan="2" align='left'>Selector keys( EAIBWKCLS, EAISVCCD, OSIDINSTCD )</td>
</tr>
<tr>
<td width="200" align='left'>Description</td>
<td align='left'><input type="text" name="descr" size='40' value="<%= descr==null?"":descr %>" ></td>
</tr>
<tr>
<td align='left'>
<select name="s_receiverName">
<%
for(int i=0; i<receiverNames.length; i++) {
%>
<option value="<%=receiverNames[i]%>" <%= receiverNames[i].equals(sreceiverName)?"selected":"" %> ><%=receiverNames[i]%>
<%
}
%> </select>
</td>
<td align='right'>
<input type="button" value="STOP" onclick="doStop()">
<input type="button" value="START" onclick="doStart()">
<input type="button" value="STATUS" onclick="doStatus()">
<input type="button" value="RESET" onclick="doReset()">
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' width='400' bgcolor="#ccccff">Receiver Name</td>
<td align='center' width='200' bgcolor="#ccccff">MSG COUNT</td>
<td align='center' width='200' bgcolor="#ccccff">SUCCESS</td>
</tr>
<%
if(monitorDataTotal != null) {
for(int i=0; i<monitorDataTotal.length; i++) {
%>
<tr bgcolor='white'>
<td align='right' width='400' bgcolor="#ffffff"><%= monitorDataTotal[i][0] %>&nbsp;</td>
<td align='right' width='200' bgcolor="#ffffff"><%= monitorDataTotal[i][1] %>&nbsp;</td>
<td align='right' width='200' bgcolor="#ffffff"><%= monitorDataTotal[i][2] %>&nbsp;</td>
</tr>
<%
}
}
%>
</table><br>
Detail : <%= sreceiverName %><br>
STATUS : 0 -Wait, 1-Runnung, 2- Retry<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' width='500' bgcolor="#ccccff">Receiver Name</td>
<td align='center' width='100' bgcolor="#ccccff">MSG COUNT</td>
<td align='center' width='100' bgcolor="#ccccff">SUCCESS</td>
<td align='center' width='100' bgcolor="#ccccff">STATUS</td>
</tr>
<%
if(monitorData != null) {
for(int i=0; i<monitorData.length; i++) {
%>
<tr bgcolor='white'>
<td align='right' width='400' bgcolor="#ffffff"><%= monitorData[i][0] %>&nbsp;</td>
<td align='right' width='200' bgcolor="#ffffff"><%= monitorData[i][1] %>&nbsp;</td>
<td align='right' width='200' bgcolor="#ffffff"><%= monitorData[i][2] %>&nbsp;</td>
<td align='right' width='200' bgcolor="#ffffff"><%= monitorData[i][3] %>&nbsp;</td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+14
View File
@@ -0,0 +1,14 @@
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<html>
<head>
<title>
EAI 조건부 라우팅 정보 테이블
</title>
</head>
<body>
<p>
EAI 조건부 라우팅 정보 테이블 페이지 입니다.<br>
프로퍼티 정보 출력/수정 페이지 작성 필요합니다.
</p>
</body>
</html>
+14
View File
@@ -0,0 +1,14 @@
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<html>
<head>
<title>
EAI 참고 메시지 ID
</title>
</head>
<body>
<p>
EAI 참고 메시지 ID 페이지 입니다.<br>
프로퍼티 정보 출력/수정 페이지 작성 필요합니다.
</p>
</body>
</html>
+126
View File
@@ -0,0 +1,126 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.adapter.AdapterGroupVO"%>
<%@ page import="com.eactive.eai.adapter.AdapterManager"%>
<%@ page import="com.eactive.eai.adapter.AdapterVO"%>
<%
String flag = "";
AdapterManager manager = AdapterManager.getInstance();
List grpList = manager.getAllAdapterGroupNames();
String selectedName = request.getParameter("groupName");
String selectedadp = request.getParameter("adpName");
if (selectedName == null && grpList.size() > 0)
selectedName = (String)grpList.get(0);
AdapterGroupVO grpVO = manager.getAdapterGroupVO(selectedName);
String[] adpNames = grpVO.getAdapterNames();
if (selectedadp == null && adpNames.length > 0)
selectedadp = adpNames[0];
AdapterVO aVO = manager.getAdapterVO(selectedName,selectedadp );
if ("S".equals(request.getParameter("flag"))) {
grpVO = manager.getAdapterGroupVO(selectedName);
adpNames = grpVO.getAdapterNames();
selectedadp = adpNames[0];
aVO = grpVO.getAdapterVO(selectedadp);
}
if (selectedName != null && selectedadp != null) {
aVO = manager.getAdapterVO(selectedName, selectedadp);
}
%>
<html>
<head>
<title>
Adpater Informations
</title>
<script>
function doAction() {
document.frm.submit();
}
function doSelect() {
document.frm.flag.value="S";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>어댑터 정보</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="flag" value="<%=flag%>">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">어댑터 그룹명 :&nbsp;</td>
<td align='left'>&nbsp;<select name="groupName" onchange="doSelect();" style="width:98%;">
<%
for(int i=0;i < grpList.size(); i++) {
%>
<option value="<%= grpList.get(i) %>" <%= (grpList.get(i).equals(selectedName)) ? "selected" : "" %>><%= grpList.get(i) %>
<%
}
%></select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">어댑터 이름 :&nbsp;</td>
<td align='left'>&nbsp;<select name="adpName" onchange="doAction();" style="width:98%;">
<%
for(int i=0;i < adpNames.length; i++) {
%>
<option value="<%= adpNames[i] %>" <%= (adpNames[i].equals(selectedadp)) ? "selected" : "" %>><%= adpNames[i] %>
<%
}
%></select>
</td>
</tr>
</table><br>
<%
if (aVO != null) {
%>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어뎁터업무 이름 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="adptBwkNm" style="width:98%;" value="<%=aVO.getName()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 리스너클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="listenerClass" style="width:98%;" value="<%=aVO.getListenerClass()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 프라퍼티 그룹명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="propGroupName" style="width:98%;" value="<%=aVO.getPropGroupName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 테스터클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="testCallClass" style="width:98%;" value="<%=aVO.getTestCallClass()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어뎁터 상태 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="status" style="width:98%;" value="<%=aVO.isStatus()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; AdapterVO : &nbsp;</td>
<td align='left' style="height:40px;"><%=aVO.toString()%></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+184
View File
@@ -0,0 +1,184 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.adapter.AdapterGroupVO"%>
<%@ page import="com.eactive.eai.adapter.AdapterManager"%>
<%@ page import="com.eactive.eai.adapter.AdapterVO"%>
<%
AdapterManager manager = AdapterManager.getInstance();
List alls = manager.getAllAdapterGroupNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if (selectedKey == null && alls.size() > 1) {
selectedKey = (String)alls.get(0);
}
AdapterGroupVO vo = null;
if (selectedKey != null) {
vo = manager.getAdapterGroupVO(selectedKey);
}
%>
<html>
<head>
<title>
Adpater Informations
</title>
<script>
function doAction() {
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function detail(grpName,adpName){
console.log(grpName);
var url = 'adapter.jsp?groupName='+grpName+'&adpName='+adpName;
msgWindow=window.open(encodeURI(url));
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>어댑터 그룹정보</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan="2" align='right' width='220' bgcolor="#ccccff">어댑터그룹명 :&nbsp;&nbsp;</td>
<td align='left' >&nbsp;<select name="selectedKey" onchange="doAction();" style="width:98%">
<%
for(int i=0;i < alls.size(); i++) {
%>
<option value="<%= alls.get(i) %>" <%= (alls.get(i).equals(selectedKey)) ? "selected" : "" %>><%= alls.get(i) %>
<%
}
%></select>
</td>
<td rowspan="2" ><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" /></td>
</tr>
</table><br>
</form>
<%
if (vo != null) {
%>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어댑터 그룹명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="name" style="width:98%" value="<%=vo.getName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 업무구분코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="eaiBizCode" style="width:98%" value="<%=vo.getEaiBizCode()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 표준/비표준 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="standard" style="width:98%" value="<%=vo.getAdptrMsgPtrnCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어댑터 사용구분 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="refClass" style="width:98%" value="<%=vo.isUsedFlag()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 송수신 로그여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="srLogFlag" style="width:98%" value="<%=vo.isSrLogFlag()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; IN/OUT 구분 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="gubun" style="width:98%" value="<%=vo.getGubun()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어뎁터 유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="type" style="width:98%" value="<%=vo.getType()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 메시지타입 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="msgType" style="width:98%" value="<%=vo.getMessageType()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 참조 클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="refClass" style="width:98%" value="<%=vo.getRefClass()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; KESA F/W 사용여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="kefsUseYn" style="width:98%" value="<%=vo.getKesaUseYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 특정 LU 사용여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="luUseYn" style="width:98%" value="<%=vo.isSpcfcLUUseYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 대외기관코드<br>(표준전문셋팅) : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="osidinstiNo" style="width:98%" value="<%=vo.getOsidInstiNo()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어댑터 기관코드<br>(대외기관명) : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="adptInstiCd" style="width:98%" value="<%=vo.getAdptrInstiCode()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 업체코드 데이터<br>(업무데이터 추출 룰) : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="companyData" style="width:98%" value="<%=vo.getCompanyCodeData()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; TAS 어댑터 여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="tasAdptYn" style="width:98%" value="<%=vo.getTestMasterYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; 어댑터 별명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="nickName" style="width:98%" value="<%=vo.getAdptrNickName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='220' bgcolor="#ccccff">&nbsp; AdapterGroupVO.toString() : &nbsp;</td>
<td align='left'><%=vo.toString()%></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td bgcolor="#003366">&nbsp;<font color="yellow"><b>어뎁터업무 이름</b></font></td>
<td bgcolor="#003366">&nbsp;<font color="yellow"><b>리스너클래스명</b></font></td>
<td bgcolor="#003366">&nbsp;<font color="yellow"><b>프라퍼티 그룹명</b></font></td>
<td bgcolor="#003366">&nbsp;<font color="yellow"><b>테스터클래스명</b></font></td>
<td bgcolor="#003366">&nbsp;<font color="yellow"><b>어댑터 정보</b></font></td>
</tr>
<%
if (vo != null) {
Iterator adtIt = vo.getAdapters();
while(adtIt.hasNext()) {
AdapterVO adtVO = (AdapterVO)adtIt.next();
%>
<tr bgcolor='white'>
<td align='left'><input type="text" name="adptBwkNm" value="<%=adtVO.getName()%>" readonly></td>
<td align='left'><input type="text" name="listenerClass" value="<%=adtVO.getListenerClass()%>"></td>
<td align='left'><input type="text" name="propGroupName" value="<%=adtVO.getPropGroupName()%>"></td>
<td align='left'><input type="text" name="testCallClass" value="<%=adtVO.getTestCallClass()%>"></td>
<td align='left'><input type="button" name="detail" value="detail" onClick="detail('<%=vo.getName()%>','<%=adtVO.getName()%>')" /></td>
</tr>
<%
}
}
%>
<%
}
%>
</table>
</body>
</html>
+165
View File
@@ -0,0 +1,165 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.b2badaptermapping.B2BAdapterMapManager"%>
<%@ page import="com.eactive.eai.common.b2badaptermapping.*"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
B2BAdapterMapManager manager = B2BAdapterMapManager.getInstance();
String action = request.getParameter("actionType");
String[] alls = manager.getAllKeyNames();
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
//manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
B2BAdapterMapVO vo = null;
if(selectedKey!=null) {
vo = manager.getB2BAdapterMap(selectedKey);
}
%>
<html>
<head>
<title>
B2BAdapterMapManager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>라우팅 특정포트 매핑 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">EAI 서비스 코드 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%" >
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %> ><%=alls[i]%>
<%
}
%></select>
</td>
<!-- td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td -->
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%"/></td>
<td colspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서버인스턴스명 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getEaiInstCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서비스코드 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getEaiSvcCd()%>"></td>
</tr>
<%
String[] fkeys = vo.getAllKeyNames();
for(int i=0; i< fkeys.length; i++) {
B2BAdapterMapFldVO fld = vo.getB2BAdapterMapFld(fkeys[i]);
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">MAP FIELD : (<%=fkeys[i]%>)&nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기관코드 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=fld.getB2bExtnlInstiCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;세부업무구분명 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LOADSEQUENCE" style="width:98%" value="<%=fld.getBzwkVal()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 어뎁터업무그룹명 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=fld.getAdapterGroupName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 어뎁터업무이름 : &nbsp;</td>
<td align='left' style="height: 40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=fld.getAdapterName()%>"></td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+153
View File
@@ -0,0 +1,153 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.b2bextractor.B2BExtractManager"%>
<%@ page import="com.eactive.eai.common.b2bextractor.B2BExtractVO"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
B2BExtractManager manager = B2BExtractManager.getInstance();
String[] alls = manager.getAllKeyNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
int seq = 1;
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
// 마지막 제거
manager.reload(selectedKey.substring(0,selectedKey.length()-1));
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
B2BExtractVO vo = null;
if(selectedKey!=null) {
vo = manager.getB2BExtract(selectedKey);
}
%>
<html>
<head>
<title>
B2BExtractManager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.svcCd.value + document.frm.svcPssSeq.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>라우팅 필드추출 정보 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">IF서비스코드+IF서비스처리번호 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();" style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %> ><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">IF서비스코드 :&nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="svcCd" onkeydown="enterEvent()" style="width:98%" value="<%=vo.getEaiSvcCd()%>" /></td>
<td colspan=2 rowspan=2 align='center'><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">IF서비스처리번호 :&nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="svcPssSeq" onkeydown="enterEvent()" style="width:98%" value="<%=vo.getSvcPssSeq()%>" /></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; IF서비스코드 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getEaiSvcCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; IF서비스 처리번호 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기관코드추출 CLASS : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="LOADSEQUENCE" style="width:98%" value="<%=vo.getRouteActionName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 어댑터라우팅추출 CLASS : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getAdapterActionName()%>"></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+250
View File
@@ -0,0 +1,250 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.b2bservice.B2BServiceManager"%>
<%@ page import="com.eactive.eai.common.b2bservice.B2BServiceVO"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
B2BServiceManager manager = B2BServiceManager.getInstance();
String action = request.getParameter("actionType");
String [] alls = manager.getAllKeys();
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
// 마지막 제거
manager.reload(selectedKey.substring(0,selectedKey.length()-1));
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
B2BServiceVO vo = null;
if(selectedKey!=null) {
vo = manager.getB2BServiceVO(selectedKey);
}
%>
<html>
<head>
<title>
B2BServiceManager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.instiCd.value + document.frm.searchSvcPssSeq.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>라우팅 B2B기관 정보 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">기관코드 + 서비스처리순서 :&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %> ><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">기관코드 : &nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="instiCd" onkeydown="enterEvent()" value="<%=vo.getB2bExtnlInstiCd()%>" /></td>
<td colspan=2 rowspan=2 align='center'><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">서비스처리번호 : &nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="searchSvcPssSeq" onkeydown="enterEvent()" value="<%=vo.getSvcPssSeq()%>" /></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;기관코드 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="svcPssSeq" style="width:98%" value="<%=vo.getB2bExtnlInstiCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;서비스처리순서 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="svcPssSeq" style="width:98%" value="<%=vo.getSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동인터페이스유형 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="psvItfTp" style="width:98%" value="<%=vo.getPsvItfTp()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동업무시스템명 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="psvBwkSysNm" style="width:98%" value="<%=vo.getPsvBwkSysNm()%>"></td>
</tr>
<%--
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템ID : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="psvSysID" style="width:98%" value="<%=vo.getPsvSysID()%>"></td>
</tr>
--%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템서비스코드 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="psvSysSvcCd" style="width:98%" value="<%=vo.getPsvSysSvcCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템인터페이스유형 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="psvSysItfTp" style="width:98%" value="<%=vo.getPsvSysItfTp()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; FailOver여부 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="flOvrCls" style="width:98%" value="<%=vo.getFlOvrCls()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환유무 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="cnvEn" style="width:98%" value="<%=vo.getCnvEn()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환메시지ID : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="cnvMsgID" style="width:98%" value="<%=vo.getCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답메시지비교값 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="bsRspMsgCprVl" style="width:98%" value="<%=vo.getBsRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환유무 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="bsRspCnvEn" style="width:98%" value="<%=vo.getBsRspCnvEn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환메시지ID : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="bsRspCnvMsgID" style="width:98%" value="<%=vo.getBsRspCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답메시지비교값 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="errRspMsgCprVl" style="width:98%" value="<%=vo.getErrRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환유무 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="errRspCnvEn" style="width:98%" value="<%=vo.getErrRspCnvEn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환메시지ID : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="errRspCnvMsgID" style="width:98%" value="<%=vo.getErrRspCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 다음서비스처리순서 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="nxtSvcPssSeq" style="width:98%" value="<%=vo.getNxtSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Outbound라우팅명 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="outbRtnNm" style="width:98%" value="<%=vo.getOutbRtnNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 타임아웃값 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="tmoVl" style="width:98%" value="<%=vo.getTmoVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 보상서비스처리코드 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="cpnsSvcPssCd" style="width:98%" value="<%=vo.getCpnsSvcPssCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 추가삭제여부 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="supplDelYn" style="width:98%" value="<%=vo.getSupplDelYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 헤더제어구분코드 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="hdrCtrlDstcd" style="width:98%" value="<%=vo.getHdrCtrlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 참고클래스명 : &nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="hdrRefClsName" style="width:98%" value="<%=vo.getHdrRefClsName()%>"></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+151
View File
@@ -0,0 +1,151 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.bizkey.BizKeyFldVO"%>
<%@ page import="com.eactive.eai.common.bizkey.BizKeyManager"%>
<%@ page import="com.eactive.eai.common.bizkey.BizKeyVO"%>
<%
BizKeyManager manager = BizKeyManager.getInstance();
String[] alls = manager.getAllKeyNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length > 1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
//마지막 TR 을 빼고 처리 해야됨
manager.reload(selectedKey.substring(0, selectedKey.length()-2), selectedKey.substring(selectedKey.length()-2));
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
BizKeyVO vo = null;
if(selectedKey != null) {
vo = manager.getBizKey(selectedKey);
}
%>
<html>
<head>
<title>
BizKey Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>로그조회키 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">로그조회키 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" /></td>
<td colspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right'bgcolor="#003366">&nbsp; <font color="yellow"><b>Property Key</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>Property Value</b></font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서비스코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="EaiSvcCd" style="width:98%" value="<%=vo.getEaiSvcCd()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 추출구분 : &nbsp;</td>
<td align='left' style="height:40px;">
<%
int exrClassLength = EAITable.EXR_CLASS_TYPES.length;
String exrClassTypeName = "";
for(int i=0; i<exrClassLength; i++) {
if(EAITable.EXR_CLASS_TYPES[i].equals(vo.getExrClsNm())) exrClassTypeName = EAITable.EXR_CLASS_TYPES[i];
}
%>&nbsp;<input type="text" name="ExrClsNm" style="width:98%" value="<%=exrClassTypeName%>" readonly>
</td>
</tr>
<%
int fldSize = vo.getBizKeyFldLength();
for(int i=0; i<fldSize; i++) {
%>
<tr bgcolor='white'>
<td align='right' width="350" height="5" bgcolor="#003366" colspan="2">&nbsp;<font color="yellow"><b>FldPrcssNo[<%= vo.getBizKeyFld(i).getColPssSeq() %>]</b> &nbsp;</font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 메시지유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<select name="MsgTp" style="width:98%">
<%
int msgTypeLength = EAITable.MSG_TYPES.length;
for(int j=0; j<msgTypeLength; j++) {
%>
<option value="<%=EAITable.MSG_TYPES[j]%>" <%= (EAITable.MSG_TYPES[j].equals(vo.getBizKeyFld(i).getMsgTp())) ? "selected" : "" %>><%=EAITable.MSG_TYPES[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 업무필드명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkColNm" style="width:98%" value="<%=vo.getBizKeyFld(i).getBwkColNm()%>"></td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+41
View File
@@ -0,0 +1,41 @@
<%@ page import="java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.kbstar.eai.common.businessday.*"%>
<%
BusinessDayManager manager = BusinessDayManager.getInstance();
Map<String, BusinessDayVO> messages = manager.getAllBusinessDays();
%>
<html>
<head>
<title>일자전환 변경대상 정보</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>일자전환 변경대상 정보</b> <br><br>
</p>
<form name="frm" action="">
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' width='250' bgcolor="#ccccff">EAI 서비스코드</td>
<td align='center' width='200' bgcolor="#ccccff">전문유효일자</td>
</tr>
<%
Iterator it = messages.keySet().iterator();
for(int i=0;it.hasNext();i++) {
BusinessDayVO vo = (BusinessDayVO)messages.get((String)it.next());
%>
<tr bgcolor='white'>
<td align='center'><%= vo.getEAISvcName() %></td>
<td align='center'><%= vo.getTelgmValdYmd() %></td>
</tr>
<% } %>
</table>
</form>
</body>
</html>
+222
View File
@@ -0,0 +1,222 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.c2rservice.C2RServiceManager"%>
<%@ page import="com.eactive.eai.common.c2rservice.C2RServiceVO"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
String action = request.getParameter("actionType");
C2RServiceManager manager = C2RServiceManager.getInstance();
String key[] = manager.getAllKeys();
String selectedKey = request.getParameter("selectKeys");
int seq = 1;
if(selectedKey == null && key.length>0) {
selectedKey = key[0];
}
C2RServiceVO sm = null;
if(selectedKey!=null) {
sm = manager.getC2RServiceVO(selectedKey);
}
%>
<html>
<head>
<title>
C2RServiceManager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>C2RService Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="eaiSvcCds : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="selectKeys" onchange="doAction();">
<%
for(int i=0;i<key.length;i++) {
%>
<option value="<%=key[i]%>" <%= (key[i].equals(selectedKey)) ? "selected" : "" %> ><%=key[i]%>
<%
}
%></select>
</td>
</tr>
</table>
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(sm != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;기관코드 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="svcPssSeq" size='60' value="<%=sm.getC2rExtnlInstiCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;서비스처리순서 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="svcPssSeq" size='60' value="<%=sm.getSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동인터페이스유형 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="psvItfTp" size='60' value="<%=sm.getPsvItfTp()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동업무시스템명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="psvBwkSysNm" size='60' value="<%=sm.getPsvBwkSysNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템ID : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="psvSysID" size='60' value="<%=sm.getPsvSysID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템서비스코드 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="psvSysSvcCd" size='60' value="<%=sm.getPsvSysSvcCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템인터페이스유형 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="psvSysItfTp" size='60' value="<%=sm.getPsvSysItfTp()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; FailOver여부 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="flOvrCls" size='60' value="<%=sm.getFlOvrCls()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환유무 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="cnvEn" size='60' value="<%=sm.getCnvEn()%>">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환메시지ID : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="cnvMsgID" size='60' value="<%=sm.getCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답메시지비교값 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="bsRspMsgCprVl" size='60' value="<%=sm.getBsRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환유무 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="bsRspCnvEn" size='60' value="<%=sm.getBsRspCnvEn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환메시지ID : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="bsRspCnvMsgID" size='60' value="<%=sm.getBsRspCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답메시지비교값 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="errRspMsgCprVl" size='60' value="<%=sm.getErrRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환유무 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="errRspCnvEn" size='60' value="<%=sm.getErrRspCnvEn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환메시지ID : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="errRspCnvMsgID" size='60' value="<%=sm.getErrRspCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 다음서비스처리순서 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="nxtSvcPssSeq" size='60' value="<%=sm.getNxtSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Outbound라우팅명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="outbRtnNm" size='60' value="<%=sm.getOutbRtnNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 타임아웃값 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="tmoVl" size='60' value="<%=sm.getTmoVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 보상서비스처리코드 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="cpnsSvcPssCd" size='60' value="<%=sm.getCpnsSvcPssCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 추가삭제여부 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="supplDelYn" size='60' value="<%=sm.getSupplDelYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 헤더제어구분코드 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="hdrCtrlDstcd" size='60' value="<%=sm.getHdrCtrlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 참고클래스명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="hdrRefClsName" size='60' value="<%=sm.getHdrRefClsName()%>"></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+76
View File
@@ -0,0 +1,76 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.adapter.AdapterGroupVO"%>
<%@ page import="com.eactive.eai.adapter.AdapterManager"%>
<%@ page import="com.eactive.eai.adapter.Keys"%>
<%@ page import="com.eactive.eai.inbound.processor.RequestProcessor"%>
<%
AdapterManager manager = AdapterManager.getInstance();
List all = manager.getAllAdapterGroupNames();
String flag = request.getParameter("flag");
if(flag!=null && flag.equals("reset")) {
RequestProcessor.resetCount();
}
%>
<html>
<head>
<META HTTP-EQUIV="refresh" Content="5; /ESBWeb/common/currentTx.jsp">
<title>
어댑터 별 진행 서비스 수
</title>
<script>
function go() {
document.frm.submit();
}
</script>
</head>
<body>
<p>
RequestProcessor 처리 현황
</p>
<form name="frm" method="post">
<input type="hidden" name="flag" value="reset">
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center'>현재수신 건수</td>
<td align='center'>에러건수</td>
<td align='center'>초기화</td>
</tr>
<tr bgcolor='white'>
<td align='center'><%= RequestProcessor.rcvCount()%></td>
<td align='center'><%= RequestProcessor.errCount()%></td>
<td align='center'><input type="submit" value="reset"></td>
</tr>
</table>
</form>
<br>
<p>
어댑터 별 진행 서비스 수
</p>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center'>이름</td>
<td align='center'>상태</td>
<td align='center'>진행건수</td>
</tr>
<%
for(int i=0;i<all.size();i++) {
String name = (String)all.get(i);
AdapterGroupVO g = (AdapterGroupVO)manager.getAdapterGroupVO(name);
%>
<tr bgcolor='white'>
<td align='right'><%=g.getName()%></td>
<td align='center'><%=g.isStarted()%></td>
<td align='center'><%=g.currentTx()%></td>
</tr>
<% }%>
</table>
</body>
</html>
+17
View File
@@ -0,0 +1,17 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=UTF-8"%>
<%@ page import="com.eactive.eai.common.web.FrontFilter"%>
<html>
<head>
<title>
Currrnet Tx in Web Application
</title>
</head>
<body>
<p>
Currrnet Tx in Web Application
</p>
<label>Current Count: <%=FrontFilter.count()%></label>
</body>
</html>
+366
View File
@@ -0,0 +1,366 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%
EAIMessageManager manager = EAIMessageManager.getInstance();
String[] alls = manager.getAllEAISvcCd();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
EAIMessage vo = null;
if(selectedKey!=null) {
vo = manager.getEAIMessage(selectedKey);
}
%>
<html>
<head>
<title>
EAIMessage Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function openSvcMsgs(id){
var url = 'svcmessages.jsp?id='+id;
msgWindow=window.open(url);
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>EAI 서비스 코드관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan="2" align='right' width='350' bgcolor="#ccccff">EAI서비스코드 </td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan="2" align="center" ><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서비스코드 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="eAISvcCd" style="width:98%" value="<%=vo.getEAISvcCd()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서버인스턴스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="eAISvrInstNm" style="width:98%" value="<%=vo.getEAISvrInstNm()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스시간유무 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svcTmEn" style="width:98%">
<%
int svcTmEnLength = EAITable.SVC_TIME_EXIST.length;
for(int i=0; i<svcTmEnLength; i++) {
%>
<option value="<%=EAITable.SVC_TIME_EXIST[i]%>" <%= (EAITable.SVC_TIME_EXIST[i].equals(vo.getSvcTmEn())) ? "selected" : "" %>><%=EAITable.SVC_TIME_EXIST[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스동시사용 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svcTsmtUsgTp" style="width:98%">
<%
int svcTsmtUsgTpLength = EAITable.SVC_SAME_TIME_TYPE.length;
for(int i=0; i<svcTsmtUsgTpLength; i++) {
%>
<option value="<%=EAITable.SVC_SAME_TIME_TYPE[i]%>" <%= (EAITable.SVC_SAME_TIME_TYPE[i].equals(vo.getSvcTsmtUsgTp())) ? "selected" : "" %>><%=EAITable.SVC_SAME_TIME_TYPE[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스처리유형 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svcPssTp" style="width:98%">
<%
int svcPssTpLength = EAITable.SVC_PROCESS_TYPE.length;
for(int i=0; i<svcPssTpLength; i++) {
%>
<option value="<%=EAITable.SVC_PROCESS_TYPE[i]%>" <%= (EAITable.SVC_PROCESS_TYPE[i].equals(vo.getSvcPssTp())) ? "selected" : "" %>><%=EAITable.SVC_PROCESS_TYPE[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Flow Control라우팅명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="flwCntlRtnNm" style="width:98%" value="<%=vo.getFlwCntlRtnNm()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 통합유형 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="unifTp" style="width:98%">
<%
int unifTpLength = EAITable.UNIT_TYPE.length;
for(int i=0; i<unifTpLength; i++) {
%>
<option value="<%=EAITable.UNIT_TYPE[i]%>" <%= (EAITable.UNIT_TYPE[i].equals(vo.getUnifTp())) ? "selected" : "" %>><%=EAITable.UNIT_TYPE[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기동서비스구분 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="sngSvcCls" style="width:98%">
<%
int sngSvcClsLength = EAITable.START_SVC_CLASSIFICATION.length;
for(int i=0; i<sngSvcClsLength; i++) {
%>
<option value="<%=EAITable.START_SVC_CLASSIFICATION[i]%>" <%= (EAITable.START_SVC_CLASSIFICATION[i].equals(vo.getSngSvcCls())) ? "selected" : "" %>><%=EAITable.START_SVC_CLASSIFICATION[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스처리순서 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="svcPssSeq" style="width:98%" value="<%=vo.getSvcPssSeq()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 로그처리일련번호 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="logPssSno" style="width:98%" value="<%=vo.getLogPssSno()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스전열로그여부 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svcWlColLogYn" style="width:98%">
<%
int svcWlColLogYnLength = EAITable.SVC_WHOLE_COL_LOG.length;
for(int i=0; i<svcWlColLogYnLength; i++) {
%>
<option value="<%=EAITable.SVC_WHOLE_COL_LOG[i]%>" <%= (EAITable.SVC_WHOLE_COL_LOG[i].equals(vo.getSvcWlColLogYn())) ? "selected" : "" %>><%=EAITable.SVC_WHOLE_COL_LOG[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 업무구분 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="bwkCls" style="width:98%" value="<%=vo.getBwkCls()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 표준메시지사용구분 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="stdMsgUsgCls" style="width:98%">
<%
int stdMsgUsgClsLength = EAITable.STANDARD_MSG_USAGE.length;
for(int i=0; i<stdMsgUsgClsLength; i++) {
%>
<option value="<%=EAITable.STANDARD_MSG_USAGE[i]%>" <%= (EAITable.STANDARD_MSG_USAGE[i].equals(vo.getStdMsgUsgCls())) ? "selected" : "" %>><%=EAITable.STANDARD_MSG_USAGE[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기동시스템인터페이스유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="sngSysItfTp" style="width:98%" value="<%=vo.getSngSysItfTp()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이어메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="lydMsgID" style="width:98%" value="<%=vo.getLydMsgID()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서버로그레벨 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svrLogLvl" style="width:98%">
<%
int svrLogLvlLength = EAITable.SERVER_LOG_LEVEL.length;
for(int i=0; i<svrLogLvlLength; i++) {
%>
<option value="<%=EAITable.SERVER_LOG_LEVEL[i]%>" <%= (EAITable.SERVER_LOG_LEVEL[i]==vo.getSvrLogLvl()) ? "selected" : "" %>><%=EAITable.SERVER_LOG_LEVEL_TYPE[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스로그레벨 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="svcLogLvl" style="width:98%">
<%
int svcLogLvlLength = EAITable.SVC_LOG_LEVEL.length;
for(int i=0; i<svcLogLvlLength; i++) {
%>
<option value="<%=EAITable.SVC_LOG_LEVEL[i]%>" <%= (EAITable.SVC_LOG_LEVEL[i]==vo.getSvcLogLvl()) ? "selected" : "" %>><%=EAITable.SVC_LOG_LEVEL[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류EAI서비스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="errEAISvcName" style="width:98%" value="<%=vo.getErrEAISvcName()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류요청변환ID명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="dmndErrChngIDName" style="width:98%" value="<%=vo.getDmndErrChngIDName()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류요청에러필드명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="dmndErrFldName" style="width:98%" value="<%=vo.getDmndErrFldName()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환ID명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="rspnsErrChngIDName" style="width:98%" value="<%=vo.getRspnsErrChngIDName()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답에러필드명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="rspnsErrFldName" style="width:98%" value="<%=vo.getRspnsErrFldName()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서비스 설명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="eAISvcDesc" style="width:98%" value="<%=vo.getEAISvcDesc()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI서버구분코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="sevrDstcd" style="width:98%" value="<%=vo.getSevrDstcd()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 그룹사코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="groupCoCd" style="width:98%" value="<%=vo.getGroupCoCd()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 거래처리구분 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="tranType" style="width:98%" value="<%=vo.getTranType()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 사용여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="useYn" style="width:98%" value="<%=vo.getUseYn()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서비스처리정보리스트 : &nbsp;</td>
<%
if(vo.getSvcMsgs().size()<=0) {
%>
<td align='left' style="height:40px;">&nbsp; 0건 입니다. &nbsp; </td>
<%
}
else {
%>
<td align='left' >&nbsp;<a href="javascript:openSvcMsgs('<%= vo.getEAISvcCd() %>');"><%=vo.getSvcMsgs().size()%>&nbsp; 건 &nbsp;</a> </td>
<%
}
%>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+106
View File
@@ -0,0 +1,106 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.server.EAIServerManager"%>
<%@ page import="com.eactive.eai.common.server.EAIServerVO"%>
<%
EAIServerManager manager = EAIServerManager.getInstance();
String[] alls = manager.getAllEaiSvrInstNm();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
EAIServerVO vo = null;
if(selectedKey!=null) {
vo = manager.getEAIServer(selectedKey);
}
%>
<html>
<head>
<title>
EAIServer Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>서버 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' rowspan=2 width='350' bgcolor="#ccccff">EAI Server 인스턴스명 :&nbsp;&nbsp;</td>
<td align='left' colspan=2>&nbsp;<select name=selectedKey onchange="doAction();">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan="2" align="center" ><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서버 인스턴스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="name" styel="width:98%" value="<%=vo.getName()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서버 아이피 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="address" styel="width:98%" value="<%=vo.getAddress()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 서버 포트 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="port" styel="width:98%" value="<%=vo.getPort()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 장애극복서버명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="failoverSvr" styel="width:98%" value="<%=vo.getFailoverSvr()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 호스트명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="failoverSvr" styel="width:98%" value="<%=vo.getHostName()%>" ></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+111
View File
@@ -0,0 +1,111 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.errorcode.ErrorCodeManager"%>
<%@ page import="com.eactive.eai.common.errorcode.ErrorCodeVO"%>
<%
ErrorCodeManager manager = ErrorCodeManager.getInstance();
String[] alls = manager.getAllCodes();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
ErrorCodeVO vo = null;
if(selectedKey != null){
vo = manager.getMessageVO(selectedKey);
}
%>
<html>
<head>
<title>
Error Code Message Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>오류메시지 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan="2" align='right' width='180' bgcolor="#ccccff"><label value=" "/>오류메시지 코드 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%" >
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan="2" align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<% if(vo!=null) { %>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">오류메시지 코드 :&nbsp;&nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="text" size="80" value="<%=vo.getMsgKey()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">오류메시지 :&nbsp;&nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="text" size="80" value="<%=vo.getMsgTxt()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">조치사항 :&nbsp;&nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="text" size="80" value="<%=vo.getMsgEtc()%>"></td>
</tr>
<% } else { %>
<% } %>
</table>
</form>
</body>
</html>
+48
View File
@@ -0,0 +1,48 @@
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="java.io.*, java.util.*"%>
<%@ page import="com.eactive.eai.agent.firstaccount.ShareMemory" %>
<%
ShareMemory sm = ShareMemory.getInstance();
String accNum = sm.getAccoutName();
String [] accNumArr = accNum.split(",");
%>
<html>
<head>
<title>
FirstAccount Info
</title>
<script>
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>FirstAccount Info</b> <br><br>
</p>
<form name="frm" action="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">FirstAccount :</td>
<td align='left' style="word-break: break-all;"><%=accNum %></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' bgcolor="#003366">&nbsp; <font color="yellow"><b>¼ø¹ø</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>¸ñ·Ï</b></font></td>
</tr>
<%
for(int i=0; i<accNumArr.length; i++){
%>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">[ <%=i %> ] : &nbsp;&nbsp;</td>
<td align='left'><%=accNumArr[i] %></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+81
View File
@@ -0,0 +1,81 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.inflow.InflowControlManager"%>
<%@ page import="com.eactive.eai.common.inflow.InflowTargetVO"%>
<%
InflowControlManager manager = InflowControlManager.getInstance();
String[] names = manager.getAdapterAllKeys();
String selectedName = request.getParameter("name");
if(selectedName == null && names.length>0) selectedName = names[0];
InflowTargetVO vo = manager.getAdapterInflow(selectedName);
%>
<html>
<head>
<title>
Inflow Adapter Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Infow Adapter Configuration</b> <br><br>
</p>
<form name="frm" action="">
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<%
if(selectedName!=null) {
%>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff">어댑터명 : &nbsp;</td>
<td align='left' width='250'>&nbsp;<select name="name" onchange="doAction();">
<%
for(int i=0;i<names.length;i++) {
%>
<option value="<%=names[i]%>" <%=(names[i].equals(selectedName)) ? "selected" : ""%>><%=names[i]%>
<%
}
%></select>
</td>
</tr>
<%
if (vo != null){
%>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">선택된 어댑터명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">초당 임계치 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThresholdPerSecond()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">추가 임계치 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThreshold()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">추가 임계치 TimeUnit : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThresholdTimeUnit()%>"></td>
</tr>
<%
}
%>
<% } else { %>
<% } %>
</table>
<table border='0' width="800" >
<tr>
<td align='left'>
<!-- input type="submit" value="UPDATE"-->
</td>
</tr>
</table><br>
</form>
</body>
</html>
+81
View File
@@ -0,0 +1,81 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.inflow.InflowControlManager"%>
<%@ page import="com.eactive.eai.common.inflow.InflowTargetVO"%>
<%
InflowControlManager manager = InflowControlManager.getInstance();
String[] names = manager.getInterfaceAllKeys();
String selectedName = request.getParameter("name");
if(selectedName == null && names.length>0) selectedName = names[0];
InflowTargetVO vo = manager.getInterfaceInflow(selectedName);
%>
<html>
<head>
<title>
Inflow Interface Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Infow Interface Configuration</b> <br><br>
</p>
<form name="frm" action="">
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<%
if(selectedName!=null) {
%>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff">인터페이스명 : &nbsp;</td>
<td align='left' width='250'>&nbsp;<select name="name" onchange="doAction();">
<%
for(int i=0;i<names.length;i++) {
%>
<option value="<%=names[i]%>" <%=(names[i].equals(selectedName)) ? "selected" : ""%>><%=names[i]%>
<%
}
%></select>
</td>
</tr>
<%
if (vo != null){
%>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">선택된 인터페이스명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">초당 임계치 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThresholdPerSecond()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">추가 임계치 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThreshold()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">추가 임계치 TimeUnit : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getThresholdTimeUnit()%>"></td>
</tr>
<%
}
%>
<% } else { %>
<% } %>
</table>
<table border='0' width="800" >
<tr>
<td align='left'>
<!-- input type="submit" value="UPDATE"-->
</td>
</tr>
</table><br>
</form>
</body>
</html>
+228
View File
@@ -0,0 +1,228 @@
<%-- <%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.agent.AgentUtil"%>
<%@ page import="com.eactive.eai.agent.command.Command"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.kbstar.eai.common.kbmessage.*"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
KBMessageManager manager = KBMessageManager.getInstance();
String[] alls = manager.getAllKBMessageKeys();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
KBMessage vo = null;
if(selectedKey != null){
vo = manager.getKBMessage(selectedKey);
}
%>
<html>
<head>
<title>
EAI KBMessage Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>EAI KB내부표준 메시지 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan="2" align='right' width='350' bgcolor="#ccccff">업무 서비스 키 :&nbsp;&nbsp;</td>
<td align='left' >&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%" >
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan="2" align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table>
</form>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' bgcolor="#003366">&nbsp; <font color="yellow"><b>Property Key</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>Property Value</b></font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 업무 서비스 키 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="bwkSvcKey" style="width:98%" value="<%=vo.getBwkSvcKey()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; CICS트랜코드 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cICSTrncd" style="width:98%" value="<%=vo.getKBHeader().getCicsTrncd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 전문요청구분코드 : (S-요청 /R-응답)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="telgmDmndDstcd" style="width:98%" value="<%=vo.getKBHeader().getTelgmDmndDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 그룹회사코드 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="groupCoCd" style="width:98%" value="<%=vo.getKBCommon().getGroupCoCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수신거래코드 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="telgmRecvTranCd" style="width:98%" value="<%=vo.getKBCommon().getTelgmRecvTranCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 처리결과수신거래코드 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="prcssRsultTelgmRecvTranCd" style="width:98%" value="<%=vo.getKBCommon().getPrcssRtdTranCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 화면번호 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="screnNo" style="width:98%" value="<%=vo.getKBCommon().getScrenNo()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 대외기관코드 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="osidInstiCd" style="width:98%" value="<%=vo.getKBCommon().getOsidInstiCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 내외부구분코드 : (1-내부/2-외부)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="wtinExtnlDstcd" style="width:98%" value="<%=vo.getKBCommon().getInoPartlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 원거래복원여부 : (0-불필요/1-필요)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="ogtranRstrYn" style="width:98%" value="<%=vo.getKBCommon().getOgtranRstrYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 복합거래요청구분코드 : (' '-없음/T-다중전송/A-다중조합)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cmpxTranDmndDstcd" style="width:98%" value="<%=vo.getKBCommon().getCmpxTranDmndDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 시스템운영환경구분코드 : (O-운영/S-테스트,스테이징/D-개발/R-DR)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="sysOperEvirnDstcd" style="width:98%" value="<%=vo.getKBCommon().getSysOperEvirnDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 취소구분코드 : (1-정상/3-정정취소/4-정정/5-취소)&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cnclDstcd" style="width:98%" value="<%=vo.getKBCommon().getCnclDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI거래코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="eAITranName" style="width:98%" value="<%=vo.getEAITranName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; EAI내외부구분코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="eaiInoPartlDstcd" style="width:98%" value="<%=vo.getKBCommon().getEaiInoPartlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 채널구분코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="chnlDstcd" style="width:98%" value="<%=vo.getKBCommon().getChnlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 채널세부업무구분코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="chnlDBzwkDstcd" style="width:98%" value="<%=vo.getKBCommon().getChnlDBzwkDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 매체구분코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="mdiaDstcd" style="width:98%" value="<%=vo.getKBCommon().getMdiaDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 거래부점코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="tranBrncd" style="width:98%" value="<%=vo.getKBCommon().getTranBrncd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 사용자 직원번호&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="userEmpid" style="width:98%" value="<%=vo.getKBCommon().getUserEmpid()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 은행코드&nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="bnkCd" style="width:98%" value="<%=vo.getKBCommon().getBnkCd()%>"></td>
</tr>
<%
}
%>
</table>
</body>
</html> --%>
+68
View File
@@ -0,0 +1,68 @@
<%-- <%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.kbstar.eai.common.kbmessage.*,com.kbstar.eai.common.kbmessage.parser.*"%>
<%
String action = request.getParameter("Convert");
String kbmessagetext = "";
String fixeddata = "";
String xmldata = "";
String errorMsg = "";
if("Convert".equals(action)) {
try {
kbmessagetext = request.getParameter("kbmessagetext");
//KBMessage kbMsg = KBMessageUtil.convert(kbmessagetext.getBytes(), false);
KBMessageParser parser = KBMessageParserFactory.createPaserFactory(KBMessageParserType.ASC.toString());
KBMessage kbMsg = parser.convert(kbmessagetext.getBytes());
fixeddata = kbMsg.toString();
xmldata = kbMsg.toXMLString();
}
catch(Exception e) {
errorMsg = e.getMessage();
}
}
%>
<html>
<head>
<title>
KBMessage Util
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Message Parser</b> <br><br>
</p>
<form name="form" action="" method="post">
<table border='0' width="800" >
<tr>
<td align='left'>
<input type="submit" name="Convert" value="Convert">
</td>
</tr>
<% if(errorMsg != null && errorMsg.length() > 0) { %>
<tr>
<td align='left'><pre><%= errorMsg %></pre></td>
</tr>
<% } %>
</table>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='left' width='180' bgcolor="#ccccff">&nbsp;KBMessage 전문</td>
<td align='left'>&nbsp;<textarea name="kbmessagetext" cols="80" rows="10"><%= kbmessagetext %></textarea></td>
</tr>
<tr bgcolor='white'>
<td align='left' width='180' bgcolor="#ccccff">&nbsp;전문파싱</td>
<td align='left'>&nbsp;<textarea name="fixeddata" cols="80" rows="10"><%= fixeddata %></textarea></td>
</tr>
<tr bgcolor='white'>
<td align='left' width='180' bgcolor="#ccccff">&nbsp;XML 전문</td>
<td align='left'>&nbsp;<textarea name="xmldata" cols="80" rows="10"><%= xmldata %></textarea></td>
</tr>
</table>
</form>
</html> --%>
+138
View File
@@ -0,0 +1,138 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.lifecycle.Lifecycle"%>
<%@ page import="com.eactive.eai.common.lifecycle.LifecycleManager"%>
<%@ page import="com.eactive.eai.common.lifecycle.LifecycleVO"%>
<%@ page import="java.util.HashMap"%>
<%@ page import="com.eactive.eai.common.util.* "%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
LifecycleManager manager = ApplicationContextProvider.getContext().getBean(LifecycleManager.class);
String action = request.getParameter("actionType");
List lists = manager.getLifecycleVOList();
String[] alls = new String[lists.size()];
for(int i=0; i< alls.length; i++){
alls[i] = ((LifecycleVO)lists.get(i)).getLifecycleClass();
}
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
LifecycleVO vo = null;
if(selectedKey!=null) {
for(int i=0; i < alls.length; i++){
String lifeC = ((LifecycleVO)lists.get(i)).getLifecycleClass();
if(selectedKey.equals(lifeC)){
vo = (LifecycleVO)lists.get(i);
}
}
}
%>
<html>
<head>
<title>
LifeCycle Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>라이프사이클 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">라이프사이클 클래스명 :&nbsp;&nbsp;</td>
<td align='left'><select name="selectedKey" onchange="doAction();"style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td rowspan="2" align="center" ><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' ><input type="edit" style="width:100%" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 라이프사이클 클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="LifecycleClass" style="width:98%" value="<%=vo.getLifecycleClass()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 로딩순서 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="LOADSEQUENCE" style="width:98%" value="<%=vo.getLoadSequence()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 라이프사이클 구분코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="LIFECYCLECLASS" style="width:98%" value="<%=vo.getLifeCyclUseDstcd()%>"></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+185
View File
@@ -0,0 +1,185 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.messagekey.*"%>
<%
MessageKeyManager manager = MessageKeyManager.getInstance();
String[] alls = manager.getAllKeyNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
//I를 "," 로 분리 해야됨
manager.reload(selectedKey.substring(0,selectedKey.length()-1),selectedKey.substring(selectedKey.length()-1) );
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
MessageKeyVO vo = null;
if(selectedKey != null){
vo = manager.getMessageKey(selectedKey);
}
String voName = (String)vo.getName();
String adptName = voName.substring(0, voName.length()-1);
String exrTp = voName.substring(voName.length()-1);
%>
<html>
<head>
<title>
MessageKey Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.adptName.value+document.frm.exrTp.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>메세지키 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">어댑터명 + 기능구분 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();" style="width:98%;" >
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">어댑터명 : &nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="adptName" onkeydown="enterEvent()" value="<%=adptName%>" style="width:98%;" /></td>
<td colspan=2 rowspan=2 align='center'><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">기능구분 : &nbsp;&nbsp;</td>
<td align='left' >&nbsp;<input type="edit" name="exrTp" onkeydown="enterEvent()" value="<%=exrTp%>"style="width:98%;"/></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 어댑터명 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="AdptIoBwkNm" style="width:98%" value="<%=adptName%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 메시지유형 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;
<select name="MsgTp">
<%
int msgTypeLength = EAITable.MSG_TYPES.length;
for(int i=0; i<msgTypeLength; i++) {
%>
<option value="<%=EAITable.MSG_TYPES[i]%>" <%= (EAITable.MSG_TYPES[i].equals(vo.getMsgTp())) ? "selected" : "" %>><%=EAITable.MSG_TYPE_NAMES[i]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기능구분 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<select name="ExrTp">
<%
int exrTypeLength = EAITable.EXR_TYPES.length;
for(int i=0; i<exrTypeLength; i++) {
%>
<option value="<%=EAITable.EXR_TYPES[i]%>" <%= (EAITable.EXR_TYPES[i].equals(vo.getExrTp())) ? "selected" : "" %>><%=EAITable.EXR_TYPE_NAMES[i]%>
<%
}
%>
</select>
</tr>
<%
int groupSize = vo.getAlMsgGroups().size();
for(int g=0; g<groupSize; g++ ) {
%>
<tr bgcolor='white'>
<td align='right' height="5" bgcolor="#003366" colspan="2">&nbsp;<font color="yellow"><b>Group[<%= g %>]</b> &nbsp;</font></td>
</tr>
<%
MessageKeyGroupVO group = vo.getMessageKeyGroup(g);
int fldSize = group.getMessageKeyFldLength();
for(int i=0; i<fldSize; i++) {
%>
<tr bgcolor='white'>
<td align='right' height="5" bgcolor="#003366" colspan="2">&nbsp;<font color="yellow"><b>Field[<%= i %>]</b> &nbsp;</font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 업무필드명 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkColNm" style="width:98%" value="<%=group.getMessageKeyFld(i).getBwkColNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 클래스명 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkClassNm" style="width:98%" value="<%=group.getMessageKeyFld(i).getBwkClassNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 필드시작위치 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkColStart" style="width:98%" value="<%=group.getMessageKeyFld(i).getBwkColStart()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 필드길이 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkColLength" style="width:98%" value="<%=group.getMessageKeyFld(i).getBwkColLength()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 정상값 : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="BwkColDef" style="width:98%" value="<%=group.getMessageKeyFld(i).getBwkColDef()%>"></td>
</tr>
<%
}
}
}
%>
</table>
</form>
</body>
</html>
+304
View File
@@ -0,0 +1,304 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%@ page import="com.eactive.eai.common.monitor.EAIServiceMonitor"%>
<%@ page import="com.eactive.eai.common.monitor.MonitorVO"%>
<%@ page import="java.util.HashMap"%>
<%
EAIServiceMonitor monitor = EAIServiceMonitor.getInstance();
String[] voKey = monitor.getAllMonitorVOKey();
String action = request.getParameter("actionType");
MonitorVO vo = null;
String[] pssCntKey = null;
String[] pssErrCntKey = null;
HashMap pssCnt = null;
HashMap pssCntInPeriod = null;
HashMap errPssCnt = null;
HashMap errPssCntInPeriod = null;
String selectedSvcCds = request.getParameter("svcCds");
if(selectedSvcCds == null && voKey.length>=1){
selectedSvcCds = voKey[0];
}
if(selectedSvcCds!=null) {
vo = monitor.getMonitorVO(selectedSvcCds);
if("RESET".equals(action)) {
vo.reset();
}
pssCntKey = vo.getAllPssCntKey();
pssCnt = vo.getPssCnt();
pssCntInPeriod = vo.getPssCntInPeriod();
errPssCnt = vo.getErrPssCnt();
errPssCntInPeriod = vo.getErrPssCntInPeriod();
pssErrCntKey = vo.getAllErrPssCntKey();
}
if("ALLRESET".equalsIgnoreCase(action)){
monitor.resetAll();
}
%>
<html>
<head>
<title>
Service ID/Log Sequence 별 통계 Monitor
</title>
<script>
function doAction() {
document.frm.submit();
}
function doReset() {
document.frm.actionType.value="RESET";
document.frm.submit();
}
function doAllReset() {
document.frm.actionType.value="ALLRESET";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Service ID/Log Sequence 별 통계 데이터</b> <br><br>
</p>
<form name="frm" method="POST" action="">
<input type="hidden" name="actionType" value="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="EAI Service Message ID : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="svcCds" onchange="doAction();">
<%
for(int i=0;i<voKey.length;i++) {
%>
<option value="<%=voKey[i]%>" <%= (voKey[i].equals(selectedSvcCds)) ? "selected" : "" %>><%=voKey[i]%>
<%
}
%></select>
</td>
</tr>
</table>
</td>
<td align='right'>
<input type="button" value="RESET" onclick="doReset()">
</td>
<td align='right'>
<input type="button" value="ALL RESET" onclick="doAllReset()">
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<%
if(pssCntKey != null && pssCntKey.length >0){
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" colspan="7">&nbsp;<font color="yellow">&nbsp; <b>일일 통계</b></font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" rowspan ="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="5">Log Sequence 별 처리 누적 </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">EAI 시스템 평균 처리시간(초) </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">수동 시스템 평균 처리시간(초) </td>
</tr>
<tr bgcolor='white'>
<%
int pssCntKeyLength = pssCntKey.length;
int pssErrCntKeyLength = pssErrCntKey.length;
long[] verTotal = new long[pssErrCntKeyLength];
long[] verInPeriodTotal = new long[pssErrCntKeyLength];
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" >&nbsp; 처리 건수 : &nbsp;</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verTotal[i] = verTotal[i]+Long.parseLong(pssCnt.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCount" size='10'value="<%=pssCnt.get(pssCntKey[i])%>"> </td>
<%
}
double avgOfprocessTime = 0;
double psvAvgOfProcessTime = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCnt.get(pssCntKey[1]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[1]).toString());
}
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
}
}
else{
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
}
}
if(Long.parseLong(pssCnt.get(pssCntKey[2]).toString()) > 0 && vo.getPsvSumOfPssTime() > 0 ){
psvAvgOfProcessTime = vo.getPsvSumOfPssTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[2]).toString());
}
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCount2" size='10'value="0">
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTime" size='10'value="<%=avgOfprocessTime%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTime" size='10'value="<%=psvAvgOfProcessTime%>"> </td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" >&nbsp; 에러 발생 건수</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verTotal[i] = verTotal[i] + Long.parseLong(errPssCnt.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="errorCount" size='10'value="<%=errPssCnt.get(pssErrCntKey[i])%>"> </td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc"> &nbsp; Log Sequence 별 합계 : &nbsp; </td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeqInPeriod" size='10'value="<%=verTotal[i]%>"> </td>
<%
}
%>
</tr>
<!--- 최근시간 --->
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" colspan="7">&nbsp;<font color="yellow">&nbsp; <b>최근시간 통계</b></font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" rowspan ="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="5">Log Sequence 별 처리 누적 </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">EAI 시스템 평균 처리시간(초) </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">수동 시스템 평균 처리시간(초) </td>
</tr>
<tr bgcolor='white'>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" > 처리 건수 : &nbsp;</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i]+Long.parseLong(pssCntInPeriod.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10'value="<%=pssCntInPeriod.get(pssCntKey[i])%>"> </td>
<%
}
double avgOfprocessTimeInPeriod = 0;
double psvAvgOfProcessTimeInPeriod = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString());
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
}
}
else{
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
}
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString()) >0 && vo.getPsvSumOfPssTimeInPeriod() > 0){
psvAvgOfProcessTimeInPeriod = vo.getPsvSumOfPssTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString());
}
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10'value="0">
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTimeInPeriod" size='10'value="<%=avgOfprocessTimeInPeriod%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTimeInPeriod" size='10'value="<%=psvAvgOfProcessTimeInPeriod%>"> </td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" >&nbsp; 에러 발생 건수</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i] + Long.parseLong(errPssCntInPeriod.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="sendCount" size='10'value="<%=errPssCntInPeriod.get(pssErrCntKey[i])%>"> </td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc"> &nbsp; Log Sequence 별 합계 : &nbsp; </td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeqInPeriod" size='10'value="<%=verInPeriodTotal[i]%>"> </td>
<%
}
%>
</tr>
<%
}
}else{
%>
</table>
해당 서비스 ID에 대한 거래 내역이 없습니다.
<%
}
%>
</form>
</body>
</html>
+109
View File
@@ -0,0 +1,109 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.property.PropGroupVO"%>
<%@ page import="com.eactive.eai.common.property.PropManager"%>
<%
PropManager manager = PropManager.getInstance();
String[] alls = manager.getAllPropGroupNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
PropGroupVO vo = null;
String[] keys = null;
if(selectedKey!=null) {
vo = manager.getPropGroupVO(selectedKey);
keys = vo.keys();
}
%>
<html>
<head>
<title>
Property Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>프라퍼티 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">프라퍼티 그룹 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%;">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" /></td>
<td colspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' bgcolor="#003366">&nbsp; <font color="yellow"><b>Property Key</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>Property Value</b></font></td>
</tr>
<%
if(vo!=null) {
for (int i=0; i<keys.length; i++){
%>
<tr bgcolor='white'>
<td align='right' width='360' bgcolor="#ccccff">&nbsp; <%=keys[i]%> : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="<%=keys[i]%>" style="width:98%" value="<%=vo.getProperty(keys[i])%>"></td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+144
View File
@@ -0,0 +1,144 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
String action = request.getParameter("actionType");
String seq = request.getParameter("actionSeq");
String eAISvcCd = checkNull(request.getParameter("id"));
EAIMessageManager manager = EAIMessageManager.getInstance();
String[] eaiSvcCds = manager.getAllEAISvcCd();
String selectedSvcCds = request.getParameter("svcCds");
if(selectedSvcCds == null && eaiSvcCds.length>=1) {
selectedSvcCds = eaiSvcCds[0];
}
if(eAISvcCd.length() > 0)
selectedSvcCds = eAISvcCd;
EAIMessage eAIMsg = new EAIMessage();
List<ServiceMessage> svcMsg = new ArrayList();
if(selectedSvcCds!=null) {
System.out.println("selectedSvcCds : "+ selectedSvcCds);
eAIMsg = manager.getEAIMessage(selectedSvcCds);
svcMsg = eAIMsg.getSvcMsgs();
}
%>
<html>
<head>
<title>
EAI RefMessageIds Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>EAI RefMessageIDs Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<!--
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="EAI Service Message ID : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="svcCds" onchange="doAction();">
<%
for(int i=0;i<eaiSvcCds.length;i++) {
%>
<option value="<%=eaiSvcCds[i]%>" <%= (eaiSvcCds[i].equals(selectedSvcCds)) ? "selected" : "" %>><%=eaiSvcCds[i]%>
<%
}
%></select>
</td>
</tr>
-->
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">EAI 서비스코드</td>
<td align='left'>&nbsp;&nbsp;<input type="text" name="selectedKey" value="<%=selectedSvcCds%>" />
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(svcMsg != null) {
int size = svcMsg.size();
for(int i=0; i<size; i++) {
ServiceMessage sm = (ServiceMessage)svcMsg.get(i);
String[] refmsgid = sm.getRefMsgIDs();
%>
<tr bgcolor='white'>
<td align='right' colspan="2">
</td>
</tr>
<tr bgcolor='white'>
<td align='right' colspan='2' width="350" height="5" bgcolor="#003366" colspan="2">&nbsp;<font color="yellow"><b>SvcPssSeq[<%= i+1 %>]</b> &nbsp;</font></td>
</tr>
<%
if(refmsgid != null && refmsgid.length >0){
for(int j=0; j<refmsgid.length; j++){
int idseq = j+1;
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; RefMsgIDSeq : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="refMsgIDSeq" size='60' value="<%=idseq%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; RefMsgID : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="refMsgIDSeq" size='60' value="<%=refmsgid[j]%>"></td>
</tr>
<%
}
}
}
}
%>
</table>
</form>
</body>
</html>
+89
View File
@@ -0,0 +1,89 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.restrict.*"%>
<%
RestrictInfoManager manager = RestrictInfoManager.getInstance();
String action = request.getParameter("actionType");
if("RELOAD".equals(action)) {
System.out.println("restrictInfo.jap - RELOAD called");
manager.reload();
}
String[] names = manager.getAllCodes();
Map<String, RestrictInfoVO> messages = manager.getAllRestrictInfos();
String selectedName = request.getParameter("code");
if(selectedName == null && names.length>1) selectedName = names[0];
%>
<html>
<head>
<title>
RestrictInfoManager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doReload() {
document.frm.actionType.value="RELOAD";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>RestrictInfo</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="600" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<% if(selectedName!=null) { %>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="Code : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="code" onchange="doAction();">
<%
for(int i=0;i<names.length;i++) {
%>
<option value="<%=names[i]%>" <%= (names[i].equals(selectedName)) ? "selected" : "" %>><%=names[i]%>
<%
}
%></select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff"><label value="EAI통제명 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="40" value="<%=((RestrictInfoVO)messages.get(selectedName)).getEAICtrlName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff"><label value="EAI통제명구분코드 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="40" value="<%=((RestrictInfoVO)messages.get(selectedName)).getEAICtrlNameDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff"><label value="EAI통제구분내용 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="40" value="<%=((RestrictInfoVO)messages.get(selectedName)).getEAICtrlDsticCtnt()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff"><label value="통제처리일시 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="40" value="<%=((RestrictInfoVO)messages.get(selectedName)).getCtrlPrcssYMS()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff"><label value="거래제어처리명 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="40" value="<%=((RestrictInfoVO)messages.get(selectedName)).getTranCtrlPrcssName()%>"></td>
</tr>
<% } else { %>
<% } %>
</table>
<table border='0' width="800" >
<tr>
<td align='left'>
<input type="button" value="RELOAD" onclick="doReload()">
</td>
</tr>
</table><br>
</form>
</body>
</html>
+120
View File
@@ -0,0 +1,120 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.routing.RoutingManager"%>
<%@ page import="com.eactive.eai.common.routing.RoutingVO"%>
<%
RoutingManager manager = RoutingManager.getInstance();
String[] alls = manager.getAllRoutingNames();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
RoutingVO vo = null;
if(selectedKey != null){
vo = manager.getRoutingVO(selectedKey);
}
%>
<html>
<head>
<title>
Routing Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>라우팅 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">라우팅명 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();" style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 라우팅명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="name" style="width:98%" value="<%=vo.getName()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 동기 라우팅 URI : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="syncRoutingPath" style="width:98%" value="<%=vo.getSyncRoutingPath()%>" ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 비동기 라우팅 URI : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="asynRoutingPath" style="width:98%" value="<%=vo.getAsynRoutingPath()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이어구분코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="asynRoutingPath" style="width:98%" value="<%=vo.getLayerDstcd()%>"></td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+129
View File
@@ -0,0 +1,129 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.agent.AgentUtil"%>
<%@ page import="com.eactive.eai.agent.command.Command"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.stdmessage.*"%>
<%@ page import="com.eactive.eai.common.server.EAIServerManager"%>
<%@ page import="java.util.HashMap"%>
<%@ page import="com.eactive.eai.message.StandardMessage"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
STDMessageManager manager = STDMessageManager.getInstance();
String[] alls = manager.getAllSTDMessageKeys();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
StandardMessage vo = null;
if(selectedKey != null) {
vo = manager.getSTDMessage(selectedKey);
}
%>
<html>
<head>
<title>
EAI STDMessage Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>EAI 내부표준 메시지 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan="2" align='right' width='350' bgcolor="#ccccff">업무 서비스 키 :&nbsp;&nbsp;</td>
<td align='left' >&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%" >
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan="2" align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table>
</form>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' bgcolor="#003366">&nbsp; <font color="yellow"><b>Property Key</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>Property Value</b></font></td>
</tr>
<%
if(vo != null) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; XML : &nbsp;&nbsp;</td>
<td align='left' style="height:40px;"><%=vo.toPrettyJson(false)%></td>
</tr>
<%
}
%>
</table>
</body>
</html>
+354
View File
@@ -0,0 +1,354 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
EAIMessageManager manager = EAIMessageManager.getInstance();
String[] alls = manager.getAllEAISvcCd();
String action = request.getParameter("actionType");
String eaiSvcCd = checkNull(request.getParameter("id"));
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if(eaiSvcCd.length() > 0){
selectedKey = eaiSvcCd;
}
List<ServiceMessage> listVo = null;
if(selectedKey!=null) {
listVo = manager.getEAIMessage(selectedKey).getSvcMsgs();
}
%>
<html>
<head>
<title>
EAI ServiceMessage Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function openRefMsgID(id){
var url = 'refmsgid.jsp?svcCds='+id;
msgWindow=window.open(url);
}
function openCondPerRtgInfo(id, seq){
var url = '_condperrtginfo.jsp?id='+id+'seq'+seq;
msgWindow=window.open(url);
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>EAI ServiceMessage Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<input type="hidden" name="actionSeq" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<!--
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">EAI서비스코드</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
</tr>
-->
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">EAI서비스코드</td>
<td align='left'>&nbsp;<input type="text" name="selectedKey" value="<%=selectedKey%>" style="width:98%"/>
</td>
</tr>
</table>
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan=2 bgcolor="#003366">&nbsp; <font color="yellow"><b>내용</b> &nbsp;</font></td>
</tr>
<%
if(listVo != null) {
int size = listVo.size();
for(int i=0; i<size; i++) {
ServiceMessage sm = (ServiceMessage)listVo.get(i);
%>
<tr bgcolor='white'>
<td align='right' width="350" height="5" bgcolor="#003366" colspan="2">&nbsp;<font color="yellow"><b>Field[<%= i %>]</b> &nbsp;</font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp;서비스처리순서 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="svcPssSeq" style="width:98%" value="<%=sm.getSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동인터페이스유형 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="psvItfTp" style="width:98%">
<%
int psvItfTpLength = EAITable.PSV_ITF_TYPE.length;
for(int j=0; j<psvItfTpLength; j++) {
%>
<option value="<%=EAITable.PSV_ITF_TYPE[j]%>" <%= (EAITable.PSV_ITF_TYPE[j].equals(sm.getPsvItfTp())) ? "selected" : "" %>><%=EAITable.PSV_ITF_TYPE[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동업무시스템명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="psvBwkSysNm" style="width:98%" value="<%=sm.getPsvBwkSysNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="psvSysID" style="width:98%" value="<%=sm.getPsvSysID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템서비스코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="psvSysSvcCd" style="width:98%" value="<%=sm.getPsvSysSvcCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 수동시스템인터페이스유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="psvSysItfTp" style="width:98%" value="<%=sm.getPsvSysItfTp()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; FailOver여부 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="flOvrCls" style="width:98%">
<%
int flOvrClsLength = EAITable.FAIL_OVER_CLS.length;
for(int j=0; j<flOvrClsLength; j++) {
%>
<option value="<%=EAITable.FAIL_OVER_CLS[j]%>" <%= (EAITable.FAIL_OVER_CLS[j].equals(sm.getFlOvrCls())) ? "selected" : "" %>><%=EAITable.FAIL_OVER_CLS[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환유무 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="cnvEn" style="width:98%">
<%
int cnvEnLength = EAITable.CNV_EXIST_NOT.length;
for(int j=0; j<cnvEnLength; j++) {
%>
<option value="<%=EAITable.CNV_EXIST_NOT[j]%>" <%= (EAITable.CNV_EXIST_NOT[j].equals(sm.getCnvEn())) ? "selected" : "" %>><%=EAITable.CNV_EXIST_NOT[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cnvMsgID" style="width:98%" value="<%=sm.getCnvMsgID()%>"></td>
</tr>
<!--
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 응답메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="rspMsgRefID" style="width:98%" value="<%=sm.getRspMsgRefID()%>"></td>
</tr>
-->
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답메시지비교값 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="bsRspMsgCprVl" style="width:98%" value="<%=sm.getBsRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환유무 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="bsRspCnvEn" style="width:98%">
<%
int bsRspCnvEnLength = EAITable.BS_RSP_CNV_EXIST_NOT.length;
for(int j=0; j<bsRspCnvEnLength; j++) {
%>
<option value="<%=EAITable.BS_RSP_CNV_EXIST_NOT[j]%>" <%= (EAITable.BS_RSP_CNV_EXIST_NOT[j].equals(sm.getBsRspCnvEn())) ? "selected" : "" %>><%=EAITable.BS_RSP_CNV_EXIST_NOT[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 기본응답변환메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="bsRspCnvMsgID" style="width:98%" value="<%=sm.getBsRspCnvMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답메시지비교값 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="errRspMsgCprVl" style="width:98%" value="<%=sm.getErrRspMsgCprVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환유무 : &nbsp;</td>
<td align='left' style="height:40px;">
&nbsp;<select name="errRspCnvEn" style="width:98%">
<%
int errRspCnvEnLength = EAITable.ERR_RSP_CNV_EXIST_NOT.length;
for(int j=0; j<errRspCnvEnLength; j++) {
%>
<option value="<%=EAITable.ERR_RSP_CNV_EXIST_NOT[j]%>" <%= (EAITable.ERR_RSP_CNV_EXIST_NOT[j].equals(sm.getErrRspCnvEn())) ? "selected" : "" %>><%=EAITable.ERR_RSP_CNV_EXIST_NOT[j]%>
<%
}
%>
</select>
</td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 오류응답변환메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="errRspCnvMsgID" style="width:98%" value="<%=sm.getErrRspCnvMsgID()%>"></td>
</tr>
<!--
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 키관리메시지값 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="keyMgtMsgVl" style="width:98%" value="<%=sm.getKeyMgtMsgVl()%>"></td>
</tr>
-->
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 다음서비스처리순서 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="nxtSvcPssSeq" style="width:98%" value="<%=sm.getNxtSvcPssSeq()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Outbound라우팅명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="outbRtnNm" style="width:98%" value="<%=sm.getOutbRtnNm()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 타임아웃값 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="tmoVl" style="width:98%" value="<%=sm.getTmoVl()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 보상서비스처리코드 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cpnsSvcPssCd" style="width:98%" value="<%=sm.getCpnsSvcPssCd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 추가삭제 여부 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cpnsSvcPssCd" style="width:98%" value="<%=sm.getSupplDelYn()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 헤더제어구분코드 - [01/02]삭제추가/추가삭제 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cpnsSvcPssCd" style="width:98%" value="<%=sm.getHdrCtrlDstcd()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 참고클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="cpnsSvcPssCd" style="width:98%" value="<%=sm.getHdrRefClsName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 타이머참고메시지ID : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<input type="text" name="tmRefMsgID" style="width:98%" value="<%=sm.getTmRefMsgID()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">참조메시지IDS</td>
<%
if(sm.getRefMsgIDs() == null || sm.getRefMsgIDs().length <= 0) {
%>
<td align='left' style="height:40px;">&nbsp; 0건 입니다. &nbsp; </td>
<%
}
else {
%>
<td align='left' >&nbsp;<a href="javascript:openRefMsgID('<%=sm.getEAISvcCd() %>');"><%=sm.getRefMsgIDs().length%>&nbsp; 건 &nbsp;</a> </td>
<%
}
%>
</tr>
<!-------------------------------------------------------------->
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">조건부라우팅정보테이블</td>
<%
if(sm.getCondPerRtgInfo() == null || sm.getCondPerRtgInfo().size() <= 0) {
%>
<td align='left' style="height:40px;">&nbsp; 0건 입니다. &nbsp; </td>
<%
}
else {
%>
<td align='left' >&nbsp;<a href="javascript:openCondPerRtgInfo('<%=sm.getEAISvcCd() %>','<%=sm.getSvcPssSeq()%>');"><%=sm.getCondPerRtgInfo().size()%>&nbsp; 건 &nbsp;</a> </td>
<%
}
%>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+310
View File
@@ -0,0 +1,310 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%@ page import="com.eactive.eai.common.monitor.EAIServiceMonitor"%>
<%@ page import="com.eactive.eai.common.monitor.MonitorVO"%>
<%@ page import="java.util.HashMap"%>
<%
String actionMessage = "";
EAIServiceMonitor monitor = EAIServiceMonitor.getInstance();
String[] voKey = monitor.getAllMonitorVOKey();
String action = request.getParameter("actionType");
MonitorVO vo = null;
String[] pssCntKey = null;
String[] pssErrCntKey = null;
HashMap pssCnt = null;
HashMap pssCntInPeriod = null;
HashMap errPssCnt = null;
HashMap errPssCntInPeriod = null;
String selectedSvcCds = request.getParameter("svcCds");
if(selectedSvcCds == null && voKey.length>=1) {
selectedSvcCds = voKey[0];
}
if(selectedSvcCds!=null) {
vo = monitor.getMonitorVO(selectedSvcCds);
if("RESET".equals(action)) {
vo.reset();
}
pssCntKey = vo.getAllPssCntKey();
pssCnt = vo.getPssCnt();
pssCntInPeriod = vo.getPssCntInPeriod();
errPssCnt = vo.getErrPssCnt();
errPssCntInPeriod = vo.getErrPssCntInPeriod();
}
if("ALLRESET".equalsIgnoreCase(action)){
monitor.resetAll();
}
else if("RESET_TOLIST".equalsIgnoreCase(action)){
actionMessage = monitor.resetErrorList();
}
%>
<html>
<head>
<title>Service ID/Log Sequence 별 통계 Monitor</title>
<script type="text/javascript">
function doAction() {
document.frm.submit();
}
function doReset() {
document.frm.actionType.value="RESET";
document.frm.submit();
}
function doAllReset() {
document.frm.actionType.value="ALLRESET";
document.frm.submit();
}
function doResetToList() {
document.frm.actionType.value="RESET_TOLIST";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;"><b>Service ID/Log Sequence 별 통계 데이터</b> <br>
<% if(actionMessage != null && actionMessage.length() > 0) { %>
Action result : <%= actionMessage %><br>
<% } %>
<br>
</p>
<form name="frm" action=""><input type="hidden" name="actionType" value="">
<table border='0' width="800">
<tr>
<td align='left'>
<table width="450" border="0" bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">EAI Service Message ID : &nbsp;</td>
<td align='left'>&nbsp;<select name="svcCds" onchange="doAction();">
<%
for(int i=0;i<voKey.length;i++) {
%>
<option value="<%=voKey[i]%>" <%= (voKey[i].equals(selectedSvcCds)) ? "selected" : "" %>><%=voKey[i]%> <%
}
%></option>
</select></td>
</tr>
</table>
</td>
<td align='right'><input type="button" value="RESET" onclick="doReset()"></td>
<td align='right'><input type="button" value="ALL RESET" onclick="doAllReset()"></td>
<td align='right'><input type="button" value="reload Timeout Error Code" onclick="doResetToList()"></td>
</tr>
</table>
<br>
<table width="800" border="0" bgcolor='black' cellpadding="1" cellspacing="1">
<%
if(pssCntKey != null && pssCntKey.length >0){
if(vo != null) {
pssErrCntKey = vo.getAllErrPssCntKey();
int pssCntKeyLength = pssCntKey.length;
int pssErrCntKeyLength = pssErrCntKey.length;
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" colspan="11">&nbsp;<font color="yellow">&nbsp; <b>일일 통계</b></font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc" rowspan="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="<%= pssErrCntKeyLength %>">Log Sequence 별 처리 누적</td>
<td align='center' bgcolor="#6699cc" rowspan="2">EAI 시스템 평균 처리시간(초)</td>
<td align='center' bgcolor="#6699cc" rowspan="2">수동 시스템 평균 처리시간(초)</td>
</tr>
<tr bgcolor='white'>
<%
long[] verTotal = new long[pssErrCntKeyLength];
long[] verInPeriodTotal = new long[pssErrCntKeyLength];
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">정상</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verTotal[i] = verTotal[i]+Long.parseLong(pssCnt.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCount" size='10'
value="<%=pssCnt.get(pssCntKey[i])%>"></td>
<%
}
double avgOfprocessTime = 0;
double psvAvgOfProcessTime = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCnt.get(pssCntKey[1]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[1]).toString());
}
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
}
}
else{
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
}
}
if(Long.parseLong(pssCnt.get(pssCntKey[2]).toString()) > 0 && vo.getPsvSumOfPssTime() > 0 ){
psvAvgOfProcessTime = vo.getPsvSumOfPssTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[2]).toString());
}
System.out.println("vo.getPsvSumOfPssTime() : "+ vo.getPsvSumOfPssTime());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10' value="0"></td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTime" size='10'
value="<%=avgOfprocessTime%>"></td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTime" size='10'
value="<%=psvAvgOfProcessTime%>"></td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">에러</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verTotal[i] = verTotal[i] + Long.parseLong(errPssCnt.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="errorCount" size='10'
value="<%=errPssCnt.get(pssErrCntKey[i])%>"></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">합계</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='right'><input align='right' type="text" name="sumOfLogSeqInPeriod" size='10' value="<%=verTotal[i]%>"></td>
<%
}
%>
</tr>
<!--- 최근시간 --->
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" colspan="11">&nbsp;<font color="yellow">&nbsp; <b>최근시간 통계</b></font></td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" rowspan="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="<%= pssErrCntKeyLength %>">Log Sequence 별 처리 누적</td>
<td align='center' bgcolor="#6699cc" rowspan="2">EAI 시스템 평균 처리시간(초)</td>
<td align='center' bgcolor="#6699cc" rowspan="2">수동 시스템 평균 처리시간(초)</td>
</tr>
<tr bgcolor='white'>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">정상</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i]+Long.parseLong(pssCntInPeriod.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10'
value="<%=pssCntInPeriod.get(pssCntKey[i])%>"></td>
<%
}
double avgOfprocessTimeInPeriod = 0;
double psvAvgOfProcessTimeInPeriod = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString());
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
}
}
else{
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
}
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString()) >0 && vo.getPsvSumOfPssTimeInPeriod() > 0){
psvAvgOfProcessTimeInPeriod = vo.getPsvSumOfPssTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString());
}
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10' value="0"></td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTimeInPeriod" size='10'
value="<%=avgOfprocessTimeInPeriod%>"></td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTimeInPeriod" size='10'
value="<%=psvAvgOfProcessTimeInPeriod%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' width="200" bgcolor="#6699cc">에러</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i] + Long.parseLong(errPssCntInPeriod.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="sendCount" size='10'
value="<%=errPssCntInPeriod.get(pssErrCntKey[i])%>"></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">합계</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='right'><input align='right' type="text" name="sumOfLogSeqInPeriod" size='10'
value="<%=verInPeriodTotal[i]%>"></td>
<%
}
%>
</tr>
<%
}
} else{
%>
</table>
해당 서비스 ID에 대한 거래 내역이 없습니다. <%
}
%></form>
</body>
</html>
+407
View File
@@ -0,0 +1,407 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.EAITable"%>
<%@ page import="com.eactive.eai.common.message.EAIMessage"%>
<%@ page import="com.eactive.eai.common.message.ServiceMessage"%>
<%@ page import="com.eactive.eai.common.message.EAIMessageManager"%>
<%@ page import="com.eactive.eai.common.monitor.EAIServiceMonitor"%>
<%@ page import="com.eactive.eai.common.monitor.MonitorVO"%>
<%@ page import="java.util.HashMap"%>
<%
EAIServiceMonitor monitor = EAIServiceMonitor.getInstance();
String[] voKey = monitor.getAllBwkClsKey();
String action = request.getParameter("actionType");
String[] pssCntKey = null;
String[] pssErrCntKey = null;
HashMap pssCnt = null;
HashMap pssCntInPeriod = null;
HashMap errPssCnt = null;
HashMap errPssCntInPeriod = null;
HashMap voByBwk = null;
long[] verTotalByBwk = null;;
long[] verTotalInPeriodByBwk = null;
double sumOfprocessTimeByBwk = 0;
double psvSumOfProcessTimeByBwk = 0;
double sumOfprocessTimeInPeriodByBwk = 0;
double psvSumOfProcessTimeInPeriodByBwk = 0;
double avgOfprocessTimeByBwk = 0;
double psvAvgOfProcessTimeByBwk = 0;
double avgOfprocessTimeInPeriodByBwk = 0;
double psvAvgOfProcessTimeInPeriodByBwk = 0;
int countEaiSvcCd = 0;
int countEaiSvcCdInPeriod = 0;
String selectedBwkCls = request.getParameter("bwkCls");
if(selectedBwkCls == null && voKey.length>=1){
selectedBwkCls = voKey[0];
}
if(selectedBwkCls!=null) {
voByBwk = monitor.getBwkCls(selectedBwkCls);
}
%>
<html>
<head>
<title>
업무구분 코드/Log Sequence 별 통계 Monitor
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>업무구분 코드/Log Sequence 별 통계 데이터</b> <br><br>
</p>
<form name="frm" method="POST" action="">
<input type="hidden" name="actionType" value="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="업무 구분 : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="bwkCls" onchange="doAction();">
<%
for(int i=0;i<voKey.length;i++) {
%>
<option value="<%=voKey[i]%>" <%= (voKey[i].equals(selectedBwkCls)) ? "selected" : "" %>><%=voKey[i]%>
<%
}
%></select>
</td>
</tr>
</table>
</td>
</tr>
</table><br>
<%
if(voByBwk != null){
Iterator it = voByBwk.keySet().iterator();
String[] keys = new String[voByBwk.size()];
for(int i = 0; it.hasNext(); i++){
keys[i] = (String)it.next();
}
Arrays.sort(keys);
%>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' bgcolor="#990000" colspan="11">&nbsp;<font color="yellow">&nbsp; <b>일일 통계</b></font></td>
</tr>
<%
for(int j = 0; j< keys.length; j++){
MonitorVO vo = (MonitorVO)voByBwk.get(keys[j]);
pssCntKey = vo.getAllPssCntKey();
pssCnt = vo.getPssCnt();
errPssCnt = vo.getErrPssCnt();
pssErrCntKey = vo.getAllErrPssCntKey();
//verTotalByBwk = new long[pssCntKey.length];
//verTotalInPeriodByBwk = new long[pssCntKey.length];
verTotalByBwk = new long[pssErrCntKey.length];
verTotalInPeriodByBwk = new long[pssErrCntKey.length];
if(pssCntKey != null && pssCntKey.length >0){
countEaiSvcCd ++;
int pssCntKeyLength = pssCntKey.length;
int pssErrCntKeyLength = pssErrCntKey.length;
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" >&nbsp;<font color="yellow"><b>EAI Service Code</b></font></td>
<td align='left' colspan="10">&nbsp;<%=keys[j]%></td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" rowspan ="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="<%= pssErrCntKeyLength %>">Log Sequence 별 처리 누적 </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">EAI 시스템 평균 처리시간(초) </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">수동 시스템 평균 처리시간(초) </td>
</tr>
<tr bgcolor='white'>
<%
long[] verTotal = new long[pssErrCntKeyLength];
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" >정상</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verTotal[i] = verTotal[i]+Long.parseLong(pssCnt.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCount" size='10' value="<%=pssCnt.get(pssCntKey[i])%>"> </td>
<%
}
double avgOfprocessTime = 0;
double psvAvgOfProcessTime = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCnt.get(pssCntKey[1]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[1]).toString());
sumOfprocessTimeByBwk = sumOfprocessTimeByBwk + avgOfprocessTime;
avgOfprocessTimeByBwk = sumOfprocessTimeByBwk / countEaiSvcCd;
}
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
sumOfprocessTimeByBwk = sumOfprocessTimeByBwk + avgOfprocessTime;
avgOfprocessTimeByBwk = sumOfprocessTimeByBwk / countEaiSvcCd;
}
}
else{
if(Long.parseLong(pssCnt.get(pssCntKey[3]).toString()) >0 && vo.getSumOfprocessTime() > 0 ){
avgOfprocessTime = vo.getSumOfprocessTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[3]).toString());
}
sumOfprocessTimeByBwk = sumOfprocessTimeByBwk + avgOfprocessTime;
avgOfprocessTimeByBwk = sumOfprocessTimeByBwk / countEaiSvcCd;
}
if(Long.parseLong(pssCnt.get(pssCntKey[2]).toString()) > 0 && vo.getPsvSumOfPssTime() > 0 ){
psvAvgOfProcessTime = vo.getPsvSumOfPssTime()/1000/Long.parseLong(pssCnt.get(pssCntKey[2]).toString());
psvSumOfProcessTimeByBwk = psvSumOfProcessTimeByBwk + psvAvgOfProcessTime;
psvAvgOfProcessTimeByBwk = psvSumOfProcessTimeByBwk / countEaiSvcCd;
}
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCount2" size='10'value="0">
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTime" size='10' value="<%=avgOfprocessTime%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTime" size='10' value="<%=psvAvgOfProcessTime%>"> </td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" >에러</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verTotal[i] = verTotal[i] + Long.parseLong(errPssCnt.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="errorCount" size='10' value="<%=errPssCnt.get(pssErrCntKey[i])%>"> </td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">합계</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verTotalByBwk[i] = verTotalByBwk[i] + verTotal[i];
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeq" size='10' value="<%=verTotal[i]%>"> </td>
<%
}
%>
</tr>
<%
}
}
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#990000" >&nbsp;<font color="yellow"><b>합계</b></font></td>
<%
for(int i=0;i<verTotalByBwk.length;i++) {
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeqByBwk" size='10' value="<%=verTotalByBwk[i]%>"> </td>
<%
}
%>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTimeByBwk" size='10'value="<%=avgOfprocessTimeByBwk%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTimeByBwk" size='10'value="<%=psvAvgOfProcessTimeByBwk %>"> </td>
</tr>
</table>
<br>
<!--- 최근시간 --->
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='center' bgcolor="#990000" colspan="11">&nbsp;<font color="yellow">&nbsp; <b>최근시간 통계</b></font></td>
</tr>
<%
for(int j = 0; j< keys.length; j++){
MonitorVO vo = (MonitorVO)voByBwk.get(keys[j]);
pssCntKey = vo.getAllPssCntKey();
pssCntInPeriod = vo.getPssCntInPeriod();
errPssCntInPeriod = vo.getErrPssCntInPeriod();
pssErrCntKey = vo.getAllErrPssCntKey();
if(pssCntKey != null && pssCntKey.length >0){
countEaiSvcCdInPeriod++;
int pssCntKeyLength = pssCntKey.length;
int pssErrCntKeyLength = pssErrCntKey.length;
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#003366" >&nbsp;<font color="yellow">&nbsp; <b>EAI Service Code</b></font></td>
<td align='left' colspan="10">&nbsp;<%=keys[j]%></td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" rowspan ="2">구분</td>
<td align='center' bgcolor="#6699cc" colspan="<%= pssErrCntKeyLength %>">Log Sequence 별 처리 누적 </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">EAI 시스템 평균 처리시간(초) </td>
<td align='center' bgcolor="#6699cc" rowspan ="2">수동 시스템 평균 처리시간(초) </td>
</tr>
<tr bgcolor='white'>
<%
long[] verInPeriodTotal = new long[pssErrCntKeyLength];
for(int i=0;i<pssErrCntKeyLength;i++) {
%>
<td align='center' width='40' bgcolor="#ccccff"><%=pssErrCntKey[i]%></td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" >정상</td>
<%
for(int i=0;i<pssCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i]+Long.parseLong(pssCntInPeriod.get(pssCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10' value="<%=pssCntInPeriod.get(pssCntKey[i])%>"> </td>
<%
}
double avgOfprocessTimeInPeriod = 0;
double psvAvgOfProcessTimeInPeriod = 0;
if("AA".equalsIgnoreCase(vo.getIfType())){
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[1]).toString());
sumOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk + avgOfprocessTimeInPeriod;
avgOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk / countEaiSvcCdInPeriod;
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
sumOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk + avgOfprocessTimeInPeriod;
avgOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk / countEaiSvcCdInPeriod;
}
}
else{
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString()) >0 && vo.getSumOfProcessTimeInPeriod() > 0){
avgOfprocessTimeInPeriod = vo.getSumOfProcessTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[3]).toString());
sumOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk + avgOfprocessTimeInPeriod;
avgOfprocessTimeInPeriodByBwk = sumOfprocessTimeInPeriodByBwk / countEaiSvcCdInPeriod;
}
}
if(Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString()) >0 && vo.getPsvSumOfPssTimeInPeriod() > 0){
psvAvgOfProcessTimeInPeriod = vo.getPsvSumOfPssTimeInPeriod()/1000/Long.parseLong(pssCntInPeriod.get(pssCntKey[2]).toString());
psvSumOfProcessTimeInPeriodByBwk = psvSumOfProcessTimeInPeriodByBwk + psvAvgOfProcessTimeInPeriod;
psvAvgOfProcessTimeInPeriodByBwk = psvSumOfProcessTimeInPeriodByBwk / countEaiSvcCdInPeriod;
}
%>
<td align='right'>&nbsp;<input align='right' type="text" name="recvCountInPeriod" size='10' value="0"></td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="avgOfprocessTimeInPeriod" size='10' value="<%=avgOfprocessTimeInPeriod%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvAvgOfProcessTimeInPeriod" size='10' value="<%=psvAvgOfProcessTimeInPeriod%>"> </td>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc" >에러</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verInPeriodTotal[i] = verInPeriodTotal[i] + Long.parseLong(errPssCntInPeriod.get(pssErrCntKey[i]).toString());
%>
<td align='right'>&nbsp;<input align='right' type="text" name="sendCount" size='10'value="<%=errPssCntInPeriod.get(pssErrCntKey[i])%>"> </td>
<%
}
%>
</tr>
<tr bgcolor='white'>
<td align='center' width="200" bgcolor="#6699cc">합계</td>
<%
for(int i=0;i<pssErrCntKeyLength;i++) {
verTotalInPeriodByBwk[i] = verTotalInPeriodByBwk[i] + verInPeriodTotal[i];
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeqInPeriod" size='10' value="<%=verInPeriodTotal[i]%>"> </td>
<%
}
%>
</tr>
<%
}
}
%>
<tr bgcolor='white'>
<td align='center' bgcolor="#990000" >&nbsp;<font color="yellow"><b>합계</b></font></td>
<%
for(int i=0;i<verTotalInPeriodByBwk.length;i++) {
%>
<td align='right' ><input align='right' type="text" name="sumOfLogSeqInPeriodByBwk" size='10' value="<%=verTotalInPeriodByBwk[i]%>"> </td>
<%
}
%>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="sumOfprocessTimeInPeriodByBwk" size='10' value="<%=avgOfprocessTimeInPeriodByBwk%>"> </td>
<td align='right' rowspan="3">&nbsp;<input align='right' type="text" name="psvSumOfProcessTimeInPeriodByBwk" size='10' value="<%=psvAvgOfProcessTimeInPeriodByBwk %>"> </td>
</tr>
</table>
<%
}else{
%>
해당 업무 구분에 대한 거래 내역이 없습니다.
<%
}
%>
</form>
</body>
</html>
+158
View File
@@ -0,0 +1,158 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.adapter.AdapterVO"%>
<%@ page import="com.eactive.eai.agent.command.Command"%>
<%@ page import="com.eactive.eai.agent.testcall.TestCallCommand"%>
<%@ page import="com.eactive.eai.agent.AgentUtil"%>
<%@ page import="com.eactive.eai.common.property.PropManager"%>
<%@ page import="com.eactive.eai.common.testcall.TestCall"%>
<%@ page import="com.eactive.eai.common.testcall.TestCallManager"%>
<%
TestCallManager manager = TestCallManager.getInstance();
ArrayList names = new ArrayList();
String action = request.getParameter("actionType");
String period = request.getParameter("period");
Properties prop = new Properties();
Iterator it = manager.getAllAdapterNames();
while(it.hasNext()) {
names.add(it.next());
}
Collections.sort(names);
if(period == null|| period.length()<=0){
PropManager pmanager = PropManager.getInstance();
long temp = 1000*60*10;
try {
temp = Long.parseLong(pmanager.getProperty(manager.PROP_GROUP, manager.PROP_PERIOD));
} catch(Exception e) {}
period = ""+temp;
}
String run = "";
if("UPDATE".equals(action)) {
prop.setProperty("PERIOD", period);
Command command = new TestCallCommand();
command.setArgs(prop);
AgentUtil.broadcast(command);
}
if("START".equals(action)){
run = "START";
prop.setProperty("RUN",run);
Command command = new TestCallCommand();
command.setArgs(prop);
AgentUtil.broadcast(command);
}
if("STOP".equals(action)){
run = "STOP";
prop.setProperty("RUN",run);
Command command = new TestCallCommand();
command.setArgs(prop);
AgentUtil.broadcast(command);
}
String status = "";
if(manager.isStarted())
status = "시작됨";
else
status = "종료됨";
%>
<html>
<head>
<title>
TestCall Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doStop() {
document.frm.actionType.value="STOP";
document.frm.submit();
}
function doStart() {
document.frm.actionType.value="START";
document.frm.submit();
}
function doUpdate() {
document.frm.actionType.value="UPDATE";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>TestCall Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="동작주기 : "/>&nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="period" size='20' value="<%=period%>" ></td>
<td align='left'> <input type="button" value="UPDATE" onclick="doUpdate()">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align='left'>
<input type="text" name="period" size='20' value="<%=status%>" readonly >
</td>
<td align='left'>
<input type="button" value="STOP" onclick="doStop()">
</td>
<td align='left'>
<input type="button" value="START" onclick="doStart()">
</td>
<td></td><td></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>항목</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp;<font color="yellow">&nbsp; <b>내용</b></font></td>
</tr>
<%
if(names != null || names.size() > 0 ) {
int length = names.size();
for(int i=0; i<length; i++){
TestCall tester = manager.getTestCall((String)names.get(i));
AdapterVO vo = tester.getAdapterInfo();
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Adapter Name : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="name" size='60' value="<%=vo.getName()%>" readonly></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; Adapter 상태 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="name" size='60' value="<%=tester.isAlive()%>" readonly></td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
+103
View File
@@ -0,0 +1,103 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.engine.TransformEngine"%>
<%
String action = request.getParameter("actionType");
TransformEngine engine = TransformEngine.getInstance();
String status = "";
if("START".equals(action)){
engine.start();
}
if("STOP".equals(action)){
engine.stop();
}
if(engine.isStarted())
status = "시작됨";
else
status = "종료됨";
%>
<html>
<head>
<title>
TransRuleReload Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doStop() {
document.frm.actionType.value="STOP";
document.frm.submit();
}
function doStart() {
document.frm.actionType.value="START";
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>TransRuleReload Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' bgcolor="#003366">&nbsp; <font color="yellow"><b>항목</b> &nbsp;</font></td>
<td align='left' bgcolor="#003366">&nbsp; <font color="yellow"><b>설명</b> &nbsp;</font></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">현재상태 :&nbsp;&nbsp;</td>
<td align='left' style="height: 40;">&nbsp;<input type="text" name="period" value="<%=status%>" readonly ></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">상태변경 버튼 :&nbsp;&nbsp;</td>
<%
if ("시작됨".equals(status)){
%>
<td align='left' style="height: 40;">&nbsp;<input type="button" value="STOP" onclick="doStop()"></td>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">버튼설명 :&nbsp;&nbsp;</td>
<td>&nbsp;TransformEngine 에서 clearEngine()을 실행합니다.</td>
</tr>
<%
} else {
%>
<td align='left'>
<input type="button" value="START" onclick="doStart()">
</td>
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff">버튼설명 :&nbsp;&nbsp;</td>
<td>&nbsp;&TransformEngine 에서 initEngine()을 실행합니다.</td>
</tr>
<%
}
%>
<tr bgcolor='white'>
<td rowspan=4 align='right' width='180' bgcolor="#ccccff">실행Manager :&nbsp;&nbsp;</td>
<td>&nbsp;LayoutTypeManager</td>
</tr>
<tr bgcolor='white'>
<td>&nbsp;FunctionManager</td>
</tr>
<tr bgcolor='white'>
<td>&nbsp;LayoutManager</td>
</tr>
<tr bgcolor='white'>
<td>&nbsp;TransformManager</td>
</tr>
</table><br>
</form>
</body>
</html>
+214
View File
@@ -0,0 +1,214 @@
<%--
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.layout.Layout"%>
<%@ page import="com.eactive.eai.transformer.transform.Transform"%>
<%@ page import="com.eactive.eai.transformer.transform.TransformItem"%>
<%@ page import="com.eactive.eai.transformer.transform.TransformManager"%>
<%@ page import="com.eactive.eai.transformer.util.TransformKeys"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
TransformManager manager = TransformManager.getManager();
String key[] = manager.getAllTransformName();
String selected = request.getParameter("transformName");
if(selected == null && key.length>=1) {
selected = key[0];
}
Transform transform = null;
ArrayList itemList = new ArrayList();
Layout target = null;
Iterator it = null;
if(selected!=null) {
transform = manager.getTransform(selected);
target = transform.getTargetLayout();
itemList = (ArrayList) transform.getTransformItemList();
it = transform.getSourceLayoutNames();
}
int sourceCount = transform.getSourceLayoutCount();
String sourceName = "";
for (int i=0; i < sourceCount; i++) {
if ("".equals(sourceName))
sourceName = (String)it.next();
else
sourceName = sourceName+" , " + (String)it.next();
}
%>
<html>
<head>
<title>
Transform 변환규칙 Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Transform 변환규칙 Configuration</b> <br><br>
</p>
<form name="frm" action="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="변환명 : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="transformName" onchange="doAction();">
<%
for(int i=0;i<key.length;i++) {
%>
<option value="<%=key[i]%>" <%= (key[i].equals(selected)) ? "selected" : "" %>><%=key[i]%>
<%
}
%></select>
</td>
</tr>
</table>
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='250' bgcolor="#003366">&nbsp; <font color="yellow"><b>변환규칙정보</b> &nbsp;</font></td>
</tr>
<%
if(transform != null ){
%>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="#ccccff">&nbsp; 변환규칙명 : &nbsp;</td>
<td align='left'>&nbsp;<%=transform.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="#ccccff">&nbsp; 변환규칙설명 : &nbsp;</td>
<td align='left'>&nbsp;<%=checkNull(transform.getDescription())%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 변환규칙 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='250' bgcolor="#003366">&nbsp; <font color="yellow"><b>변환소스결과레이아웃 정보</b> &nbsp;</font></td>
</tr>
<%
if (target != null || it.hasNext()) {
%>
<tr bgcolor='white'>
<td align='center' width='' bgcolor="#ccccff">&nbsp; 소스레이아웃(2개이상일경우 콤마(,)로 구분) &nbsp;</td>
<td align='center' width='' bgcolor="#ccccff">&nbsp; 결과 레이아웃 &nbsp;</td>
</tr>
<tr bgcolor='white'>
<td align='center'>&nbsp;<%=sourceName%></td>
<td align='center'>&nbsp;<%=target.getName()%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 변환소스결과레이아웃 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='250' bgcolor="#003366">&nbsp; <font color="yellow"><b>변환아이템 정보</b> &nbsp;</font></td>
</tr>
<%
if (itemList != null && itemList.size() > 0) {
int nCount = 0;
String[] aBgColor = {"#ccccff" , "#e9e1fd"};
for (int i = 0; i < itemList.size(); i++) {
TransformItem item = (TransformItem) itemList.get(i);
%>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환항목일련번호 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getSeqNo()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환결과항목경로명 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getResultItemPath()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환명령명 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getInstruction()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환항목기본값 : &nbsp;</td>
<td align='left'>&nbsp;<%=checkNull(item.getDefaultValue())%></td>
</tr>
<%
nCount++;
}
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 변환규칙 아이템 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
--%>
@@ -0,0 +1,186 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.function.FunctionDefinition"%>
<%@ page import="com.eactive.eai.transformer.function.FunctionManager"%>
<%@ page import="com.eactive.eai.transformer.function.ParameterDefinition"%>
<%@ page import="com.eactive.eai.transformer.util.TransformKeys"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
FunctionManager manager = FunctionManager.getInstance();
String[] alls = manager.getAllFunctionNames();
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
FunctionDefinition vo = null;
ArrayList paramList = new ArrayList();
if(selectedKey!=null) {
vo = manager.getFunctionDefinition(selectedKey);
paramList = (ArrayList) vo.getParameterList();
}
%>
<html>
<head>
<title>
Transform 변환함수 Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>변환함수 관리</b> <br><br>
</p>
<form name="frm" action="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='350' bgcolor="#ccccff">변환함수명 :&nbsp;&nbsp;</td>
<td align='left'><select name="selectedKey" onchange="doAction();"style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td rowspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' ><input type="edit" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>변환함수정보</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환함수명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환함수설명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getDescription()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환함수반환유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=TransformKeys.getType(vo.getReturnTypeId())%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환함수클래스명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getFunctionClass()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 변환함수유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=TransformKeys.getFunctionType(vo.getFunctionTypeId())%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 변환함수 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>LayoutItem 정보</b> &nbsp;</font></td>
</tr>
<%
if (paramList != null && paramList.size() > 0) {
int nCount = 0;
String[] aBgColor = {"#ccccff", "#e9e1fd"};
for (int i = 0; i < paramList.size(); i++) {
ParameterDefinition param = (ParameterDefinition) paramList.get(i);
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환함수파라미터일련번호 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=param.getSeqNo()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환함수파라미터명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=param.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환함수파라미터설명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=param.getDescription()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="<%= aBgColor[nCount%2] %>">&nbsp; 변환함수파라미터유형 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=TransformKeys.getType(param.getTypeId())%></td>
</tr>
<%
nCount++;
}
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 변환함수 파라메터 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+218
View File
@@ -0,0 +1,218 @@
<%--
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.layout.Layout"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutItem"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutManager"%>
<%@ page import="com.eactive.eai.transformer.util.TransformKeys"%>
<%@ page import="java.util.HashMap"%>
<%@ taglib uri="netui-tags-databinding.tld" prefix="netui-compat-data"%>
<%@ taglib uri="netui-tags-html.tld" prefix="netui-compat"%>
<%@ taglib uri="netui-tags-template.tld" prefix="netui-compat-template"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
StringBuffer html = new StringBuffer();
private void makeItem(LayoutItem item)
{
makeHTML(item);
try{
if (!item.isField() && (item.getChildCount() != 0)) {
for (int i = 0; i < item.getChildCount(); i++) {
if (item.getChild(i).getIndex() == -1) {
makeItem(item.getChild(i));
}
}
}
}catch (Exception e) {
e.printStackTrace();
System.out.println("LayoutEdit.jsp error");
}
}
private void makeHTML(LayoutItem item) {
if(item.isMessage())
html.append("<TR align=\'center' height=25 bgcolor='#e9e1fd' onmouseover=this.style.background='#F6F6F6' onmouseout=this.style.background='#e9e1fd'>");
else if (item.isGroup())
html.append("<TR align=\'center' height=25 bgcolor='#cbf1f8' onClick=\"javascript:goto('"+checkNull(item.getLayoutName())+"', '"+checkNull(item.getName())+"');\" onmouseover=this.style.background='#F6F6F6' onmouseout=this.style.background='#cbf1f8'>");
else
html.append("<TR align=\'center' height=25 bgcolor='#ffffff' onClick=\"javascript:goto('"+checkNull(item.getLayoutName())+"', '"+checkNull(item.getName())+"');\" onmouseover=this.style.background='#F6F6F6' onmouseout=this.style.background='#FFFFFF'>");
html.append(" <TD class='txt' align=\'center'>"+item.getSeqNo()+"</td>");
html.append(" <td class='txt' align='left' style=\"PADDING-LEFT: 10px\">&nbsp;"+checkNull(item.getName())+"</td>");
html.append(" <td class='txt' style=\"PADDING-LEFT: 10px\">"+TransformKeys.getLoutItemNodePtrnID(item.getNodeTypeId())+"</td>");
html.append(" <td class='txt' style=\"PADDING-LEFT: 10px\">"+TransformKeys.getType(item.getItemTypeId())+"</td>");
html.append(" <td class='txt' style=\"PADDING-LEFT: 10px\">"+checkNull(item.getRefInfo())+"</td> ");
html.append(" <td class='txt' align=\'center' style=\"PADDING-LEFT: 10px\">"+checkNull(item.getOccType())+"</td>");
html.append(" <td class='txt' align=\'center' style=\"PADDING-LEFT: 10px\">"+item.getOccMax()+"</td>");
html.append(" <td class='txt' align=\'center' style=\"PADDING-LEFT: 10px\">"+item.getOccMin()+"</td>");
html.append(" </TR> ");
}
%>
<%
LayoutManager manager = LayoutManager.getManager();
String key[] = manager.getAllLayoutName();
String selected = request.getParameter("layoutNames");
if(selected == null && key.length>=1) {
selected = key[0];
}
Layout layout = null;
if(selected!=null) {
layout = manager.getLayoutByName(selected);
}
LayoutItem root = null;
if (layout != null)
root = layout.getRootItem();
String str = "";
if (root != null ){
makeItem(root);
str = html.toString();
html = new StringBuffer();
}
%>
<html>
<head>
<title>
Transform Layout Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function goto(layoutName, itemName) {
var one = document.frm;
one.layoutName.value = layoutName;
one.itemName.value = itemName;
one.action = "<%=request.getContextPath()%>/mgr/transformer/layoutItem.jsp";
one.submit();
//var url = 'layoutItem.jsp?layoutName='+layoutName+'&itemName='+itemName;
//msgWindow=window.open(url);
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Transform Layout Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type=hidden name="layoutName" value="">
<input type=hidden name="itemName" value="">
<table border='0' width="800" >
<tr>
<td align='left'>
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' width='180' bgcolor="#ccccff"><label value="레이아웃명 : "/>&nbsp;</td>
<td align='left'>&nbsp;<select name="layoutNames" onchange="doAction();">
<%
for(int i=0;i<key.length;i++) {
%>
<option value="<%=key[i]%>" <%= (key[i].equals(selected)) ? "selected" : "" %>><%=key[i]%>
<%
}
%></select>
</td>
</tr>
</table>
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>Layout정보</b> &nbsp;</font></td>
</tr>
<%
if(layout != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃유형명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getLayoutType().getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃설명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getDescription()%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 Layout 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align="center" bgcolor="#ccccff">일련번호</td>
<td align="center" bgcolor="#ccccff">레이아웃항목명</td>
<td align="center" bgcolor="#ccccff">노드타입</td>
<td align="center" bgcolor="#ccccff">항목유형</td>
<td align="center" bgcolor="#ccccff">참조정보</td>
<td align="center" bgcolor="#ccccff">발생유형</td>
<td align="center" bgcolor="#ccccff">최대발생</td>
<td align="center" bgcolor="#ccccff">최소발생</td>
</tr>
<tr bgcolor='white'>
<td align='right' colspan='8' width='350' bgcolor="#003366">
&nbsp;
<font color="yellow"><b>LayoutItem 정보</b> &nbsp;</font></td>
</tr>
<%=str%>
</table>
</form>
</body>
</html>
--%>
+211
View File
@@ -0,0 +1,211 @@
<%--
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.layout.Layout"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutItem"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutManager"%>
<%@ page import="com.eactive.eai.transformer.util.TransformKeys"%>
<%@ page import="java.util.HashMap"%>
<%@ taglib uri="netui-tags-databinding.tld" prefix="netui-compat-data"%>
<%@ taglib uri="netui-tags-html.tld" prefix="netui-compat"%>
<%@ taglib uri="netui-tags-template.tld" prefix="netui-compat-template"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
String layoutName = (String)request.getParameter("layoutName");
String itemName = (String)request.getParameter("itemName");
LayoutManager manager = LayoutManager.getManager();
Layout layout = manager.getLayoutByName(layoutName);
LayoutItem item = null;
if(layout != null ) {
layout.updateItemNameMap();
item = layout.getItemByPath(itemName);
} else {
System.out.println("layoutItem.jsp ] layout is null - " +layoutName);
}
if(item == null ) {
System.out.println("layoutItem.jsp ] layoutItem is null - " +itemName);
}
%>
<html>
<head>
<title>
Transform LayoutItem Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function goto(name) {
var one = document.frm;
one.layoutNames.value = name;
one.action = "<%=request.getContextPath()%>/mgr/transformer/layout.jsp";
one.submit();
//var url = 'layout.jsp?layoutName='+name;
//msgWindow=window.open(url);
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Transform LayoutItem Configuration</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="layoutNames" value="">
<table border='0' width="800" >
<tr>
<td align='right'>
<input name="back Layout" value="back Layout" type="button" onclick="javascript:goto('<%=layoutName%>');">
</td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>Layout정보</b> &nbsp;</font></td>
</tr>
<%
if(layout != null ){
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃유형명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getLayoutType().getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃설명 : &nbsp;</td>
<td align='left'>&nbsp;<%=layout.getDescription()%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 Layout 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
<br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='350' bgcolor="#003366">&nbsp; <font color="yellow"><b>LayoutItem 정보</b> &nbsp;</font></td>
</tr>
<%
if (item != null ) {
%>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목일련번호 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getSeqNo()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목명 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 부모레이아웃항목 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getParent().getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목설명 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getDescription()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목노드유형 : &nbsp;</td>
<td align='left'>&nbsp;<%=TransformKeys.getLoutItemNodePtrnID(item.getNodeTypeId())%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목유형명 : &nbsp;</td>
<td align='left'>&nbsp;<%=TransformKeys.getType(item.getItemTypeId())%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목경로명 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getPath()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목길이수 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getLength()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목참조정보 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getRefInfo()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목참조정보2 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getRefOcc()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목발생유형구분코드 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getOccType()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목최대발생건수 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getOccMax()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목최소발생건수 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getOccMin()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목기본값 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getDefaultValue()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='350' bgcolor="#ccccff">&nbsp; 레이아웃항목마스킹여부 : &nbsp;</td>
<td align='left'>&nbsp;<%=item.getMask()%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 LayoutItem 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
--%>
+149
View File
@@ -0,0 +1,149 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutType"%>
<%@ page import="com.eactive.eai.transformer.layout.LayoutTypeManager"%>
<%@ page import="com.eactive.eai.transformer.util.TransformKeys"%>
<%@ page import="java.util.HashMap"%>
<%!
/**
* <pre>
* 문자열을 받아서 널이면 제로스트링을, 아니면 트림된 문자열을 리턴.
* </pre>
* @param String 변환 대상
* @return 'String'
*/
public static String checkNull( String str ) {
String sResult = new String();
if ( str == null ) {
sResult = "";
}
else {
sResult = str.trim();
}
return sResult;
}
%>
<%
LayoutTypeManager manager = LayoutTypeManager.getInstance();
String [] alls = manager.getAllLayoutTypeName();
String action = request.getParameter("actionType");
String selectedKey = request.getParameter("selectedKey");
if(selectedKey == null && alls.length>=1) {
selectedKey = alls[0];
}
if ("reload".equals(action)){
manager.reload(selectedKey);
}else if ("reloadAll".equals(action)){
manager.reload();
}else {
;
}
LayoutType vo = null;
if(selectedKey!=null) {
vo = manager.getLayoutType(selectedKey);
}
%>
<html>
<head>
<title>
Transform LayoutType Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
function managerReload(){
document.frm.actionType.value="reload";
document.frm.submit();
}
function managerReloadAll(){
document.frm.actionType.value="reloadAll";
document.frm.submit();
}
function doSearch(){
var searchValue = document.frm.searchTxt.value;
document.frm.selectedKey.value = searchValue;
document.frm.submit();
}
function enterEvent(){
if(window.event.keyCode==13){
doSearch();
}
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>레이아웃 유형 관리</b> <br><br>
</p>
<form name="frm" action="">
<input type="hidden" name="actionType" value="">
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td rowspan=2 align='right' width='250' bgcolor="#ccccff">레이아웃유형명 :&nbsp;&nbsp;</td>
<td align='left'>&nbsp;<select name="selectedKey" onchange="doAction();"style="width:98%">
<%
for(int i=0;i<alls.length;i++) {
%>
<option value="<%=alls[i]%>" <%= (alls[i].equals(selectedKey)) ? "selected" : "" %>><%=alls[i]%>
<%
}
%></select>
</td>
<td width='50'><input type="button" name="reload" value="reload" onClick="managerReload()" /></td>
<td width='70'><input type="button" name="reloadAll" value="reloadAll" onClick="managerReloadAll()" /></td>
</tr>
<tr bgcolor='white'>
<td align='left' >&nbsp;<input type="edit" style="width:98%;" name="searchTxt" onkeydown="enterEvent()" value="<%=selectedKey%>" style="width:98%" /></td>
<td colspan=2 align="center"><input type="button" name="search" value="search" onClick="doSearch()" /></td>
</tr>
</table><br>
<table width="800" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<tr bgcolor='white'>
<td align='right' colspan='2' width='250' bgcolor="#003366">&nbsp; <font color="yellow"><b>LayoutType정보</b> &nbsp;</font></td>
</tr>
<%
if(vo != null ){
%>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="#ccccff">&nbsp; 레이아웃유형명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getName()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="#ccccff">&nbsp; 레이아웃유형설명 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getDescription()%></td>
</tr>
<tr bgcolor='white'>
<td align='right' width='250' bgcolor="#ccccff">&nbsp; 메시지레이아웃생성클래스 : &nbsp;</td>
<td align='left' style="height:40px;">&nbsp;<%=vo.getGenClass()%></td>
</tr>
<%
} else {
%>
<tr bgcolor='white'>
<td align='center' colspan="2" >&nbsp; 요청하신 LayoutType 정보가 없습니다. &nbsp;</td>
</tr>
<%
}
%>
</table>
</form>
</body>
</html>
+77
View File
@@ -0,0 +1,77 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ page import="com.eactive.eai.common.useDate.UseDateControlManager"%>
<%@ page import="com.eactive.eai.common.useDate.UseDateControlVO"%>
<%
UseDateControlManager manager = UseDateControlManager.getInstance();
String[] names = manager.getAllKeys();
String selectedName = request.getParameter("name");
if(selectedName == null && names.length>0) selectedName = names[0];
UseDateControlVO vo = manager.get(selectedName);
%>
<html>
<head>
<title>
Use Date Control Manager
</title>
<script>
function doAction() {
document.frm.submit();
}
</script>
</head>
<body>
<p style="font-size:12pt;">
<b>Use Date Control Configuration</b> <br><br>
</p>
<form name="frm" action="">
<table width="450" border=0 bgcolor='black' cellpadding="1" cellspacing="1">
<%
if(selectedName!=null) {
%>
<tr bgcolor='white'>
<td align='right' width='200' bgcolor="#ccccff">인터페이스명 : &nbsp;</td>
<td align='left' width='250'>&nbsp;<select name="name" onchange="doAction();">
<%
for(int i=0;i<names.length;i++) {
%>
<option value="<%=names[i]%>" <%=(names[i].equals(selectedName)) ? "selected" : ""%>><%=names[i]%>
<%
}
%></select>
</td>
</tr>
<%
if (vo != null){
%>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">인터페이스명 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getName()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">시작일자 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getStartDateString()%>"></td>
</tr>
<tr bgcolor='white'>
<td align='right' bgcolor="#ccccff">종료일자 : &nbsp;</td>
<td align='left'>&nbsp;<input type="text" name="text" size="20" value="<%=vo.getEndDateString()%>"></td>
</tr>
<%
}
%>
<% } else { %>
<% } %>
</table>
<table border='0' width="800" >
<tr>
<td align='left'>
<!-- input type="submit" value="UPDATE"-->
</td>
</tr>
</table><br>
</form>
</body>
</html>
+115
View File
@@ -0,0 +1,115 @@
<%@ page import="java.io.*, java.util.*"%>
<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%!
private ThreadGroup getRootThreadGroup() {
ThreadGroup group = Thread.currentThread().getThreadGroup();
ThreadGroup parent = null;
while(true) {
parent = group.getParent();
if(parent==null) return group;
group = parent;
}
}
private ThreadGroup findThreadGroup(ThreadGroup parent, String path) {
if(path.startsWith("/")) {
path = path.substring(1);
}
return null;
}
%>
<%
String threadGroupName = request.getParameter("ThreadGroupName");
ThreadGroup root = getRootThreadGroup();
if(threadGroupName==null) threadGroupName=root.getName();
ThreadGroup[] children = new ThreadGroup[root.activeGroupCount()];
root.enumerate(children, true);
ThreadGroup current = null;
for(int i=0;i<children.length;i++) {
if(threadGroupName.equals(children[i].getName())) {
current = children[i];
break;
}
}
if(current==null) current = root;
Thread[] threads = new Thread[current.activeCount()];
current.enumerate(threads, false);
%>
<html>
<head>
<title>
CurrentThread List
</title>
</head>
<body>
<p>
쓰레드 전체 리스트 보기
</p>
<table border='0' width='800'>
<tr>
<td>
Thread Group List (총: <%=children.length%>개)
<table border=0 cellspacing="1" cellpadding="1" bgcolor="black" width='800'>
<tr bgcolor='yellow'>
<td align='center' width='50'>No</td><td align='center'>ThreadGroup Name</td>
</tr>
<tr bgcolor='white'>
<td align='center'>root</td>
<td>&nbsp;<a href="viewThreadList.jsp"><%=root%></a></td>
</tr>
<%
for(int i=0;i<children.length;i++) {
%>
<tr bgcolor='white'>
<td align='center'><%=(i+1)%></td>
<td>&nbsp;<a href="viewThreadList.jsp?ThreadGroupName=<%=children[i].getName()%>"><%=children[i].getName()%></a></td>
</tr>
<%
}
%>
</table>
</td>
</tr>
<tr>
<td>
<br>
Thread List [<%=current.getName()%>] (총: <%=threads.length%>개)
<table border=0 cellspacing="1" cellpadding="1" bgcolor="black" width='800'>
<tr bgcolor='yellow'>
<td align='center' width='50'>No</td><td align='center'>Thread Name</td>
<td align='center'>isAlive</td>
<td align='center'>isDaemon</td>
<td align='center'>isInterrupted</td>
<td align='center'>activeCount</td>
</tr>
<%
for(int i=0;i<threads.length;i++) {
if(threads[i]==null) continue;
%>
<tr bgcolor='white'>
<td align='center'><%=(i+1)%></td>
<td>&nbsp;<%=threads[i].getName()%></td>
<td>&nbsp;<%=threads[i].isAlive()%></td>
<td>&nbsp;<%=threads[i].isDaemon()%></td>
<td>&nbsp;<%=threads[i].isInterrupted()%></td>
<td>&nbsp;<%=threads[i].activeCount()%></td>
</tr>
<%
}
%>
</table>
</td>
</tr>
</table>
</body>
</html>
+1
View File
@@ -51,6 +51,7 @@ war {
if (profile == "weblogic") {
webXml = file("WebContent/WEB-INF/weblogic-web.xml")
exclude 'WEB-INF/web.xml'
}
archiveFileName = "eapim-online.war"
duplicatesStrategy = DuplicatesStrategy.WARN
@@ -35,15 +35,11 @@ import com.eactive.eai.common.util.Logger;
import com.eactive.eai.common.util.MessageUtil;
import com.eactive.eai.common.util.UUIDGenerator;
import com.eactive.eai.inbound.error.InboundErrorInfoVO;
import com.kjbank.encrypt.exchange.crypto.AES256Cipher;
import com.kjbank.encrypt.exchange.crypto.AES256GCMCipher;
import com.kjbank.encrypt.exchange.crypto.AESCipher;
// jwhong
import org.json.simple.JSONObject;
import java.util.HashMap;
import java.util.Map;
import java.sql.Timestamp;
import com.eactive.eai.data.entity.onl.stdmessage.StandardMessageInfo;
@RestController
@@ -64,14 +60,27 @@ public class ApiAdapterController implements HttpAdapterServiceKey {
String apiUri = servletRequest.getRequestURI();
// /api/v1/public/getUserInfo.svc
apiUri = StringUtils.removeStart(apiUri, servletRequest.getContextPath());
apiUri = StringUtils.removeEnd(apiUri, "/");
HttpDynamicInAdapterUri adptUri = findAdptUri(apiUri, HttpDynamicInAdapterManager.getInstance());
//Received time , jwhong
long receivedTimeMillis = System.currentTimeMillis();
String receivedTimeStr = String.valueOf(receivedTimeMillis);
apiUri = StringUtils.removeEnd(apiUri, "/");
//** jwhong TSEAIHS04의 api full path와 비교하여 adapter를 가져온다
String methodAndUri = servletRequest.getMethod() + "|" + apiUri;
HttpDynamicInAdapterUri adptUri = null;
String adapterGrpName ="";
String apiSvcCode = "";
try {
STDMessageDAO dao = ApplicationContextProvider.getContext().getBean(STDMessageDAO.class);
StandardMessageInfo stdInfo = dao.getSTDMsgByPath(methodAndUri);
String serviceKey = stdInfo.getBzwksvckeyname();
int idx = serviceKey.indexOf(":");
adapterGrpName = (idx != -1) ? serviceKey.substring(0, idx) : serviceKey; // ':' 이전 문자열 추출
apiSvcCode = stdInfo.getEaisvcname();
//아래 원래 Logic
adptUri = findAdptUri(apiUri, HttpDynamicInAdapterManager.getInstance(), adapterGrpName);
} catch (Exception e) {
adptUri = null;
}
//***
if (logger.isDebug()) {
logger.debug("ApiAdapterController] service request uri : " + servletRequest.getRequestURI());
}
@@ -80,8 +89,11 @@ public class ApiAdapterController implements HttpAdapterServiceKey {
logError(servletRequest);
// throw new Exception("can not find Adapter Uri");
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("can not find Adapter Uri");
}
}
//Received time , jwhong
long receivedTimeMillis = System.currentTimeMillis(); // 밀리세컨 단위로 보내야함
String receivedTimeStr = String.valueOf(receivedTimeMillis);
String adapterGroupName = adptUri.getAdptGrpName();
String adapterName = adptUri.getAdptName();
@@ -102,8 +114,9 @@ public class ApiAdapterController implements HttpAdapterServiceKey {
String responseType = httpProp.getProperty(RESPONSE_TYPE, "SYNC");
ResponseEntity responseEntity = null;
Properties transactionProp = new Properties();
//transactionProp.put(INBOUND_REQUESTED_TIME, receivedTimeMillis); // jwhong, put api received time
// jwhong, put api received time, eaiSvcCode
transactionProp.put(INBOUND_REQUESTED_TIME, receivedTimeStr);
transactionProp.put(API_SERVICE_CODE, apiSvcCode);
try {
String responseData = service.callApi(servletRequest, servletResponse, httpProp, adapterGroupVO, adapterVO, transactionProp);
@@ -170,18 +183,23 @@ public class ApiAdapterController implements HttpAdapterServiceKey {
* @param apiUri
* @return
*/
private HttpDynamicInAdapterUri findAdptUri(String apiUri, HttpDynamicInAdapterManager manager) throws Exception {
private HttpDynamicInAdapterUri findAdptUri(String apiUri, HttpDynamicInAdapterManager manager, String adapterGrpName) throws Exception {
if (StringUtils.isBlank(apiUri)) {
return null;
}
}
//** jwhong TSEAIHS04의 api full path와 비교하여 adapter를 가져온다
STDMessageDAO dao = ApplicationContextProvider.getContext().getBean(STDMessageDAO.class);
StandardMessageInfo stdInfo = dao.getSTDMsgByPath(apiUri);
String serviceKey = stdInfo.getBzwksvckeyname();
int idx = serviceKey.indexOf(":");
String adapterGrpName = (idx != -1) ? serviceKey.substring(0, idx) : serviceKey; // ':' 이전 문자열 추출
//***
//* manager 출력
logger.warn("===== adptUriMap 상세 내용 =====");
for (Map.Entry<String, HttpDynamicInAdapterUri> entry : manager.adptUriMap.entrySet()) {
HttpDynamicInAdapterUri uriObj = entry.getValue();
logger.warn("GroupName=" + uriObj.getAdptGrpName()
+ ", AdapterName=" + uriObj.getAdptName()
+ ", URI=" + uriObj.getUri());
}
logger.warn("================================");
//
for (int i = 0; i < 10; i++) {
HttpDynamicInAdapterUri adptUri = manager.getAdptUri(apiUri);
@@ -281,6 +299,4 @@ public class ApiAdapterController implements HttpAdapterServiceKey {
return json.toJSONString();
}
*/
}
@@ -309,7 +309,27 @@ public class ApiAdapterService extends HttpAdapterServiceSupport {
result = mapper.writeValueAsString(rootNode);
}
}
// KJBank는 요청에 대한 응답 (Sync응답, Aync 에 대한 Ack응답) 에 대하여 암호화 하지 않는다. 무조건 안한다. 따라서 아래부분은 구현은 했지만 사용하지 않는다.
//result = doPostEncryption(result, transactionProp); // jwhong Encrypt
// ASYNC 인 경우 광주은행은 RETURN 해 주는 값들이 수정되어야 한다. JWHONG
/*
if ("ASYN".equals(syncAsyncType) && MessageType.JSON.equals(adptMsgType) && StringUtils.isNotBlank(headerGroupName)) {
ObjectMapper mapper = new ObjectMapper();
ObjectNode rootNode = (ObjectNode) mapper.readTree(result);
JsonNode headerGroup = rootNode.get(headerGroupName);
if(headerGroup != null) {
for(Iterator<String> it = headerGroup.fieldNames(); it.hasNext();) {
String name = it.next();
String value = headerGroup.get(name).asText();
response.addHeader(name, value);
}
rootNode.remove(headerGroupName);
result = mapper.writeValueAsString(rootNode);
}
}
*/
// KJBank는 요청에 대한 응답 (Sync응답, Aync 에 대한 Ack응답) 에 대하여 암호화 하지 않는다. 무조건 안한다. 따라서 아래부분은 구현은 했지만 사용하지 않는다.
//result = doPostEncryption(result, transactionProp); // jwhong Encrypt
return result;
@@ -448,6 +468,7 @@ public class ApiAdapterService extends HttpAdapterServiceSupport {
// end test source
switch (decryptAlgorithm) {
case "AES128":
case "AES128-TOSS":
try {
String key128 = clientSecretKey.substring(22,38); //togetherEncoder 경우는 substring(44,60) 이네??
@@ -532,6 +553,7 @@ public class ApiAdapterService extends HttpAdapterServiceSupport {
String decryptedBodyMessage = "";
switch (decryptAlgorithm) {
case "AES128":
case "AES128-TOSS":
decryptedJsonKey = "preScreeningRequest";
break;
@@ -587,6 +609,7 @@ public class ApiAdapterService extends HttpAdapterServiceSupport {
// end test source
switch (encryptAlgorithm) {
case "AES128":
case "AES128-TOSS":
try {
String key128 = clientSecretKey.substring(22,38); //togetherEncoder 경우는 substring(44,60) 이네??