JavaTM Platform
Standard Ed. 6

javax.management.remote.rmi
인터페이스 RMIConnection

모든 슈퍼 인터페이스:
Closeable , Remote
기존의 구현 클래스의 일람:
RMIConnectionImpl , RMIConnectionImpl_Stub


public interface RMIConnection
extends Closeable , Remote

클라이언트로부터 서버측의 MBeanServer 구현에 MBeanServer 요구를 송신하기 위해서 사용되는 RMI 객체입니다. RMI 연결기에 접속된 원격 클라이언트 마다, 이 인터페이스를 구현하는 Remote 객체가 1 개씩 제공됩니다.

사용자 코드는, 반드시 이 인터페이스를 참조하지 않습니다. 이 인터페이스는, API 의 구현이 다른 경우도 상호 운용할 수 있도록(듯이), 공개 API 의 일부로서 지정되고 있습니다.

클라이언트 파라미터를, 서버측의 올바른 클래스 로더로 직렬화 복원하기 (위해)때문에, 메소드 호출에 사용되는 것 같은 클라이언트 파라미터는 MarshalledObject 에 랩 됩니다. 이 인터페이스의 구현은, 우선 오퍼레이션과 그 타겟의 적절한 클래스 로더를 취득하고 나서, 이 클래스 로더를 사용해 정렬화 파라미터를 직렬화 복원합니다. 특별히 기재되지 않은 한, 파라미터 MarshalledObject 또는 MarshalledObject[] 는 null 의외로 합니다. null 의 경우, 파라미터의 동작은 부정이 됩니다.

클래스의 로드에 관한 자세한 것은,JMX 스펙, Version 1.4 의 PDF 문서를 참조해 주세요.

이 인터페이스의 대부분의 메소드는,MBeanServerConnection 인터페이스의 병행 메소드입니다. 여기에서는 설명합니다만, 메소드의 동작은 대응하는 MBeanServerConnection 메소드와 같습니다.

도입된 버젼:
1.5

메소드의 개요
 void addNotificationListener (ObjectName  name, ObjectName  listener, MarshalledObject  filter, MarshalledObject  handback, Subject  delegationSubject)
          MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 메소드를 처리합니다.
 Integer [] addNotificationListeners (ObjectName [] names, MarshalledObject [] filters, Subject [] delegationSubjects)
          MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 메소드를 처리합니다.
 void close ()
          이 접속을 종료합니다.
 ObjectInstance createMBean (String  className, ObjectName  name, MarshalledObject  params, String [] signature, Subject  delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) 메소드를 처리합니다.
 ObjectInstance createMBean (String  className, ObjectName  name, ObjectName  loaderName, MarshalledObject  params, String [] signature, Subject  delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) 메소드를 처리합니다.
 ObjectInstance createMBean (String  className, ObjectName  name, ObjectName  loaderName, Subject  delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, ObjectName) 메소드를 처리합니다.
 ObjectInstance createMBean (String  className, ObjectName  name, Subject  delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName) 메소드를 처리합니다.
 NotificationResult fetchNotifications (long clientSequenceNumber, int maxNotifications, long timeout)
          연결기 서버로부터 통지를 수신합니다.
 Object getAttribute (ObjectName  name, String  attribute, Subject  delegationSubject)
          MBeanServerConnection.getAttribute(ObjectName, String) 메소드를 처리합니다.
 AttributeList getAttributes (ObjectName  name, String [] attributes, Subject  delegationSubject)
          MBeanServerConnection.getAttributes(ObjectName, String[]) 메소드를 처리합니다.
 String getConnectionId ()
          접속 ID 를 돌려줍니다.
 String getDefaultDomain (Subject  delegationSubject)
          MBeanServerConnection.getDefaultDomain() 메소드를 처리합니다.
 String [] getDomains (Subject  delegationSubject)
          MBeanServerConnection.getDomains() 메소드를 처리합니다.
 Integer getMBeanCount (Subject  delegationSubject)
          MBeanServerConnection.getMBeanCount() 메소드를 처리합니다.
 MBeanInfo getMBeanInfo (ObjectName  name, Subject  delegationSubject)
          MBeanServerConnection.getMBeanInfo(ObjectName) 메소드를 처리합니다.
 ObjectInstance getObjectInstance (ObjectName  name, Subject  delegationSubject)
          MBeanServerConnection.getObjectInstance(ObjectName) 메소드를 처리합니다.
 Object invoke (ObjectName  name, String  operationName, MarshalledObject  params, String [] signature, Subject  delegationSubject)
          MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) 메소드를 처리합니다.
 boolean isInstanceOf (ObjectName  name, String  className, Subject  delegationSubject)
          MBeanServerConnection.isInstanceOf(ObjectName, String) 메소드를 처리합니다.
 boolean isRegistered (ObjectName  name, Subject  delegationSubject)
          MBeanServerConnection.isRegistered(ObjectName) 메소드를 처리합니다.
 Set <ObjectInstance > queryMBeans (ObjectName  name, MarshalledObject  query, Subject  delegationSubject)
          MBeanServerConnection.queryMBeans(ObjectName, QueryExp) 메소드를 처리합니다.
 Set <ObjectName > queryNames (ObjectName  name, MarshalledObject  query, Subject  delegationSubject)
          MBeanServerConnection.queryNames(ObjectName, QueryExp) 메소드를 처리합니다.
 void removeNotificationListener (ObjectName  name, ObjectName  listener, MarshalledObject  filter, MarshalledObject  handback, Subject  delegationSubject)
          MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 메소드를 처리합니다.
 void removeNotificationListener (ObjectName  name, ObjectName  listener, Subject  delegationSubject)
          MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) 메소드를 처리합니다.
 void removeNotificationListeners (ObjectName  name, Integer [] listenerIDs, Subject  delegationSubject)
          removeNotificationListener(ObjectName, NotificationListener)removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 메소드를 처리합니다.
 void setAttribute (ObjectName  name, MarshalledObject  attribute, Subject  delegationSubject)
          MBeanServerConnection.setAttribute(ObjectName, Attribute) 메소드를 처리합니다.
 AttributeList setAttributes (ObjectName  name, MarshalledObject  attributes, Subject  delegationSubject)
          MBeanServerConnection.setAttributes(ObjectName, AttributeList) 메소드를 처리합니다.
 void unregisterMBean (ObjectName  name, Subject  delegationSubject)
          MBeanServerConnection.unregisterMBean(ObjectName) 메소드를 처리합니다.
 

