귀를 매개 변수화하는 것
-
16-09-2020 - |
문제
ISLEDFORE 서버에 배포 된 Java EE 응용 프로그램에 읽기 전용 매개 변수 (예 : RMI 레지스트리 호스트 및 포트)를 설정하고 싶습니다. 이것을 할 수있는 일반적인 장소는 배포 설명자가 될 것이지만, 내 문제는 귀에 포장되어있어 귀를 변경하지 않고 편집 할 수 없습니다.
JDBC 및 JMS 리소스 설정과 비슷한 것이 필요하지만 훨씬 간단합니다. 구성 데이터를 데이터베이스 테이블에 넣을 수 있지만 과도한 것으로 보입니다. 파일 자원 어댑터를 사용할 수 있지만 GlassFish 관리 콘솔에서 구성을 편집 할 수있는 경우 가장 좋습니다.
이 작업을 수행하는 표준 방법이 있습니까? 통신 해야하는 외부 노드에 의존 할 때 응용 프로그램을 어떻게 테스트합니까? 이 매개 변수는 어디에서 액세스 할 수 있는가?
최선의 추측은 외부 JNDI 리소스를 정의하는 것이었지만 데이터를 어디에 두는 것이 무엇입니까?
업데이트 : 이것은 내가 생각한 것입니다 :
어떻게 할 수 있습니까? 귀 또는 전쟁 외부의 Java EE 구성 매개 변수를 저장하십시오.
그래서 질문은 다음과 같습니다. glassfish 에서 어떻게 이것을합니까?
해결책
onogling의 몇 시간 후에 나는 그 대답을 발견했습니다!그것은 사소한 것이 아니라 운 좋게 매우 쉽습니다.여기 있습니다 :
http://www.mentby.com/glassfish/custom-resource-work-when-looking-it-up-but-not-with-injection.html
관리 콘솔에서 사용자 정의 리소스 을 만들고 "값"이라는 속성을 추가합니다.다음과 같이 :
Alt Text http://img231.imageshack.us/img231/8237/jndicustomresource.png
다음 이름 / 값에 액세스하는 것은 EJB에서 쉽습니다 :
try {
InitialContext ic = new InitialContext();
String value = (String) ic.lookup("MyCustomResource");
System.out.println("MyCustomResource = " + value);
} catch (NamingException e) {
e.printStackTrace();
}
.
을 인쇄합니다
info : mycustomresource= mycustomresource에서 큰 포옹!