알림을 내보내는 MBean을 정의 할 때 특히 알림 유형을 찾는 지침을 찾고 있습니다. 오라클 사이트의 JMX Best Practices은 다음과 같이 말합니다. 하지만 조금 오래되었고 Java6 이전 버전입니다.JMX 알림을 방출하는 모범 사례
알림은 javax.management.Notification의 인스턴스이거나 javax.management 네임 스페이스의 서브 클래스 중 하나 여야합니다. 이러한 서브 클래스 중 하나에 들어 가지 않는 정보는 setUserData 메소드를 사용하여 통지에 CompositeData를 첨부하여 전달해야합니다.
오라클 사이트에서도 Weblogic이 자체 서브 클래스 중 일부를 정의합니다. WebLogicLogNotification. 그 Best Practices 상태 :
모든 JMX 알림 개체는 javax.management.Notification 개체 형식을 확장합니다. JMX 및 WebLogic Server는 javax.management.AttributeChangeNotification과 같은 추가 알림 객체 유형을 정의합니다. 추가 오브젝트 유형에는 여러 유형의 이벤트에 적합한 특수 정보 세트가 들어 있습니다. WLS 같은
우리의 통지는 우리가 통지와 전달하고자하는 정보에 대한 사용자 정의 게터와 우리 자신의 서브 클래스를 정의하는 고려, 표준 서브 클래스 중 하나를 맞지 않습니다. 아니면 기본 javax.management.Notification을 사용하고 제네릭 setUserData (Object)를 사용하여 정보를 첨부하는 것이 좋습니다. 후자를 수행하면 Object가 CompositeData와 같은 JMX 유형이어야한다고 가정합니다. 소비자의 관점에서 생각하는 것이 더 좋을까요?
편집 : 소비자보기에서 사용자 지정 하위 클래스의 단점은 응용 프로그램/클래스 경로에 포함시켜야한다는 것입니다.