메소드의 상세

getConnectionId

String  getConnectionId()
                       throws IOException 

접속 ID 를 돌려줍니다. 이 캐릭터 라인은, 지정의 RMI 연결기 서버에의 유효한 접속 마다 다릅니다.

반환값:
접속 ID
예외:
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
RMIConnector.connect

close

void close()
           throws IOException 

이 접속을 종료합니다. 이 메소드의 종료시에는, 더 이상 원격 호출의 실패가 일어나지 않게, 이 인터페이스를 구현하는 RMI 객체가 안 export 됩니다.

정의:
인터페이스 Closeable 내의 close
예외:
IOException - 접속을 종료할 수 없었던 경우, Remote 객체를 안 export 할 수 없었던 경우, 또는 원격 종료 요구의 전송시에 통신 장해가 발생했을 경우

createMBean

ObjectInstance  createMBean(String  className,
                           ObjectName  name,
                           Subject  delegationSubject)
                           throws ReflectionException ,
                                  InstanceAlreadyExistsException ,
                                  MBeanRegistrationException ,
                                  MBeanException ,
                                  NotCompliantMBeanException ,
                                  IOException 
MBeanServerConnection.createMBean(String, ObjectName) 메소드를 처리합니다.

파라미터:
className - 인스턴스화하는 MBean 의 클래스명
name - MBean 의 객체명. null 의 경우 있어
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
새롭고 인스턴스화 된 MBean 의 ObjectName 와 Java 클래스명을 포함한 ObjectInstance. ObjectNamen 의 경우, Java 클래스명은 getMBeanInfo(n) . getClassName()
예외:
ReflectionException - MBean 의 생성자 의 호출시에 발행되는 java.lang.ClassNotFoundException 또는 java.lang.Exception 를 랩 하는 경우
InstanceAlreadyExistsException - MBean 가 벌써 MBean 서버에 의해 제어되고 있는 경우
MBeanRegistrationException - MBean 의 preRegister (MBeanRegistration interface) 메소드가 예외를 throw 했을 경우. MBean 는 등록되지 않는다
MBeanException - MBean 의 생성자 이 예외를 throw 했을 경우
NotCompliantMBeanException - 이 클래스가 JMX 준거의 MBean 가 아닌 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터에게 건네지는 className 가 null 인지, 파라미터에게 건네지는 ObjectName 이 패턴인지, MBean 에 ObjectName 가 지정되어 있지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

