Ravi Palejiya Ruofan Xu 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 Business Layer Intermediary layer Basic layer Amazon Web Services eBay Web Services Yahoo! Web Services Intermediary layer Search Enterprise Layer SOAShopper Website Business Layer Keyword Search Process Set Search parameters 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
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API eBay Web Service Plain Old XML
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API eBay Web Service Plain Old XML converted in to java objects by using JAX-WS compiler Manually
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API eBay Web Service Plain Old XML Standard XML Schema is used to build request massage and response
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API 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 .
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API eBay Web Service Plain Old XML SOAShopper API provides a common wrapper around the shopping service object models. It’s methods Invokes Integration layer
Service Implementation SoaShopper std. XML schema Technology Architecture of SOAShopper JAX WS Internet Service Implementation SEI Provider<Source> Java Objects SoaShopper std. XML schema REST / Ajax based Consumer SOAP Message WSDL/SOAP-Based Consumer Amazon Web Service Yahoo! Web Service SOAP Java XML/HTTP Integration Layer Amazon API SOAShopper API eBay API Yahoo! API 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.
Integration Layer Bridge eBay Model Amazon Model Yahoo! Model Shopper +offerSearch() ShopperImp -imp ComputerShopper CellphoneShopper eBayShopperImp AmazonShopperImp YahooShopperImp eBayAPIInterface AWSECommercService YahooRESTIntrface eBay Model Amazon Model Yahoo! Model -port
e-Bay (SOAP) services implementation SOAP Response Parameters (JAXB Generated Class Instance) Return Value getEBayAPI(…) Proxy Instance Service Endpoint Interface Handler Chain SOAPHandler <SOAPMessageContext> Invocation Handler WSDL to Java Mapping Tool javax.xml.ws.Service (factory class) Buildtime SOAP Request eBay Web Service WSDL Endpoint
Yahoo! (REST) services implementation Yahoo! Shopping Web Services: Product Search REST Documentation (Human Readable) Endpoint Convert REST Documentation to an Interface (Manual Process) XML/HTTP Request XML/HTTP Response REST Interface Implementation RESTful Invocation Methods JAX-WS Dispatch JAXbContext 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.) Change the C:/mark.homepc into the path of commen_built.xml in main pom.xml
Errors & Solution(Contd.) 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)
Demo
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/matj az_bpel1.html Adam Sherman http://www.sherman.ca/archives/2004/07/04/mave n-vs-ant www.w3school.com Google group communication by Cristiano.
Thank you