21
Which technology will be used to implement this interface? SI4 Project by Pierre Arnoux, Jérémy Benabu, Steve Colombié and Xavier Gentile Supervised by Mireille Blay-Fornarino and Sébastien Mosser Friday, 12 th June, 2009 1

Which technology will be used to implement this interface? SI4 Project by Pierre Arnoux, Jérémy Benabu, Steve Colombié and Xavier Gentile Supervised by

Embed Size (px)

Citation preview

Which technology will be used to implement this interface?

SI4 Project byPierre Arnoux, Jérémy Benabu, Steve Colombié and Xavier Gentile

Supervised by Mireille Blay-Fornarino and Sébastien Mosser

Friday, 12th June, 2009

1

StructureStructureProject contextPHP user interfaceJSF user interfaceComparisonConclusion

2Project context › PHP user interface › JSF user interface › Comparison › Conclusion

Project context Project context › Existent› Existent

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 3

PhotosEvents

Menus

INTERFACE (to do)

Bad way!Data base

Good way!

Project context Project context › Objectives› ObjectivesWhich technology is the best?

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 4

STRUTS ?.NET ?PHP ?JSP/JSF ?…

PHP ?JSF ?

Project context Project context › Objectives› ObjectivesCriteria to compare

Diffusion & reliabilityInstallation costUse costInteroperability

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 5

Project context Project context › Planning› Planning

planning

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 6

Use of existing Web ServicesUse of existing Web Services

Jérémy Benabu & Steve Colombié

Pierre Arnoux & Xavier Gentile

Jérémy Benabu & Steve Colombié

Pierre Arnoux & Xavier Gentile

PHP user interfacePHP user interfaceNUSOAP library

Easy installationWell documented Lot of examples

ApachePHP is executed by the serverEasy PHP

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 7

Index.phpIndex.phpIndex.phpIndex.phpMenusMenusMenusMenus

DeleteDeleteDeleteDelete

ModifyModifyModifyModify

CreateCreateCreateCreate

ListingListingListingListing

CoursesCoursesCoursesCourses

CreateCreateCreateCreate DeleteDeleteDeleteDelete

ModifyModifyModifyModifyListingListingListingListing

ProxyProxy ProxyProxy

Courses_proxiesCourses_proxiesCourses_proxiesCourses_proxies Menus_proxiesMenus_proxiesMenus_proxiesMenus_proxies

ProxyProxyProxyProxy

NuSOAPNuSOAP NuSOAPNuSOAP

nusoapnusoapnusoapnusoap

ClassClass.ClassClass.

nusoapmimenusoapmimenusoapmimenusoapmime

PHP user interface PHP user interface › Architecture› Architecture

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 8

PHP user interface PHP user interface › Development› DevelopmentClass Proxy (client):

Call web service with WSDLCall methods

Classes Courses / MenusUse their own proxy ObjectOne file for each functionnality

Easy to call a method (by generic function) Complex to receive parameters

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 9

ProxyServerWSDL

Request

SOAPClient

Answer

PHP user interface PHP user interface › Demonstration› Demonstration

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 10

JSF user interface JSF user interface › Architecture› Architecture

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 11

JSF Pages

Managed Bean

WebServices

Java-based Web Application framework JSF uses a component-based approach

JSF user interface JSF user interface › Development› DevelopmentManaged Bean :

Getting WSDL’s Webservice Creating methods

Calling the WebService methods intuitively Called by JSF pages easily

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 12

Managed Bean

Controller

Web Service

WSDL

JSF user interface JSF user interface › Demonstration› Demonstration

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 13

ComparisonComparison

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 14

JAVA API

VersusJSF PHP

ComparisonComparison

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 15

ComparisonComparison

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 16

ComparisonComparison

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 17

ComparisonComparison

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 18

Comparison Comparison › Results› ResultsJSF is reliable (it’s a standard made by Sun)

JSF is lighter than PHP to build interfaces.

JSF is easier and lighter to use than PHP for managing types (int, String…) .

JSF isn’t trivial to use, learning is needed.

We have chosen JSF

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 19

ConclusionConclusionJSF will be used to implement the

user interfaces of the project jSeduite.

In our report we had made a tutorial about JSF and how to use it.

It was interesting to compare two great technologies.

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 20

Thank you for you attentionThank you for you attentionAny question ?

Project context › PHP user interface › JSF user interface › Comparison › Conclusion 21