2011-12-21 2 views
9

우리는 가난한 관리자들에게 간단한 지루한 CRUD 스타일의 GUI에서부터 인터넷 사용자를위한 고급 AJAX 강화 된 GUI에 이르기까지 다양한 고객을 위해 여러 웹 애플리케이션을 개발했습니다. 이 모든 것들은 JBoss Seam 2와 결합 된 JSF 1.2를 기반으로 Facelets과 RichFaces를 프리젠 테이션 레이어로 사용했습니다.엔터프라이즈 웹 애플리케이션의 JavaFX - 기존 웹 페이지 대신 사용할 수있는 좋은 방법?

우리는 아직 JSF 1.2 로의 전환을 관리하지는 못했지만 (JSF 1.2의 한계에 대해 알고 있습니다.)이 설정을 기술 스택으로 정의함으로써 우리는 몇 가지 경험을 얻었습니다. 고객을 위해 웹 응용 프로그램을 안정적으로 개발할 수있는 편안한 기술을 제공합니다.

그래서 왜 도대체 내가 그걸 말할까요? "웹 2.0"에 대해 들어 본 고객은 풍부한 클라이언트 기능을 원하면서 모든 응용 프로그램의 브라우저로만 브라우저를 받아들이는 경향이 점점 더 많이 경험하고 있기 때문에. 우리가 사용하는 기술로 그렇게 할 수 있다는 것을 알고 있지만, 클라이언트 측에서 다른 것을 사용하여 이러한 요구를 지원하는 것이 좋습니다. 그리고 우리는 대부분 자바 프로그래머이기 때문에 우리는 Adobe Flex를 우리에게 괴롭히는이 사람을 멀리하고 있습니다. 우리는 JavaFX가 새 버전에서 좋은 점이 될 수 있다고 생각합니다.

나는 찾을 수있는 JavaFX 리소스의 깊은 곳에서 나의 손을 몹시 파고 들었다.하지만 내 마음에 한 가지 자주 들었던 점은 JavaFX가 훌륭한 그래픽 효과를 낼 수있는 기술이라는 점이다 색칠 된 거품이 튀는 것은 시원해 보일 수 있지만 비즈니스 응용 프로그램에서는 기본적으로 쓸모가 없습니다.

긴 이야기를 짧게하기 위해 우리는 백엔드에서 Java EE 6을 사용하면서 클라이언트에서 풍부하고 멋진 기능을보고 싶습니다. JavaFX는 비즈니스 웹 응용 프로그램을 개발할 때 고전적인 웹 페이지 또는 앞으로의 최신 HTML 5 웹 페이지에 대한 좋은 대안이며 어디에서 예제를 찾을 수 있습니까?

시간을 내 주셔서 감사 드리며 희망적으로 발생하는 답변을 보내 주셔서 감사합니다.

+0

나는 그것을 "고전 스윙 또는 대체 수단의 더 생각 : 그래서 당신에게 백 엔드에 원격 GUI로 작동하는 자바 FX 애플리케이션의 또 다른 예를 제공하기 위해, 내 튜토리얼을 살펴 보시기 바랍니다. NET 양식 응용 프로그램 ". – Thilo

+0

물론 대안이 될 수 있습니다 (오늘날에도 그렇습니다). SIMPLE 웹 사용 사례의 경우 최적의 대안이 아닙니다. 특히 배포가 매우 복잡한 경우 (힌트 : 일반적으로 내부 통제로 인해 "엔터프라이즈"로 배포가 비교적 쉽습니다). 그러나 복잡한 사용 사례 또는 고도로 표준화 된 환경에서는 확실히 사용할 수 있습니다. Flex는 멋졌고 (Java devs에 대해 배우기 쉽다.) Apple이 플래시를 망칠 때까지는 최고 였고 (쉽게) 최고 였으므로 이제는 FX를 바라 보는 것이 JDK에 내장 된 좋은 호출이었습니다. – User

답변

9

그것은 브라우저에서 자바 FX UI와 엔터프라이즈 응용 프로그램의 예 http://www.oracle.com/technetwork/java/javafx/downloads/index.html

에 번들. 엔터프라이즈 클라이언트 용 JavaFX에서 좋은 예가 될 것입니다.

MySQL, EE 및이 샘플을 설치하는 데 약간의 시간을 투자해야하지만, DB에서 클라이언트 UI까지 전체 스택을 처리하는 방법은 알 수 있습니다.첫 번째 화면의

