Post on 20-Dec-2015
Consumer often spends lot of time on searching for best deals of products on different websites.
SOAShopper provides a solution for it. Thus they don’t need to waste their time in exploring websites.
SOAShopper will give one comprehensive list at a single place.
SOAShopper project will meat the following objectives
Product Keywords Search on three different shopping services.
Select search criteria as Category, Currency, Price-Range (High price, Low price)
Product summery with quick link
SOAShopper SOA
Basic layer
Amazon Web Services
Amazon Web Services eBay Web
Services
eBay Web Services Yahoo! Web
Services
Yahoo! Web Services
Intermediary layer
Search Search
Enterprise Layer
SOAShopper WebsiteSOAShopper Website
Business Layer
Keyword Search ProcessKeyword Search Process
Set Search parameters
Set Search parameters
Business logicBusiness logic
<<Front end>>Customer
<<Web Appl>>SOAShoppe
<<Service>>eBay Web
<<Service>>Amazon Web
<<Service>>Yahoo! Web
Search Request
Invoke OfferSearch()
Search Response
confirm Search
Invoke OfferSearch()
Invoke OfferSearch()
Offerlist()
Offerlist()
Offerlist()
arrange
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
converted in to java objects by using
JAX-WS compiler Manually
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
Standard XML Schema is used to build request massage and response
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
Implementation Layer – Request massage are serialized into java objects.
It provides functionality by binding the service on top of base lavel SOAShopper API.
i.e. It interprets search request and invokes proper API method .
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
SOAShopper API provides a common wrapper around the shopping service object models.
It’s methods Invokes Integration layer
Technology Architecture of SOAShopper
JAX WS
InternetInternet
Service ImplementationService Implementation
SEISEI Provider<Source>Provider<Source>
Java ObjectsJava Objects Java ObjectsJava ObjectsSoaShopper std. XML schema
SoaShopper std. XML schema
REST / Ajax based Consumer
REST / Ajax based Consumer
SOAP Message
WSDL/SOAP-Based Consumer
WSDL/SOAP-Based Consumer
Amazon Web ServiceAmazon Web
Service
Yahoo! Web ServiceYahoo! Web
Service
SOAP SOAP
JavaJava Java
XML/HTTP
Integration LayerIntegration Layer
Amazon API
SOAShopper APISOAShopper API
eBay API Yahoo! APIYahoo! API
eBay Web ServiceeBay Web
Service
Plain Old XML
Integration layer will implement the interfaces defined by the SOAShopper API to Shopping services’ APIs
i.e. It translates/maps the operations into the syntax and semantics of source
systems.
BridgeShopper
+offerSearch()
ShopperImp
+offerSearch()
-imp
ComputerShopper CellphoneShopper
eBayShopperImp AmazonShopperImp YahooShopperImp
eBayAPIInterface AWSECommercService YahooRESTIntrface
eBay Model
Amazon Model
Yahoo! Model
-port -port -port
Integration Layer
SOAP Response
SOAP Response
Parameters(JAXB
Generated Class Instance)
Parameters(JAXB
Generated Class Instance)
Return Value(JAXB
Generated Class Instance)
Return Value(JAXB
Generated Class Instance)
getEBayAPI(…)
Proxy Instance
Service Endpoint Interface
Service Endpoint Interface
Handler ChainHandler Chain
SOAPHandler <SOAPMessageContext>SOAPHandler <SOAPMessageContext>
Invocation Handler
Invocation Handler
WSDL to Java Mapping ToolWSDL to Java Mapping Tool
Service Endpoint Interface
Service Endpoint Interface
javax.xml.ws.Service (factory class)
javax.xml.ws.Service (factory class)
Buildtime
SOAP RequestSOAP
Request
eBay Web ServiceeBay Web ServiceWSDL Endpoint
e-Bay (SOAP) services implementation
Convert REST Documentation to an Interface
(Manual Process)
Convert REST Documentation to an Interface
(Manual Process)
Parameters(Query String)
Parameters(Query String)
Return Value(JAXB-Generated
Class Instance)
Return Value(JAXB-Generated
Class Instance)
Yahoo! Shopping Web Services: Product SearchYahoo! Shopping Web Services: Product Search
REST Documentation (Human Readable)
Endpoint
REST Interface Implementation
RESTful Invocation Methods
RESTful Invocation Methods
JAX-WS DispatchJAX-WS
Dispatch
JAXbContextJAXbContext
XML/HTTP Request
XML/HTTP Request
XML/HTTP Response
XML/HTTP Response
Yahoo! (REST) services implementation
J2SE 5 (Java 2 Platform, Standard Edition 5) Java EE 5 (Java Platform, Enterprise Edition 5) Glassfish application server Apache Ant 1.7.0 Apache Maven 2.0 Netbeans 5.5 enterprise Edition – for BPEL
}Build tools
This error is to be resolved. We have asked author for the help in special google group SOA Using Java Web Services
Errors due to backward slash(/) instead of forward slash(\) for setting path
Space in path name (Ex. C:\Documents and settings)
References SOA Using Java Web Services – By Mark D Hansen,
April 2007. Ant: The definitive Guide, Second Edition
By Steve Holzner, April 2005 A Hands-on Introduction to BPEL by Matjaz B Juric,
http://www.oracle.com/technology/pub/articles/matjaz_bpel1.html
Adam Sherman http://www.sherman.ca/archives/2004/07/04/maven-vs-ant
www.w3school.com Google group communication by Cristiano.