createMBean

ObjectInstance  createMBean(String  className,
                           ObjectName  name,
                           ObjectName  loaderName,
                           Subject  delegationSubject)
                           throws ReflectionException ,
                                  InstanceAlreadyExistsException ,
                                  MBeanRegistrationException ,
                                  MBeanException ,
                                  NotCompliantMBeanException ,
                                  InstanceNotFoundException ,
                                  IOException 
MBeanServerConnection.createMBean(String, ObjectName, ObjectName) 메소드를 처리합니다.

파라미터:
className - 인스턴스화하는 MBean 의 클래스명
name - MBean 의 객체명. null 의 경우 있어
loaderName - 사용하는 클래스 로더의 객체명
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
새롭고 인스턴스화 된 MBean 의 ObjectName 와 Java 클래스명을 포함한 ObjectInstance. ObjectNamen 의 경우, Java 클래스명은 getMBeanInfo(n) . getClassName()
예외:
ReflectionException - MBean 의 생성자 의 호출시에 발행되는 java.lang.ClassNotFoundException 또는 java.lang.Exception 를 랩 하는 경우
InstanceAlreadyExistsException - MBean 가 벌써 MBean 서버에 의해 제어되고 있는 경우
MBeanRegistrationException - MBean 의 preRegister (MBeanRegistration interface) 메소드가 예외를 throw 했을 경우. MBean 는 등록되지 않는다
MBeanException - MBean 의 생성자 이 예외를 throw 했을 경우
NotCompliantMBeanException - 이 클래스가 JMX 준거의 MBean 가 아닌 경우
InstanceNotFoundException - 지정된 클래스 로더가 MBean 서버에 등록되지 않은 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터에게 건네지는 className 가 null 인지, 파라미터에게 건네지는 ObjectName 이 패턴인지, MBean 에 ObjectName 가 지정되어 있지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

createMBean

ObjectInstance  createMBean(String  className,
                           ObjectName  name,
                           MarshalledObject  params,
                           String [] signature,
                           Subject  delegationSubject)
                           throws ReflectionException ,
                                  InstanceAlreadyExistsException ,
                                  MBeanRegistrationException ,
                                  MBeanException ,
                                  NotCompliantMBeanException ,
                                  IOException 
MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) 메소드를 처리합니다. Object[] 파라미터는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
className - 인스턴스화하는 MBean 의 클래스명
name - MBean 의 객체명. null 의 경우 있어
params - 생성자 의 파라미터를 포함한 배열. 이 배열은, 불려 간 뒤,MarshalledObject 에 캡슐화된다. 캡슐화된 배열이 null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
signature - 생성자 의 시그니챠를 포함한 배열. 이 배열이 불려 가는 null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
새롭고 인스턴스화 된 MBean 의 ObjectName 와 Java 클래스명을 포함한 ObjectInstance. ObjectNamen 의 경우, Java 클래스명은 getMBeanInfo(n) . getClassName()
예외:
ReflectionException - MBean 의 생성자 의 호출시에 발행되는 java.lang.ClassNotFoundException 또는 java.lang.Exception 를 랩 하는 경우
InstanceAlreadyExistsException - MBean 가 벌써 MBean 서버에 의해 제어되고 있는 경우
MBeanRegistrationException - MBean 의 preRegister (MBeanRegistration interface) 메소드가 예외를 throw 했을 경우. MBean 는 등록되지 않는다
MBeanException - MBean 의 생성자 이 예외를 throw 했을 경우
NotCompliantMBeanException - 이 클래스가 JMX 준거의 MBean 가 아닌 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터에게 건네지는 className 가 null 인지, 파라미터에게 건네지는 ObjectName 에 패턴이 포함되어 있는지, MBean 에 ObjectName 가 지정되어 있지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

createMBean

ObjectInstance  createMBean(String  className,
                           ObjectName  name,
                           ObjectName  loaderName,
                           MarshalledObject  params,
                           String [] signature,
                           Subject  delegationSubject)
                           throws ReflectionException ,
                                  InstanceAlreadyExistsException ,
                                  MBeanRegistrationException ,
                                  MBeanException ,
                                  NotCompliantMBeanException ,
                                  InstanceNotFoundException ,
                                  IOException 
MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) 메소드를 처리합니다. Object[] 파라미터는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
className - 인스턴스화하는 MBean 의 클래스명
name - MBean 의 객체명. null 의 경우 있어
loaderName - 사용하는 클래스 로더의 객체명
params - 생성자 의 파라미터를 포함한 배열. 이 배열은, 불려 간 뒤,MarshalledObject 에 캡슐화된다. 캡슐화된 배열이 null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
signature - 생성자 의 시그니챠를 포함한 배열. 이 배열이 불려 간다. null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
새롭고 인스턴스화 된 MBean 의 ObjectName 와 Java 클래스명을 포함한 ObjectInstance. ObjectNamen 의 경우, Java 클래스명은 getMBeanInfo(n) . getClassName()
예외:
ReflectionException - MBean 의 생성자 의 호출시에 발행되는 java.lang.ClassNotFoundException 또는 java.lang.Exception 를 랩 하는 경우
InstanceAlreadyExistsException - MBean 가 벌써 MBean 서버에 의해 제어되고 있는 경우
MBeanRegistrationException - MBean 의 preRegister (MBeanRegistration interface) 메소드가 예외를 throw 했을 경우. MBean 는 등록되지 않는다
MBeanException - MBean 의 생성자 이 예외를 throw 했을 경우
NotCompliantMBeanException - 이 클래스가 JMX 준거의 MBean 가 아닌 경우
InstanceNotFoundException - 지정된 클래스 로더가 MBean 서버에 등록되지 않은 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터에게 건네지는 className 가 null 인지, 파라미터에게 건네지는 ObjectName 에 패턴이 포함되어 있는지, MBean 에 ObjectName 가 지정되어 있지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

unregisterMBean

void unregisterMBean(ObjectName  name,
                     Subject  delegationSubject)
                     throws InstanceNotFoundException ,
                            MBeanRegistrationException ,
                            IOException 
MBeanServerConnection.unregisterMBean(ObjectName) 메소드를 처리합니다.

파라미터:
name - 등록 해제하는 MBean 의 객체명
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
MBeanRegistrationException - MBean 의 preDeregister (MBeanRegistration interface) 메소드가 예외를 throw 했을 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 인지, 등록 해제하려고 하고 있는 MBean 가 MBeanServerDelegate 인 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

getObjectInstance

ObjectInstance  getObjectInstance(ObjectName  name,
                                 Subject  delegationSubject)
                                 throws InstanceNotFoundException ,
                                        IOException 
MBeanServerConnection.getObjectInstance(ObjectName) 메소드를 처리합니다.

파라미터:
name - MBean 의 객체명
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
name 로 지정된 MBean 에 관련지을 수 있었던 ObjectInstance. ObjectNamename 로, 포함되는 클래스명은 getMBeanInfo(name) . getClassName()
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 의 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

queryMBeans

Set <ObjectInstance > queryMBeans(ObjectName  name,
                                MarshalledObject  query,
                                Subject  delegationSubject)
                                throws IOException 
MBeanServerConnection.queryMBeans(ObjectName, QueryExp) 메소드를 처리합니다. QueryExp 는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - 취득하는 MBean 를 식별하는 객체명 패턴. null 의 경우, 또는 도메인이나 키의 프로퍼티이 지정되어 있지 않은 경우는, 등록되어 모든 MBean 가 취득되는
query - MBean 의 선택에 적용되는 쿼리식. MarshalledObject 에 캡슐화되고 있다. MarshalledObject 에 null 치가 캡슐화되고 있는 경우, MBean 의 선택에 쿼리식은 적용되지 않는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
선택된 MBean 의 ObjectInstance 객체를 포함한 세트. 쿼리의 조건을 채우는 MBean 가 존재하지 않는 경우, 빈 상태(empty)의 리스트가 반환된다
예외:
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

queryNames

Set <ObjectName > queryNames(ObjectName  name,
                           MarshalledObject  query,
                           Subject  delegationSubject)
                           throws IOException 
MBeanServerConnection.queryNames(ObjectName, QueryExp) 메소드를 처리합니다. QueryExp 는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - 취득하는 MBean 명을 식별하는 객체명 패턴. null 의 경우, 또는 도메인이나 키의 프로퍼티이 지정되어 있지 않은 경우는, 등록되어 모든 MBean 의 이름이 취득되는
query - MBean 의 선택에 적용되는 쿼리식. MarshalledObject 에 캡슐화되고 있다. MarshalledObject 에 null 치가 캡슐화되고 있는 경우, MBean 의 선택에 쿼리식은 적용되지 않는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
선택된 MBean 의 ObjectName 를 포함한 세트. 쿼리의 조건을 채우는 MBean 가 존재하지 않는 경우, 빈 상태(empty)의 리스트가 반환된다
예외:
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

