2010-02-16 3 views
2

JBoss를 기반으로하는 현재 J2EE 프로젝트의 경우 메시지 구동 Bean을 사용하여 원격 시스템과 인터페이스해야하며 타사에서 RAR 파일로 제공되는 JCA 리소스 어댑터가 필요합니다. 전체 프로젝트를 JBoss 서버에 EAR 파일로 패키지하고 배포하고 싶습니다. 특히, RAR 파일은 EAR 파일에 임베드되어야하며 전 세계적으로 배치되지 않아야합니다.임베디드 JCA 리소스 어댑터를 참조하는 방법

이 모든 것은 지금까지 잘 작동하지만, RAR 파일이 참조되는 방식에 특히 만족하지 않습니다. 예를 들어, MDB에 함께 딸려의 jboss.xml은 현재 다음과 같습니다

<jboss> 
    <enterprise-beans> 
     <message-driven> 
     <ejb-name>testBean1</ejb-name> 
     <resource-adapter-name>test1.ear#thirdparty-1.0.rar</resource-adapter-name> 
     </message-driven> 
    </enterprise-beans> 
</jboss> 

을이 일반적으로 잘 작동하는 동안 EAR 파일이 "test2.ear"로 이름이 변경되는 경우,이 중단됩니다. 포함 된 아카이브의 이름을 하드 코딩하지 않고 임베디드 RAR 파일을 참조 할 수있는 방법이 있습니까?

편집 : 거의 두 달 후, 나는이 질문에 대한 실제 답변을 찾지 못했습니다. 주위에 묻는다면, 두 가지 유용한 제안이 있습니다 : "Maven 속성 사용 및 필터링"및 "EAR 내에 RAR을 포함하지 마십시오." 현재 JBoss에서 이것을 올바르게 처리 할 방법이 없다고 강력히 의심합니다. 그래서 나는 그것을 포기하고 여기에있는 유일한 대답을 받아 들일 것입니다.

답변

2

빌드 할 때 maven을 사용하고 있습니까? 그렇다면, 당신의 이름을 귀 파일을 받는다는 속성을 설정 한 다음

$ {ear.name}을 사용하는 자리 표시 자

예를 들어 XXX

를 사용하여 리소스 파일에서 값을 설정하기 위해 그 이름을 사용할 수 있습니다 된 .ear #의 타사-1.0.rar

당신이 자리를이 같은

뭔가있을 것이다 자원 설정을 확인하십시오

<build> 
<resources> 
    <resource> 
    <directory>src/main/resources</directory> 
    <filtering>true</filtering> 
    </resource> 
</resources> 

+0

답장을 보내 주셔서 감사합니다. 나는 그 사이에 이것을 교차 게시했다 : http://community.jboss.org/message/529160 내가 지금까지 얻은 가장 유용한 대답은 당신이 제안하는 것과 매우 유사했다. 나는 maven을 사용하고 있으며 자원 필터링을 사용하기로 결정했다. 그러나 그것은 여전히 ​​옳다고 생각하지 않습니다. –

+0

나는 여기있는 유일한 대답을 받아 들였다. 위의 수정 내용을 참조하십시오. –