Oracle AQ JMS 구현을 사용할 수있는 웹 로직 서버를 설정했지만 어떤 이유로 인해 WLS 연결 풀에서 내가 만든 대기열을 볼 수없는 경우, 가능한 유일한 방법 웹 논리에서 대기열 찾기는 대기열을 만든 DB 사용자의 자격 증명을 사용하여 웹 논리 데이터 소스 연결 풀을 만드는 것입니다.Oracle AQ 대기열을 사용하여 Web Logic JMS 모듈 구성
나는이를 admin_user로 다음과 같은 짓을 :
등재 대기열 표
EXECUTE DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table=>'testqueue_table',queue_payload_type=>'sys.aq$_jms_text_message');
대기열
시작 대기열EXECUTE dbms_aqadm.create_queue(queue_name=>'testqueue', queue_table=>'testqueue_table');
EXECUTE dbms_aqadm.start_queue(queue_name=>'testqueue');
부여 된 CPOOL 사용자 권한
GRANT aq_user_role TO cpool;
EXECUTE DBMS_AQADM.grant_queue_privilege(privilege=>'ALL', queue_name=>'adming_user.testqueue', grantee=>'cpool',grant_option=>FALSE);
내가 내 데이터베이스에 연결 웹 로직에서이 데이터 소스를 설정 웹 로직 2 JDBC의 데이터 소스를 설정은 둘 것을 제외하고 동일 하나는 이고 다른 하나는 사용자입니다. admin_user
JMS 모듈 만들기 이제 jms 모듈을 JDBC DataSources에 등록하고 로컬 JDNI 이름과 외부 JDNI 이름을 연결합니다.
을 사용하는 데이터 소스를 사용하는 경우 admin_user 모든 것이 잘 작동하고 배포 된 응용 프로그램이 JNDI에서 대기열을 찾을 수 있습니다.
문제 내가 다음은 JNDI에 연결 풀을 찾지 만 실패 cpool를 사용하는 데이터 소스를 사용하는 경우 결코 (는이를 admin_user 위해 일한 사실에도 불구하고) 대기열. 나는 WL에서 다음과 같은 오류를 얻을 : 내 데이터 소스에 대해이를 admin_user 계정을 사용하지 않는 WL 대기열의 JNDI 이름을 확인할 수없는 이유
Related cause:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'testqueue': Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Cannot resolve name:Queues/TESTQUEUE
는 아는 사람 있나요.