Grails의 resource.xml (표준 스프링 xml 파일)에서 잘 작동하는 것을 가져 가고 싶습니다.Grails resources.groovy에서 Spring의 jee : jndi-lookup과 같은 것을 어떻게 작성합니까?
<jee:jndi-lookup id="remoteConnectionFactory"
jndi-name="jms/WLQueueConnectionFactory" resource-ref="false">
<jee:environment>
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
java.naming.provider.url=t3://remote_uri:port/
</jee:environment>
</jee:jndi-lookup>
resources.groovy에있는 Grails bean builder DSL로 바꾸십시오. 나는 다음과 같은 조합을 시도했다. (기본적으로 시행 착오를 통해 작동 여부를 확인할 수있다. 아무 것도하지 않는다.) :
ejbJndi(JndiTemplate)
{ bean ->
bean.scope = 'session'
environment = [
"java.naming.provider.url" : "t3://remote_uri:port/",
"java.naming.factory.initial" : "weblogic.jndi.WLInitialContextFactory"
]
}
xmlns jee:"http://www.springframework.org/schema/jee"
xmlns context:"http://www.springframework.org/schema/context"
jee.'jndi-lookup'(id:"jmsConnectionFactory", jndiName: "com.retailexp.jms.ConnectionFactory", lookupOnStartup: false,
proxyInterface: "javax.jms.ConnectionFactory", resourceRef: "false", 'jndi-environment': ref("ejbJndi")) {
cache = true
exposeAccessContext = true
jndiTemplate = ref("ejbJndi")
jndiEnvironment = [
"java.naming.provider.url" : "t3://remote_uri:port/",
"java.naming.factory.initial" : "weblogic.jndi.WLInitialContextFactory"
] as Properties
environmentRef = [
"java.naming.provider.url" : "t3://remote_uri:port/",
"java.naming.factory.initial" : "weblogic.jndi.WLInitialContextFactory"
]
environment = """
java.naming.provider.url=t3://remote_uri:port/
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
"""
다시 말하지만 이것들은 내가 시도한 것의 조합이다. 최종 코드는 다음과 같이 보일 것입니다 (이 중 하나가 작동하기를 바랍니다!). 당신이 말할 수 있듯이, 나는 어둠 속에서 조금씩 놀고있다.
xndx 조회가 설정되어 있고 유효한 Bean DSL이지만 환경 (JndiTemplate 유형의 항목)에 값 (java.naming.factory.initial 등)이 없습니다. 원격 InitialContext를 가져올 설정입니다. .