Top Banner
Semesterarbeit SOA CRYSTL-PIM P roduct I nformation S ystem Sandrine Ferrari Benjamin Bäni
9

Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

Apr 06, 2015

Download

Documents

Loreley Monk
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

Semesterarbeit SOA

CRYSTL-PIMProduct Information System

Sandrine FerrariBenjamin Bäni

Page 2: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

CRYSTL-PIM (Product Information System)Ablauf

Ausgangslage??Ziele

LösungsansatzImplementierung

KomponentenDemonstration

Page 3: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Ausgangslage ???

Ausgangslage

• Vertieb von Bier und Kleinartikel• Heutige Informatik in schlechtem

Zustand• Kunden-Informations-System für

Kundenberater fehlt

Demonstration

Page 4: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Ziele

Ausgangslage

• Lösung für das Lesen von Produktinformationen via Webservice

• Eingabemaske• Request und Response über HTTP

(SOAP und XML)• Implementierung• Ausgabemaske• Manuelle und automatisierte Tests

Demonstration

Page 5: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Lösungsansatz (Grundidee)

Ausgangslage

• Webservice mit SOAP• Service-Methoden zum Abfragen von

einzelnen oder allen Produkten• Client mit JSP

Demonstration

GrundideeAufbau

Page 6: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Lösungsansatz (Aufbau)

Ausgangslage

Demonstration

GrundideeAufbau

Lösung mit SOAP via HTTP

SOAP Server-Client Architektur

Page 7: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Implementierung

Ausgangslage

Demonstration

HSQL

PIM-Server

DAO

Service

Sche

ma

PIM-Client

Service (Skeleton)

Servlet/JSP

Browser

http://localhost:8080/PimServer/ProductService

SOAPMessage

Page 8: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Product Web Service with JAX-WS

Ausgangslage

Demonstration

@WebServicepublic interface ProductService {

@WebMethod(action="getProductById")ProductTO getProductById(@WebParam(name="id") Long id);

}

@WebService(endpointInterface = "ch.crystl.pim.service.ProductService")public class ProductServiceImpl implements ProductService {

@Overridepublic ProductTO getProductById(Long id) { .. }

}

@XmlAccessorType(XmlAccessType.FIELD)@XmlType(name = "productTO", propOrder = { "results", "message", "returncode"})public class ProductTO { @XmlElement(nillable = true) protected List<Product> results; protected String message; protected String returncode;}

Page 9: Sandrine Ferrari Benjamin Bäni. CRYSTL-PIM (Product Information System) Ablauf Ausgangslage?? Ziele Lösungsansatz Implementierung Komponenten Demonstration.

SoapUI

TestSuiteTestSuite

ZieleLösungsansatz

ImplementierungKomponenten

CRYSTL-PIM (Product Information System)Unit-Testing mit SoapUI

Ausgangslage

Demonstration

ServerClient

DatenbankWSDL

PIM-Server Junit-Tests

TestProductDAO

Endpoint: http://localhost:8088/mockProductServiceImplPortBinding

MockService

TestSuite

TestMockService

TestProductService

start/stop

run

HSQL

PimDB