2016-07-15 8 views
0

나는 [대상 폴더] 대상 폴더에 설치된 응용 프로그램에WebSphere에 설치된 응용 프로그램 용 .ear 및 .war 폴더가 생성되는 이유는 무엇입니까?

하는 응용 프로그램 (.war 파일)를 설치 도구를 wsadmin에 사용하고 난

-installed.ear.destination 옵션

을 사용하고 있어요.

그러나 응용 프로그램을 설치 한 후, 내 웹 콘텐츠에 대한 최종 폴더 구조가

[대상 폴더] /testapp.ear/testapp.war/처럼 [내 컨텐츠]

이유 .ear 및 .war 폴더가 생성되며 [내 콘텐츠]가 [대상 폴더]에 존재하도록 응용 프로그램을 설치할 수있는 방법은 무엇입니까 ??

+0

EAR에는 단순히 WAR 파일이 포함되어 있습니다. WebSphere가 모든 응용 프로그램의 EAR 파일 구조를 유지한다고 가정하면 [내 컨텐츠]를 [대상 폴더]에 표시 할 수는 없습니다. – Haxiel

답변

5

WebSphere Application Server는 ear 파일 만 실행합니다. 따라서 관리 콘솔 또는 wsadmin을 통해 .war 파일을 설치하면 런타임시 처리 할 수 ​​있도록 파일을 ear 파일로 래핑합니다.

0

이는 IBM WebSphere Application Server의 응용 프로그램 전개 구조 중 일부입니다.

응용 프로그램 배포의 일부로 응용 프로그램 서버는 응용 프로그램을 실행하는 데 편리한 구조로 응용 프로그램 파일을 배치합니다. 이는 모든 모듈에 쉽게 액세스 할 수 있다는 것을 의미하며 웹 모듈의 파일에 쉽게 액세스 할 수 있어야합니다.

EJB JAR 파일의 경우 파일 구조에 추가 레이어가 없습니다. EJB JAR 파일의 모든 요소는 Java에서 제공되는 JAR/ZIP API를 통해 액세스 할 수 있습니다. 응용 프로그램의 각 EJB JAR 파일의 압축을 풀 필요가 있지만 EJB JAR 파일 내의 요소를 압축 해제 할 필요는 없습니다.

WAR 파일의 경우, WEB-INF/lib 폴더 내에 JAR 파일의 추가 계층이 있습니다. 이러한 웹 모듈 라이브러리 JAR에 액세스하려면 JAR 파일을 노출 된 파일로 배치해야합니다.

또한 WAR 파일의 특정 자원은 JAR 파일을 처리하도록 설정되지 않은 코드 영역에서 쉽게 액세스 할 수 있도록 파일 세트에 표시됩니다. 가장 눈에 띄게, JSP 파일은 디스크에 노출되어 JSP 컴파일러에서 쉽게 액세스 할 수 있습니다.

결과적으로 배포 된 응용 프로그램의 파일은 응용 프로그램 구조의 두 계층을 확장합니다. EAR 파일 자체가 확장되고 EAR 내의 WAR 파일이 확장됩니다. JAR 유형 파일 (EJB JAR, 응용 프로그램 라이브러리 JAR, 응용 프로그램 클라이언트 JAR W 응용 프로그램 라이브러리 폴더가 아닌 EAR 내에 패키지 된 단순 유틸리티 JAR)은 확장되지 않습니다.

응용 프로그램의 중첩 된 내용을 다음과 같이 처리하는 중첩 된 보관 파일 (JAR 파일의 JAR 파일 또는 다소 차이가있는 ZIP 파일의 ZIP 파일)에 액세스하기위한보다 정교한 API를 빌드 할 수 있습니다. 파일 시스템의 확장. 이런 종류의 전략에는 두 가지 문제점이 있습니다. 중첩 된 아카이브는 필요할 때 임시 위치로 확장해야하며 중첩 된 아카이브는 중첩 아카이브에 압축되지 않은 형식으로 저장해야합니다. 이 두 단계는 ZIP 파일 형식이 아카이브가 중첩 된 아카이브에서 압축을 사용할 수있는 다른 아카이브 내에 저장된 아카이브의 검색을 지원하지 않기 때문에 필요합니다. 두 가지 수준의 압축이 수행되기 때문에 중첩 된 아카이브에서 레벨 압축을 제거하지 않고 중첩 된 아카이브에서 찾기가 가능합니다.

중첩 된 아카이브를 저장할 때 압축을 방지하기 위해 툴링을 설정할 수 있지만 일반적으로 수행되지는 않습니다. 그리고 아카이브는 일반적으로 기본 ZIP 저장 알고리즘이 중첩 된 아카이브를 저장할 때 자동으로 압축을 사용하기에 충분한 규칙 성을 가지고 있습니다. 가장 일반적인 경우는 중첩 된 아카이브가 2 단계 압축을 갖는 배포 용으로 제공되는 경우입니다.

토마스 Bitonti, IBM 응용 프로그램 서버 개발

0

다음은 자신을 제시하지 : 예를 들어

Rename the target application to the target folder name. 
Set the target folder name to the parent of the target folder. 

: 아직도있다,하지만, 가까이를 얻을 것이다

Original target folder: /appsDir/appContent 
Original application name: testapp.ear 

Modified target folder: /appsDir 
Modified application name: appContent.ear 

응용 프로그램 아카이브에서 파일 확장명 문제.

토마스 비트 톤