240 likes | 259 Views
Shopping is FUN!!!!!!!. Ravi Palejiya Ruofan Xu. Goal. 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.
E N D
Shopping is FUN!!!!!!! Ravi Palejiya Ruofan Xu
Goal • 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.
Objective 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 • Enterprise Layer SOAShopper Website • Business Layer Keyword Search Process Set Search parameters • Intermediary layer Search • Basic layer Amazon Web Services eBay Web Services Yahoo! Web Services Business logic
Sequence Diagram <<Front end>> Customer <<Web Appl>> SOAShoppe <<Service>> eBay Web <<Service>> Amazon Web <<Service>> Yahoo! Web Search Request confirm Search Invoke OfferSearch() Invoke OfferSearch() Invoke OfferSearch() Offerlist() Offerlist() Offerlist() Search Response arrange
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay Web Service Plain Old XML JAX WS
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay Web Service Plain Old XML converted in to java objects by using JAX-WS compiler Manually JAX WS
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay Web Service Plain Old XML Standard XML Schema is used to build request massage and response JAX WS
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay 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 . JAX WS
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay Web Service Plain Old XML SOAShopper API provides a common wrapper around the shopping service object models. It’s methods Invokes Integration layer JAX WS
Technology Architecture of SOAShopper WSDL/SOAP-Based Consumer REST / Ajax based Consumer SOAP Message Internet Provider<Source> SEI SoaShopper std. XML schema Java Objects Java Objects Service Implementation SOAShopper API Integration Layer Java Java Java Yahoo! API eBay API Amazon API SOAP SOAP XML/HTTP Amazon Web Service Yahoo! Web Service eBay 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. JAX WS
Bridge Shopper -imp +offerSearch() ComputerShopper CellphoneShopper eBayShopperImp AmazonShopperImp YahooShopperImp eBay Model Amazon Model Yahoo! Model -port -port -port eBayAPIInterface YahooRESTIntrface Integration Layer ShopperImp +offerSearch() AWSECommercService
WSDL to Java Mapping Tool Buildtime eBay Web Service WSDL Service Endpoint Interface SOAP Request Endpoint javax.xml.ws.Service (factory class) SOAP Response getEBayAPI(…) Proxy Instance Parameters (JAXB Generated Class Instance) Service Endpoint Interface Handler Chain Invocation Handler SOAPHandler <SOAPMessageContext> Return Value (JAXB Generated Class Instance) e-Bay (SOAP) services implementation
Yahoo! (REST) services implementation Yahoo! Shopping Web Services: Product Search REST Documentation (Human Readable) Endpoint REST Interface Implementation RESTful Invocation Methods JAX-WS Dispatch JAXbContext Convert REST Documentation to an Interface (Manual Process) XML/HTTP Request XML/HTTP Response Parameters (Query String) Return Value (JAXB-Generated Class Instance)
Software configurations • 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
Errors & Solution In main folder Maven installation was successful
Errors & Solution(Contd.) Solution: Change the C:/mark.homepc into the path of commen_built.xml in main pom.xml
Errors & Solution(Contd.) Solution: Change the path of glassfish in the main pom.xml without /bin
Errors & Solution(Contd.) 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 EditionBy 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.