100 likes | 214 Views
Seminararbeit SOA CRYSTL-PIM P roduct I nformation M anagement. Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM ( P roduct I nformation M anagement) Kontext. Präsentation 6. April 2013 Technische Lösung für Produktinformationen via Webservice lesen. Kontext. Ziele. Lösungsansatz.
E N D
Seminararbeit SOACRYSTL-PIMProductInformation Management Sandrine Ferrari Benjamin Bäni
CRYSTL-PIM (Product Information Management)Kontext • Präsentation 6. April 2013 • Technische Lösung für Produktinformationen via Webservice lesen Kontext Ziele Lösungsansatz Implementierung Testing Demonstration
CRYSTL-PIM (Product Information Management)Ziele Technische Lösung • Ein- und Ausgabemaske • Request und Response über HTTP (SOAP und XML) • Implementierung der Services • Manuelle und automatisierte Tests Kontext Ziele Lösungsansatz Implementierung Testing Demonstration
CRYSTL-PIM (Product Information Management)Lösungsansatz (Grundidee) • Webservice mit SOAP • Service-Methoden zum Abfragen von einzelnen oder allen Produkten • Client mit Servlet/JSP Kontext Ziele Lösungsansatz Grundidee Aufbau Implementierung Testing Demonstration
CRYSTL-PIM (Product Information Management)Lösungsansatz (Aufbau) Kontext Ziele Lösungsansatz Grundidee Aufbau Implementierung SOAP Server-Client Architektur Testing Demonstration Lösung mit SOAP via HTTP
CRYSTL-PIM (Product Information Management)Implementierung http://localhost:8080/PimServer/ProductService Browser Kontext Ziele PIM-Client PIM-Server Lösungsansatz SOAP Message Implementierung Servlet/JSP Service Schema Architektur Service (Skeleton) DAO Service Testing Demonstration HSQL
CRYSTL-PIM (ProductInformation Management)Product Web Service with JAX-WS • @WebService • publicinterfaceProductService { • @WebMethod(action="getProductById") • ProductTOgetProductById(@WebParam(name="id") Long id); • } • @WebService(endpointInterface = "ch.crystl.pim.service.ProductService") • publicclassProductServiceImplimplementsProductService { • @Override • publicProductTOgetProductById(Long id) { .. } • } • @XmlAccessorType(XmlAccessType.FIELD) • @XmlType(name = "productTO", propOrder = { • "results", • "message", • "returncode" • }) • publicclassProductTO{ • @XmlElement(nillable = true) • protected List<Product> results; • protected String message; • protected String returncode; • } Ausgangslage Ziele Lösungsansatz Implementierung Architektur Service Testing Demonstration
CRYSTL-PIM (Product Information Management)Unit-Testing mit SoapUI Endpoint: http://localhost:8088/mockProductServiceImplPortBinding HSQL Kontext PIM-Server Junit-Tests Ziele PimDB TestProductDAO Lösungsansatz Implementierung SoapUI Testing start/stop TestMockService MockService Demonstration run TestProductService TestSuite TestSuite TestSuite
CRYSTL-PIM (Product Information Management)Demonstration Kontext Ziele Lösungsansatz Implementierung Testing Demonstration
CRYSTL-PIM (Product Information Management)Fragen ? Kontext Ziele Lösungsansatz Implementierung Testing Demonstration Sandrine Ferrari Benjamin Bäni