|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectkr.co.hit.live.aop.target.AbstractTargetProxy
kr.co.hit.live.aop.target.EJBDelegatorTargetProxy
public class EJBDelegatorTargetProxy
EJB Commander를 사용하여 원격에 있는 POJO를 호출하는 TargetProxy 구현 클래스이다. POJO 기반 서비스의 경우 분산환경을 지원하지 못하므로 이를 EJB Commander를 통하여 원격의 POJO를 호출할 수 있도록 제공되는 기능이다.
원격 POJO를 호출하기 위하여 아래와 같이 서비스 설정 파일에 등록한다.
<service name="SystemMsgMgt"
interface="${package}.systemmsgmgt.SystemMsgMgt"
class="kr.co.hit.live.aop.target.EJBDelegatorTargetProxy"
interceptor="system.proxy"
singleton="true">
<property name="targetName" value="systemmsgmgr.SystemMsgMgt"/>
<property name="jndiProvider" value="cmc_his016"/>
</service>
위의 설정에서 SystemMsgMgt 서비스를 원격 서버의 systemmsgmgr.SystemmsgMgt 서비스를 호출하도록
설정되었으며, 이때 원격 서버는 jndiProvider를 통하여 지정되었다.
jndiProvider로 지정되는 명칭은 ejb-lookup.xml 파일에 <jndv-svc-link>로 정의되어 있어야한다.
| Field Summary | |
|---|---|
static String |
DEFAULT_EJB_COMMAND_JNDI_NAME
|
static String |
DEFAULT_EJB_COMMAND_JNDI_PROPERTY
|
static String |
EJB_COMMAND_METHOD_NAME
|
| Fields inherited from class kr.co.hit.live.aop.target.AbstractTargetProxy |
|---|
targetInterface |
| Constructor Summary | |
|---|---|
EJBDelegatorTargetProxy()
|
|
| Method Summary | |
|---|---|
Object |
invoke(Method method,
Object[] args)
원격의 EJB Commander로 POJO 메소드 호출을 요청한다. |
void |
setCommanderJndi(String jndiName)
호출시 사용할 EJB Commander의 JNDI 명을 지정한다. |
void |
setJndiProvider(String jndiSvcName)
호출할 POJO 서비스를 제공하는 서버의 JNDI 명을 설정한다. |
void |
setTargetName(String name)
호출할 POJO 서비스 객체의 서비스 명을 설정한다. |
| Methods inherited from class kr.co.hit.live.aop.target.AbstractTargetProxy |
|---|
getInterface, getServiceContainer, invoke, setInterface, setServiceContainer |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String DEFAULT_EJB_COMMAND_JNDI_PROPERTY
public static final String DEFAULT_EJB_COMMAND_JNDI_NAME
public static final String EJB_COMMAND_METHOD_NAME
| Constructor Detail |
|---|
public EJBDelegatorTargetProxy()
| Method Detail |
|---|
public void setCommanderJndi(String jndiName)
jndiName - public void setTargetName(String name)
name - public void setJndiProvider(String jndiSvcName)
jndiSvcName -
public Object invoke(Method method,
Object[] args)
throws Throwable
invoke in class AbstractTargetProxyThrowable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||