weblogic 재배포 대응
This commit is contained in:
@@ -6,6 +6,9 @@ import java.lang.reflect.Method;
|
|||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
import java.rmi.RemoteException;
|
import java.rmi.RemoteException;
|
||||||
|
import java.rmi.registry.LocateRegistry;
|
||||||
|
import java.rmi.registry.Registry;
|
||||||
|
import java.rmi.server.ExportException;
|
||||||
import java.security.Security;
|
import java.security.Security;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
@@ -24,6 +27,7 @@ import com.eactive.eai.common.dao.Keys;
|
|||||||
import com.eactive.eai.common.exception.ExceptionUtil;
|
import com.eactive.eai.common.exception.ExceptionUtil;
|
||||||
import com.eactive.eai.common.lifecycle.LifecycleException;
|
import com.eactive.eai.common.lifecycle.LifecycleException;
|
||||||
import com.eactive.eai.common.lifecycle.LifecycleManager;
|
import com.eactive.eai.common.lifecycle.LifecycleManager;
|
||||||
|
import com.eactive.eai.common.logger.async.AsyncHttpLoggingPoolManager;
|
||||||
import com.eactive.eai.common.logger.async.AsyncLoggingPoolManager;
|
import com.eactive.eai.common.logger.async.AsyncLoggingPoolManager;
|
||||||
import com.eactive.eai.common.property.PropManager;
|
import com.eactive.eai.common.property.PropManager;
|
||||||
import com.eactive.eai.common.routing.rmi.RemoteProxy;
|
import com.eactive.eai.common.routing.rmi.RemoteProxy;
|
||||||
@@ -36,7 +40,6 @@ import com.eactive.eai.common.util.ServiceLocator;
|
|||||||
import com.eactive.eai.common.util.ServiceLocatorException;
|
import com.eactive.eai.common.util.ServiceLocatorException;
|
||||||
import com.eactive.eai.env.ConfigKeys;
|
import com.eactive.eai.env.ConfigKeys;
|
||||||
import com.eactive.eai.env.ElinkConfig;
|
import com.eactive.eai.env.ElinkConfig;
|
||||||
import com.eactive.eai.common.logger.async.AsyncHttpLoggingPoolManager;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* eLink FrameWork이 초기화(Deploy)될 때 실행되어야 할 작업을 정의
|
* eLink FrameWork이 초기화(Deploy)될 때 실행되어야 할 작업을 정의
|
||||||
@@ -180,14 +183,25 @@ public class AppInitializer implements InitializingBean, DisposableBean {
|
|||||||
this.shutdownWaitIntervalMs = shutdownWaitIntervalMs;
|
this.shutdownWaitIntervalMs = shutdownWaitIntervalMs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Registry rmiRegistry;
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
private void initRmiServer(int registryPort, int servicePort) throws RemoteException {
|
private void initRmiServer(int registryPort, int servicePort) throws RemoteException {
|
||||||
|
try {
|
||||||
|
rmiRegistry = LocateRegistry.createRegistry(registryPort);
|
||||||
|
} catch (ExportException e) {
|
||||||
|
// 혹시 이전 정리 실패로 이미 떠있다면 재사용 시도
|
||||||
|
Logger.getLogger(Logger.LOGGER_DEFAULT)
|
||||||
|
.warn("Registry already exists on port " + registryPort + ", reusing", e);
|
||||||
|
rmiRegistry = LocateRegistry.getRegistry(registryPort);
|
||||||
|
}
|
||||||
|
|
||||||
rmiServiceExporter.setServiceName("RemoteProxy");
|
rmiServiceExporter.setServiceName("RemoteProxy");
|
||||||
rmiServiceExporter.setService(remoteProxy);
|
rmiServiceExporter.setService(remoteProxy);
|
||||||
rmiServiceExporter.setServiceInterface(serviceInterface);
|
rmiServiceExporter.setServiceInterface(serviceInterface);
|
||||||
rmiServiceExporter.setRegistryPort(registryPort);
|
rmiServiceExporter.setRegistryPort(registryPort);
|
||||||
rmiServiceExporter.setServicePort(servicePort);
|
rmiServiceExporter.setServicePort(servicePort);
|
||||||
rmiServiceExporter.setAlwaysCreateRegistry(true);
|
rmiServiceExporter.setAlwaysCreateRegistry(false);
|
||||||
rmiServiceExporter.afterPropertiesSet();
|
rmiServiceExporter.afterPropertiesSet();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ reader.FLAT=com.eactive.eai.message.parser.FlatReader
|
|||||||
|
|
||||||
lifecycle.fireLifecycleEvent(STOPING_EVENT, this);
|
lifecycle.fireLifecycleEvent(STOPING_EVENT, this);
|
||||||
readerMap.clear();
|
readerMap.clear();
|
||||||
readerMap = null;
|
// readerMap = null;
|
||||||
started = false;
|
started = false;
|
||||||
lifecycle.fireLifecycleEvent(STOPPED_EVENT, this);
|
lifecycle.fireLifecycleEvent(STOPPED_EVENT, this);
|
||||||
}
|
}
|
||||||
@@ -208,6 +208,10 @@ reader.FLAT=com.eactive.eai.message.parser.FlatReader
|
|||||||
|
|
||||||
@SuppressWarnings("rawtypes")
|
@SuppressWarnings("rawtypes")
|
||||||
private void initReaderFactory(Properties config) {
|
private void initReaderFactory(Properties config) {
|
||||||
|
if (readerMap == null) {
|
||||||
|
readerMap = new ConcurrentHashMap<>();
|
||||||
|
}
|
||||||
|
|
||||||
Class cl = null;
|
Class cl = null;
|
||||||
StandardReader reader = null;
|
StandardReader reader = null;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user