isRegistered

boolean isRegistered(ObjectName  name,
                     Subject  delegationSubject)
                     throws IOException 
MBeanServerConnection.isRegistered(ObjectName) 메소드를 처리합니다.

파라미터:
name - 체크 대상의 MBean 의 객체명
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
MBean 가 벌써 MBean 서버에 등록되어 있는 경우는 true, 그렇지 않은 경우는 false
예외:
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 의 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

getMBeanCount

Integer  getMBeanCount(Subject  delegationSubject)
                      throws IOException 
MBeanServerConnection.getMBeanCount() 메소드를 처리합니다.

파라미터:
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
등록을 마친 MBean 의 수
예외:
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

getAttribute

Object  getAttribute(ObjectName  name,
                    String  attribute,
                    Subject  delegationSubject)
                    throws MBeanException ,
                           AttributeNotFoundException ,
                           InstanceNotFoundException ,
                           ReflectionException ,
                           IOException 
MBeanServerConnection.getAttribute(ObjectName, String) 메소드를 처리합니다.

파라미터:
name - MBean 의 객체명. 이 MBean 의 속성이 취득되는
attribute - 취득되는 속성의 이름을 지정하는 String
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
취득되는 속성의 값
예외:
AttributeNotFoundException - MBean 의 지정된 속성이 액세스 불능인 경우
MBeanException - MBean 의 취득 메소드에 의해 throw 되는 예외를 랩 하는 경우
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
ReflectionException - 취득 메소드의 호출시에 throw 되는 java.lang.Exception 를 랩 하는 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 인지, 파라미터내의 속성이 null 인 경우
RuntimeMBeanException - MBean 의 취득 메소드에 의해 throw 되는 실행시 예외를 랩 하는 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
setAttribute(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

getAttributes

AttributeList  getAttributes(ObjectName  name,
                            String [] attributes,
                            Subject  delegationSubject)
                            throws InstanceNotFoundException ,
                                   ReflectionException ,
                                   IOException 
MBeanServerConnection.getAttributes(ObjectName, String[]) 메소드를 처리합니다.

파라미터:
name - MBean 의 객체명. 이 MBean 의 속성이 취득되는
attributes - 취득되는 속성의 리스트
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
취득되는 속성의 리스트
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
ReflectionException - Dynamic MBean 의 getAttributes 메소드의 호출시에 예외가 발생했을 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 인지, 파라미터내의 속성이 null 인 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
setAttributes(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

setAttribute

void setAttribute(ObjectName  name,
                  MarshalledObject  attribute,
                  Subject  delegationSubject)
                  throws InstanceNotFoundException ,
                         AttributeNotFoundException ,
                         InvalidAttributeValueException ,
                         MBeanException ,
                         ReflectionException ,
                         IOException 
MBeanServerConnection.setAttribute(ObjectName, Attribute) 메소드를 처리합니다. Attribute 파라미터는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - MBean 명. 이 MBean 의 속성이 설정되는
attribute - 설정되는 속성과 설정 후 MarshalledObject 에 캡슐화되는 값의 ID
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
AttributeNotFoundException - MBean 의 지정된 속성이 액세스 불능인 경우
InvalidAttributeValueException - 지정된 값이, 속성에 대한 유효한 값이 아닌 경우
MBeanException - MBean 의 설정 메소드에 의해 throw 되는 예외를 랩 하는 경우
ReflectionException - 설정 메소드의 호출시에 throw 되는 java.lang.Exception 를 랩 하는 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 인지, 파라미터내의 속성이 null 인 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
getAttribute(javax.management.ObjectName, java.lang.String, javax.security.auth.Subject)

setAttributes

AttributeList  setAttributes(ObjectName  name,
                            MarshalledObject  attributes,
                            Subject  delegationSubject)
                            throws InstanceNotFoundException ,
                                   ReflectionException ,
                                   IOException 
MBeanServerConnection.setAttributes(ObjectName, AttributeList) 메소드를 처리합니다. AttributeList 파라미터는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - MBean 의 객체명. 이 MBean 의 속성이 설정되는
attributes - 속성의 리스트. 설정되는 속성과 설정 후 MarshalledObject 에 캡슐화되는 값의 ID
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
설정된 속성과 새로운 값의 리스트
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
ReflectionException - Dynamic MBean 의 getAttributes 메소드의 호출시에 예외가 발생했을 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 인지, 파라미터내의 속성이 null 인 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
getAttributes(javax.management.ObjectName, java.lang.String[], javax.security.auth.Subject)

invoke

Object  invoke(ObjectName  name,
              String  operationName,
              MarshalledObject  params,
              String [] signature,
              Subject  delegationSubject)
              throws InstanceNotFoundException ,
                     MBeanException ,
                     ReflectionException ,
                     IOException 
MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) 메소드를 처리합니다. Object[] 파라미터는,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - 메소드의 호출을 하는 MBean 의 객체명
operationName - 불려 가는 오퍼레이션의 이름
params - 오퍼레이션이 불려 가MarshalledObject 에 캡슐화되었을 때 설정되는 파라미터를 포함한 배열. 캡슐화된 배열이 null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
signature - 오퍼레이션의 시그니챠를 포함한 배열. 클래스 객체의 로드에는, 오퍼레이션을 호출한 MBean 를 로드할 때와 같은 클래스 로더가 사용된다. null 의 경우, 빈 상태(empty) 배열과 같은 의미가 되는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
오퍼레이션에 의해 반환되는 객체. 지정된 MBean 상에서 오퍼레이션을 호출한 결과를 나타낸다
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
MBeanException - MBean 의 호출 메소드에 의해 throw 되는 예외를 랩 하는 경우
ReflectionException - 메소드의 호출시에 throw 되는 java.lang.Exception 를 랩 하는 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
RuntimeOperationsException - name 또는 operationName 이 null 의 경우,IllegalArgumentException 를 랩 하는 경우

getDefaultDomain

String  getDefaultDomain(Subject  delegationSubject)
                        throws IOException 
MBeanServerConnection.getDefaultDomain() 메소드를 처리합니다.

파라미터:
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
디폴트의 도메인
예외:
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

getDomains

String [] getDomains(Subject  delegationSubject)
                    throws IOException 
MBeanServerConnection.getDomains() 메소드를 처리합니다.

파라미터:
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
도메인의 리스트
예외:
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

getMBeanInfo

MBeanInfo  getMBeanInfo(ObjectName  name,
                       Subject  delegationSubject)
                       throws InstanceNotFoundException ,
                              IntrospectionException ,
                              ReflectionException ,
                              IOException 
MBeanServerConnection.getMBeanInfo(ObjectName) 메소드를 처리합니다.

파라미터:
name - 분석 대상의 MBean 의 이름
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
MBeanInfo 의 인스턴스. 이 MBean 의 모든 속성과 오퍼레이션의 취득을 허가한다
예외:
IntrospectionException - 인트로스페크션중에 예외가 발생했을 경우
InstanceNotFoundException - 지정된 MBean 가 발견되지 않았던 경우
ReflectionException - Dynamic MBean 의 getMBeanInfo 메소드의 호출시에 예외가 발생했을 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 의 경우

isInstanceOf

boolean isInstanceOf(ObjectName  name,
                     String  className,
                     Subject  delegationSubject)
                     throws InstanceNotFoundException ,
                            IOException 
MBeanServerConnection.isInstanceOf(ObjectName, String) 메소드를 처리합니다.

파라미터:
name - MBean 의 ObjectName
className - 클래스의 이름
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
반환값:
상기의 규칙에 따라, 지정된 MBean 가 지정된 클래스의 인스턴스인 경우는 true, 그렇지 않은 경우는 false
예외:
InstanceNotFoundException - 지정된 MBean 가 MBean 서버에 등록되지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
RuntimeOperationsException - java.lang.IllegalArgumentException 를 랩 하는 경우. 즉, 파라미터내의 객체명이 null 의 경우

addNotificationListener

void addNotificationListener(ObjectName  name,
                             ObjectName  listener,
                             MarshalledObject  filter,
                             MarshalledObject  handback,
                             Subject  delegationSubject)
                             throws InstanceNotFoundException ,
                                    IOException 
MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 메소드를 처리합니다. NotificationFilter 파라미터는,MarshalledObject 에 랩 되고 있습니다. Object (핸드백) 파라미터도,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - 청취자가 추가되는 MBean 의 이름
listener - 등록이 끝난 MBean 가 발행한 통지를 처리하는 청취자의 객체명
filter - MarshalledObject 에 캡슐화된 필터 객체. MarshalledObject 에 캡슐화된 필터가 null 치를 가지는 경우, 통지의 처리전에 필터링은 행해지지 않는
handback - 통지가 발행되었을 때 청취자에게 송신되는 문맥. MarshalledObject 에 캡슐화되고 있는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 등록이 끝난 MBean 안에, 통지 청취자 또는 통지 브로드 캐스터의 MBean 명이 없는 경우
RuntimeOperationsException - IllegalArgumentException 를 랩 하는 경우. listener 에 의해 지정된 MBean 가 존재하고 있어도,NotificationListener 인터페이스를 구현하고 있지 않는지,name 또는 listener 가 null 인 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
관련 항목:
removeNotificationListener(ObjectName, ObjectName, Subject) , removeNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)

