문제

Play 문서 에 따라 Play 앱을 포장 할 수 있습니다. war 파일에 넣고 Websphere에 배포하지만 문제가 있습니다.

제대로 작동하는 play war 옵션과 함께 --zip 명령을 사용하고 있습니다. 결과 war 파일은 올바른 레이아웃을 갖습니다 (최상위 수준의 WEB-INF, 내 jar가 WEB-INF / lib로 이동 됨).

Websphere 서버에 war 파일을 배포 한 후 충돌하는 모든 라이브러리의 Play 버전을 사용하도록 앱의 클래스로드 순서를 마지막 부모로 변경합니다. 그런 다음 내 앱의 페이지, 모든 페이지를로드하려고하면 오류가 발생합니다.

동일한 방법으로 데모 앱과 비어있는 새 앱을 배포하려고 시도했지만 다시 한 번 Not found Get /라는 빈 페이지가 나타납니다. 로그에있는 유일한 것은 WARN ~ 404 -> GET / (GET /)입니다.

Play 1.2.3, 1.2.4, Websphere 7.0.0.0, 7.0.0.19에서 사용해 보았습니다. 기본 옵션이 작동해야하는 것처럼 보이지만 Websphere에서 다양한 배포 옵션을 전환 해 보았습니다.

Websphere에서 사용할 Play 앱을받은 사람이 있습니까? 그렇다면 어떻게?

도움이 되었습니까?

해결책

드디어 작동하게되었습니다. 다른 사람이 향후 WebSphere에 Play 앱을 배포하는 데 비슷한 문제가 발생할 경우를 대비하여 내 단계를 문서화하겠습니다.

1-첫 번째 문제는 404였습니다. Websphere는 처리 할 앱 (wtf?)에 루트 (/)에 대한 요청을 전달하지 않으므로 경로 파일에 유사한 경로를 정의하는 것이 수정되었습니다. 라코 디스

대신 (또는 위에) 라코 디스

2-다음 문제는 존재하지 않는 지속성 (JPA) 방법과 관련된 오류였습니다. Play는 JPA 2.0을 사용하는 반면 WebSphere 7은 자체 사용자 정의 버전의 OpenJPA 1.0을 사용합니다. JPA 2 및 OSGI 용 기능 팩 을 설치할 수 있습니다 ( OSGI 부분이 필요하지 않으므로 무시할 수 있습니다.) 기능 팩을 사용하려면 WebSphere 7.0.0.9 이상이 설치되어 있어야합니다. 이는 앱 서버와 번들 JDK 모두에 대해 일치하는 수정 팩을 의미합니다. I.E. JPA 기능 팩을 설치하기 전에 먼저 서버 및 JDK에 대한 수정 팩 21 (최신 버전)을 설치해야합니다. 기능 팩 설치가 끝나면 프로파일 도구를 실행할 것인지 묻습니다. 네 라고 말하다. 이 도구를 사용하면 프로필 (전쟁을 설치할 서버 노드)을 "증가"할 수 있습니다. 확장하세요!

3-WebSphere에서 작동하는 war 파일 빌드 : 라코 디스

그러면 앱 ID가 prod로 설정된 <outputFolder> (폭발 된 전쟁)라는 폴더와 <outputFolder>.war라는 .war 파일이 생성됩니다. 폭발 한 전쟁은 삭제할 수 있습니다.

리눅스에서이 명령을 실행하면 내 WEB-INF 폴더가 이름이 지정되지 않은 폴더에 계속 저장됩니다 (따라서 war 파일의 루트 수준에서 한 수준 아래). 즉, / WEB-INF / 대신 // WEB-INF /와 같은 구조를 생성합니다. 어쨌든, 지금은 제대로 다시 압축하여 수동으로 수정하고 있습니다. 누구든지이 문제를 피하는 방법을 알고 있습니까?

4-관리 콘솔의 모든 기본 설정을 사용하여 WebSphere에 war 파일을 설치하거나 수행중인 작업을 알고있는 경우 조정합니다.

5-이 단계가 필요한지 확실하지 않지만 (특정 앱에 대해 아무것도 변경하지 않음) 온라인에서 읽은 모든 도움말에서 WebSphere에서 Play 앱을 실행하는 방법에 대해 읽어 보았습니다. Meh, 그것은 아프지 않습니다. 설치된 앱을 클릭하십시오. "클래스 로딩 및 업데이트 감지"링크를 클릭합니다. 그런 다음 "로컬 클래스 로더로로드 된 클래스 먼저 (상위 마지막)"옵션을 선택하십시오. 확인. 저장합니다.

6-주소로 브라우저 페이지를 열고 (Websphere를 로컬로 실행하는 경우 localhost : 9080) 테스트합니다. 이 시점에서 작동합니다! 바라건대. 행운을 빕니다.

다른 팁

서블릿 컨테이너에 배포하는 공통적 인 문제는 응용 프로그램을 루트 WAR 파일로 배포하지 않는 한 종종 문제가 발생하지 않는 것입니다.응용 프로그램의 경로가 /로 사용할 수 있도록 WAR 파일이 배포 된 것으로 확신합니다.

이 스레드는 에 발생하는 일반적인 문제입니다.

사용 방법 "war.context"재생 프레임 워크의 구성 파일에서

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top