작은 스크린 샷 : 당신이 편안하고 웹 서비스를 통해 백 엔드에 얘기를 자바 ​​FX의 클라이언트가 될 것입니다 찾을 수 있습니다 자바 FX의 "기업 측"의

DataApp Sample

+0

힌트를 주셔서 감사합니다 - 이미 다운로드 받았지만 DataApp는 src 폴더에만 있기 때문에 찾지 못했습니다. –

+0

좋은 시작이라고 생각합니다. 따라서 JSF와 관련하여 익숙해 진 것처럼 데이터를 교환하고 액션을 호출하는 데 더 엄격한 프레임 워크 지원 방법을 사용할 수 있다면이 사실을 받아 들일 수 있습니다. REST 웹 서비스. –

10

웹 응용 프로그램이 만족할 수없는 몇 가지 요구 사항이 없다면 HTML 5로 갈 것입니다.

JavaFX를 사용하여 훌륭한 응용 프로그램을 만들 수는 있지만 표준 Java 도구를 제외하고는 도구가 거의 없습니다. 그다지 널리 사용되지 않기 때문에, 지원을 찾거나 잘하는 사람을 고용하는 데 어려움을 겪을 수 있습니다. .NET의 Silverlight와 동일한 방식으로 쓰레기통에 갈 위험이 있습니다 (오라클은 감상적이지 않습니다). Flex는 Adobe just donated Flex to Apache with the explanation that HTML 5 is the "best technology for enterprise application development"입니다.

HTML 5와 비교하십시오. 더 넓게 사용됩니다 (즉, 지원을 찾고보다 쉽게 ​​채용 할 수 있음). 그러나 더 많은 지원과 향상된 툴링 및 새로운 기능을 지속적으로 얻게됩니다. 나는 그것이 미래의 더 확실한 증거라고 생각한다. 당신은 자바 FX 샘플에서 DataApp 샘플에서 살펴 봐야 할 수 있습니다

+1

그래, 나는 또한 당신이 이야기하고있는 것과 동일한 이유로 HTML 5를 사용하는 것에 대해서 생각했다. HTML 5는 아직 마크 업 언어가 아니고 프로그래밍 언어가 아니기 때문에 클라이언트 코드 개발을 위해 실제로 사용하고 있습니까? - 위에 프레임 워크가 많은 JavaScript가 있습니까? –

+0

예, Javascript 및 jQuery는 클라이언트 측 웹 프로그래밍의 표준 유형입니다. JS를 비롯한 대부분의 Java 웹 프레임 워크는 JS를 작성하고 싶지 않은 경우 많은 도움이되는 Javascript를 생성 할 수 있습니다. – gustafc

+0

질문에 대한 답변이 아니며, 이는 판매용입니다. 당신은 웹 뻔뻔한 있습니다. 다른 기술을 "죽이려"하지 말고 반 기능적으로 조각난 샌드 박스에 머물러보십시오. – User

4

대부분의 예.

그러나 Java Web Start는 멋진 기술입니다. 이를 통해 웹 사이트를 통해 실행되는 응용 프로그램 클라이언트를 자동으로 최신 버전으로 업데이트하고 서버에서 자동으로 다운로드되는 모든 새로운 종속성을 갖게됩니다. 종속성 삽입을 수행하고 클라이언트 측 로컬 프록시를 서버 측 자원에 주입 할 수도 있습니다. Enterprise JavaBeans, JMS 관리 객체 등이 있습니다.

이것은 클라이언트가 HTTP 유선 웹 서비스를 사용하지 않고 수많은 방법으로 서버와 대화 할 수있게 해주는 매우 유용한 기술입니다. 그러나 JavaFX는 그 패턴을 제동합니다. JavaFX 응용 프로그램 클라이언트를 EAR 패키지에 임베드하고 종속성 주입을 사용하는 직접적인 방법은 없습니다. 그러나 나는 매우 직관적이고 재현하기 쉬운 솔루션을 발견했습니다.

http://blog.martinandersson.com/the-enterprise-side-of-javafx-the-missing-part/

+0

아주 좋은 기사, 공유 주셔서 감사합니다. –

+0

나는이 블로그를 찾았지만, 매우 도움이된다.하지만 wildfly 서버로 테스트 할 수있는 방법을 찾을 수 없다. 이 하나가 누락 되었기 때문입니다. 설정 : <글래스 피쉬 - 응용 프로그램 클라이언트> <자바 웹 스타트 액세스> META-INF/custom.jnlp kamel2005

+0

wildfly에는 glassfish-application-client.xml 파일이 없습니다. – kamel2005

관련 문제