removeNotificationListener

void removeNotificationListener(ObjectName  name,
                                ObjectName  listener,
                                Subject  delegationSubject)
                                throws InstanceNotFoundException ,
                                       ListenerNotFoundException ,
                                       IOException 
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) 메소드를 처리합니다.

파라미터:
name - 청취자가 삭제되는 MBean 의 이름
listener - 삭제되는 청취자의 객체명
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 등록이 끝난 MBean 안에, 지정된 MBean 명이 없는 경우
ListenerNotFoundException - 청취자가 MBean 에 등록되지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
RuntimeOperationsException - name 또는 listener 가 null 의 경우,IllegalArgumentException 를 랩 하는 경우
관련 항목:
addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)

removeNotificationListener

void removeNotificationListener(ObjectName  name,
                                ObjectName  listener,
                                MarshalledObject  filter,
                                MarshalledObject  handback,
                                Subject  delegationSubject)
                                throws InstanceNotFoundException ,
                                       ListenerNotFoundException ,
                                       IOException 
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 메소드를 처리합니다. NotificationFilter 파라미터는,MarshalledObject 에 랩 되고 있습니다. Object 파라미터도,MarshalledObject 에 랩 되고 있습니다.

파라미터:
name - 청취자가 삭제되는 MBean 의 이름
listener - 이전에 이 MBean 에 추가된 청취자
filter - 청취자의 추가시로 지정된 필터. MarshalledObject 에 캡슐화되고 있는
handback - 청취자의 추가시로 지정된 핸드백. MarshalledObject 에 캡슐화되고 있는
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 등록이 끝난 MBean 안에, 지정된 MBean 명이 없는 경우
ListenerNotFoundException - 청취자가 MBean 에 등록되지 않은 경우, 또는 지정된 필터 및 핸드백으로 등록되지 않은 경우
SecurityException - 클라이언트 또는 위양 된 Subject 가, 이 오퍼레이션의 실행 권한을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
RuntimeOperationsException - name 또는 listener 가 null 의 경우,IllegalArgumentException 를 랩 하는 경우
관련 항목:
addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)

