2012-03-13 2 views
0

웹 프로젝트와 소스 프로젝트가 있습니다.Websphere 6.1에서 리소스를 찾는 방법

웹 프로젝트에서 소스 프로젝트의 java 파일에 액세스하려는 xsd이라는 폴더가 있습니다.

서블릿에서

또는 내가 아무의 ServletContext가없는 소스 프로젝트에서

getServletContext().getRealPath("/xsd")

그러나 사용하여 XSD에 액세스 할 수 있습니다 JSP, 나는에 xsd 폴더를 잡아 사람 모른다 웹 프로젝트. 프로젝트가 프로덕션 서버에 배포 될 때 알 수 없으므로 절대 경로를 사용할 수 없습니다.

내가 할 내가 자바 File를 사용하여 내 XSD 폴더와 웹 프로젝트가 포함되어 있지 않습니다

new File(".") 인쇄 C:\SDP75\runtimes\base_v61\profiles\was61profile1\

내가 쉽게이 어떻게 할 수 있습니까?

답변

2

당신은하지 클래스 패스에 XSD를 넣고

Thread.currentThread().getContextClassLoader().getResourceAsStream("xsd/A.xsd"); 

그것은 당신에게 File을주지 못할 것이다하지만이 충분하다을 할 수 있나요?

편집 : 그에만 적용에 Class.getResource()하지 Classloader.getResource()을의로 /을 선도 제거했습니다.

+0

네, 그게 꼭 필요한 것입니다. 이상한 점은 이것이 제가 처음 시도한 것입니다. 그러나 나는 내가 처음이었던 곳을 보려고 노력했다. 그리고 나에게는 길을 시험해 보는 것이 없었다. 어쨌든 덕분에 많이! –

+0

이것은 틀린 것 같습니다. Class.getResource/AsStream에게 건네지는 자원 명은 「/」가 선두가 아니면 안되지만, ClassLoader.getResource/AsStream에게 건네진 것은 돌려 주어지지 않습니다. –

+0

@bkail, 감사합니다. – beny23

관련 문제