2012-10-23 1 views
0

Java에서 웹 응용 프로그램을 만들고 ServletFileUpload 클래스를 사용하여 파일을 업로드하려고합니다. commons-fileupload-1.2.2.jar을 다운로드하고 jar trough 프로젝트 속성을 추가했습니다. jdeveloper 11g와 weblogic server를 사용하고 있습니다.jdeveloper weblogic 잘못된 jar로드

응용 프로그램을 실행할 때 "java.lang.NoSuchMethodError : parseRequest"가 표시됩니다. 내 응용 프로그램이 아마 라이브러리의 이전 버전을 사용하고 알고있는 것처럼

List<FileItem> items; 
items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); 

:

여기 내 코드입니다.

내 질문은 내 응용 프로그램에서 내가 다운로드 한 새 라이브러리를 어떻게 사용합니까? Jdeveloper에서 서버를 변경해야합니까?

답변

0

weblogic-application.xml 파일의 'prefer-web-inf-classes'요소를 true로 설정할 수 있습니다. 이것은 서버에 정의 된 것보다 web-inf/lib 폴더에 분류되어로드되어야합니다.

자세한 내용은 WebLogic classloading doc을 읽으십시오.

+0

Timom은 ansewer에게 감사하지만 그것이 나를 위해 작동하지 않았다. "weblogic.descriptor.DescriptorException : 유효성 검사 문제가 발생했습니다. 문제는 ...."이라는 메시지가 나타납니다. –

0

문제점이 무엇인지 알아 냈습니다. WEB/lib의 war 파일에는 두 개의 .jar 파일이 있습니다. commons-fileupload-1.2.2.jar (필자가 추가 한 파일)과 commons-fileupload.jar (이 파일은 Struts 런타임 라이브러리에 있음). 내 프로젝트에서 Struts Runtime을 제외 시켰습니다. (필자는 그것을 필요로하지 않았기 때문에) 이제는 잘 동작합니다.