addNotificationListeners

Integer [] addNotificationListeners(ObjectName [] names,
                                   MarshalledObject [] filters,
                                   Subject [] delegationSubjects)
                                   throws InstanceNotFoundException ,
                                          IOException 

MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 메소드를 처리합니다.

지정된 필터에 일치하는 MBean 로부터의 통지를 등록합니다. 원격 클라이언트는, 그 후,fetchNotifications 메소드를 사용해 이러한 통지를 취득할 수 있습니다.

클라이언트 측에는, 청취자 마다 원의 NotificationListenerhandback 가 보관 유지됩니다. 클라이언트가 이것들을 식별할 수 있도록(듯이), 서버는 일의의 listenerID 를 생성해, 돌려줍니다. 이 listenerIDNotification 와 함께 원격 클라이언트에 전송 됩니다.

지정된 페어 (name, filter)의 어느쪽이든을 등록할 수 없는 경우, 오퍼레이션은 예외를 발행해 종료합니다. 이 경우, 이름도 필터도 등록되지 않습니다.

파라미터:
names - Notification 의 발행원 MBean 를 식별하는 ObjectName
filters - NotificationFilter 의 정렬화 된 표현으로부터 완성되는 배열. 이 배열의 요소는 null 이라도 좋다.
delegationSubjects - Subject. 이 Subject (복수가능) 대신에 청취자가 추가된다. 이 배열의 요소는 null 이라도 좋다. 또,delegationSubjects 파라미터 자체가 null 여도 괜찮다. 이 경우, 이 배열은,name 배열이나 filter 배열과 같은 사이즈의 null 치로부터 완성되는 배열과 동등하게 된다
반환값:
로컬 청취자를 식별하는 listenerID 로부터 완성되는 배열. 이 배열은 파라미터와 같은 수의 요소를 가진다
예외:
IllegalArgumentException - name 또는 filter 가 null 의 경우,name 에 null 요소가 포함되는 경우, 또는 3 개의 배열의 사이즈가 다른 경우
ClassCastException - filter 의 몇개의 요소가 NotificationFilter 이외의 비 null 객체로서 비정렬화하는 경우
InstanceNotFoundException - name 중 한쪽이 등록이 끝난 MBean 에 대응하고 있지 않는 경우
SecurityException - 몇개의 MBean 로, 클라이언트 또는 위양 된 Subject 가, 청취자를 추가하는 액세스권을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우

