2012-05-31 4 views
0

우리 회사는 일부 기능이 중복되는 여러 웹 응용 프로그램을 만듭니다. 나는 공통 기능을 별도의 프로젝트로 개발하고 싶다. 웹 페이지와 관리 빈으로 구성 될 것이기 때문에 프로젝트가 자체 .war 파일에 있어야한다고 가정한다. 그런 다음 아마 .ear 파일 내부에 두 개 이상의 웹 응용 프로그램을 배포 할 것입니다. 온라인 예비 연구를 통해 웹 애플리케이션이 얼마나 잘 작동하는지 확신 할 수 없었습니다. 관리 빈들간에 데이터를 공유하고 한 웹 애플리케이션 내부 페이지를 다른 곳으로 안내 할 수 있습니까? 내 애플리케이션을 유지 보수 할 수있는 적절한 접근 방식인가, 아니면 프로젝트를 해체 할 수있는 더 좋은 방법이 있습니까?하나의 웹 응용 프로그램에서 여러 .war 사용

+0

나는 모든 프리젠 테이션이 단일 전쟁에서 발생하기를 원하지만 프레임을 사용하여 주 전쟁 파일에서 다른 전쟁의 컨텐츠를 렌더링 할 수 있다고 생각합니다. 트릭은 지속 가능한 비즈니스 객체를 사용하여 일종의 서비스 버스를 통해 두 애플리케이션간에 데이터를 전달하는 것입니다. –

+0

일반적인 기능 웹을 향하고 있습니까? 아니면 jar로 개발하여 종속성으로 사용할 수 있습니까? 그런 다음 서로 다른 웹 응용 프로그램간에 공유됩니다. – aglassman

+0

@aglassman 공통된 기능으로는 웹 페이싱, 응용 프로그램에서 사용자 데이터 캡처 및 표시가 있습니다. 애플리케이션 전용 컨텐츠 내부에 공통 컨텐츠를 포함시키기 위해 템플릿으로 만드는 facelets을 사용할 것이라고 생각했습니다. – SomeFatMan

답변

1

과용이지만,
은 앱의 기능을 DB, 비즈니스 로직 및 프리젠 테이션/웹/티어로 나눌 수 있습니다. "중첩"기능은 비즈니스 및 DB 계층으로 이동할 수 있습니다.
웹 앞면은 corba, REST/LESS, 비누 또는 대안을 통해 비즈니스 계층과 이야기해야합니다. 계층 2/비즈니스 /에 어떤 커넥터가 있는지에 따라 다릅니다.

this diagram
를 참조하거나 추가 정보를 원하시면 3 계층 아키텍처를 구글


우리 회사, 그들은 여러 응용 프로그램을 배포 결국 몇 년 전에 같은 문제를 겪고/일부 비즈니스 로직을 복제했다 피할 수/

이제 우리는 웹 서비스를 통해 호출 할 수 있고 부서 내의 다른 응용 프로그램/스크립트에 액세스 할 수있는 공통의 개방형 비즈니스 계층 서비스 계층을 만들어서 다시 만들어 냈습니다.

+0

이러한 접근 방식과 관련된 유일한 문제는 응용 프로그램간에 재사용하려는 웹 계층 코드가 있다는 것입니다. 일반적인 ManagedBeans와 EJB가있는 일반적인 데이터 입력/프리젠 테이션 화면이 있습니다. – SomeFatMan

+0

Vaadin을 사용하여 일반적인 '웹 계층'코드를 구현할 수 있습니다. 이렇게하면 서버/비즈니스 계층에서 렌더링되고 클라이언트로 다시 전송됩니다. 또는 공통 기능을 새 webapp로 옮기십시오. 나중에 필요할 경우 webservices 등을 통해 노출 할 수 있습니다. –

0

모든 WAR 파일을 EAR 파일로 감싸십시오. EAR에 라이브러리 파일을 넣어 모든 WAR 파일을 공유 할 수 있습니다.

관련 문제