IBM Social Business Toolkit을 사용 중입니다. faces-config xml 파일의 엔드 포인트를 통해 Notes 애플리케이션에 대한 연결을 정의했습니다. 나 IBM 연결의 기본 URL을 반환하는 서비스를 찾을 수 없으므로이 파일을 문법적으로 어떻게 액세스 할 수 있는지 궁금합니다.faces-config.xml에 설정된 끝점 속성에 프로그래밍 방식으로 액세스하려면 어떻게해야합니까?
답변
속성은 Faces-Config.xml에서 참조되는 Java 클래스의 일부입니다. 따라서 클래스를 자신의 정규화 된 이름 또는 bean 이름으로 가져 와서 속성을 설정하거나 가져옵니다.
끝점 정의는 실제로 관리되는 bean을 만드는 것임을 기억하는 것이 유용합니다. 관리 Bean에는 참조하는 변수 이름 (managed-bean-name 등록 정보)이 있습니다. SSJS 또는 Java의 ExtLibUtil.resolveVariable()을 통해 직접 액세스 할 수 있습니다. 정의는 또한 사용중인 Java 클래스를 알려줍니다 (예 : com.ibm.sbt.services.endpoints.ConnectionsBasicEndpoint. 속성을 가져 오거나 설정하는 데 필요한 모든 정보를 제공합니다.
그래서 SSJS에서 클래스 이름 (예 :
var myService:com.ibm.sbt.services.endpoints.ConnectionsBasicEndpoint = connections
그래서 콜론 뒤 비트는 관리 콩 수준의 값과 등호 관리 - 빈 - 이름이됩니다 서명 후 비트 될 것입니다. 자바에서는 다음을 사용할 수 있습니다
그러면 클래스의 모든 메소드에 액세스 할 수 있으므로 필요한 것을 검색 할 수 있습니다.
폴이 제안한 바대로 가장 좋은 경로가 될 것이라고 생각합니다. 이름으로 변수를 해결하고 게터를 사용하여 효과적인 속성을 얻습니다.
스벤 (Sven)의 제안은 다른 상황을 염두에 두는 것이 좋습니다. faces-config.xml 파일을 리소스로 액세스하여 XML 파서에로드하고 XPath를 사용하여 값을 찾을 수 있습니다. 필자는 Faces 설정을 조작하기위한 일련의 메소드가있는 OpenNTF Domino API의 다음 버전에서 이와 같은 기술을 사용하고 있습니다. 그러나 XML 파일을 직접 읽는 것이 EL 표현식 일 수있는 문자열 값을 가져 오는 반면 resolveVariable 경로를 사용하면 실제 현재 속성을 얻을 수 있다는 점이 핵심적인 측면입니다.
다음은 faces-config.xml에 액세스하는 예입니다. http://hasselba.ch/blog/?p=752 –