removeNotificationListeners

void removeNotificationListeners(ObjectName  name,
                                 Integer [] listenerIDs,
                                 Subject  delegationSubject)
                                 throws InstanceNotFoundException ,
                                        ListenerNotFoundException ,
                                        IOException 

removeNotificationListener(ObjectName, NotificationListener)removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 메소드를 처리합니다.

이 메소드는, MBean 서버내의 지정된 MBean 로부터, 1 개(살) 이상의 NotificationListener 를 삭제합니다.

NotificationListener 는,addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]) 메소드로부터 반환된 ID 에 의해 식별됩니다.

파라미터:
name - Notification 의 발행원 MBean 를 식별하는 ObjectName
listenerIDs - 삭제하는 청취자에게 대응하는 ID 의 리스트
delegationSubject - 위양 주체를 포함한 Subject. 인증 주체가 사용되고 있는 경우는 null
예외:
InstanceNotFoundException - 지정된 name 가 등록이 끝난 MBean 에 대응하고 있지 않는 경우
ListenerNotFoundException - 서버 측에 발견되지 않는 청취자가 있는 경우. 이 예외는, MBean 가,MBeanServer.removeNotificationListener 의 호출해 이외의 하등의 이유로써 청취자를 파기했을 때 발행된다
SecurityException - 클라이언트 또는 위양 된 Subject 가, 청취자를 삭제하는 액세스권을 가지지 않는 경우
IOException - 일반적인 통신 예외가 발생했을 경우
IllegalArgumentException - ObjectName 또는 listenerId 가 null 의 경우, 또는 listenerId 에 null 요소가 포함되는 경우

fetchNotifications

NotificationResult  fetchNotifications(long clientSequenceNumber,
                                      int maxNotifications,
                                      long timeout)
                                      throws IOException 

연결기 서버로부터 통지를 수신합니다. 이 메소드는, 1 개(살) 이상 통지가 발행되는지, 지정된 타임 아웃에 이를 때까지 블록 할 수 있습니다. 또, 통지가 0 이면 언제라도 종료할 수 있습니다.

순서 번호가 clientSequenceNumber 이상으로, 이 클라이언트가 통지를 받아들이는 필터를 사용해 통지의 발행원 MBean 의 청취자를 1 개 이상 등록하고 있는 경우, 이 통지를 결과에 포함할 수가 있습니다. 이 통지를 대기하는 각 청취자는,addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]) 에 의해 반환된 정수치의 ID 에 의해 식별됩니다.

파라미터:
clientSequenceNumber - 클라이언트가 대기하는 최초의 순서 번호. 0 보다 작은 값의 경우, 다음의 통지의 순서 번호라고 해석되는
maxNotifications - 반환되는 다른 통지의 최대수. 같은 통지가 반복해 발행되는 경우, 반환되는 NotificationResult 에 포함되는 TargetedNotification 배열은, 이 값보다 많은 요소를 가질 수가 있다. 이 파라미터의 값이 부의 경우의 동작은 부정
timeout - 통지의 착신을 기다리는 최대 시간 (밀리 세컨드 단위). 0 의 경우, 통지가 없으면 메소드는 대기하지 않고, 즉시 종료한다. Long.MAX_VALUE 의 경우, 타임 아웃은 설정되지 않는다. 이 파라미터의 값이 부의 경우의 동작은 부정
반환값:
NotificationResult
예외:
IOException - 일반적인 통신 예외가 발생했을 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.