03 60 569 project
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

03-60-569 Project PowerPoint PPT Presentation


  • 103 Views
  • Uploaded on
  • Presentation posted in: General

03-60-569 Project. Global Book retailer Titas Mutsuddy Quazi Rahman. Outline. Introduction. Service integration. Screen shots of project. Difficulties faced. Conclusion. Introduction. Project Description:

Download Presentation

03-60-569 Project

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


03 60 569 project

03-60-569 Project

Global Book retailer

Titas Mutsuddy

Quazi Rahman


Outline

Outline

  • Introduction.

  • Service integration.

  • Screen shots of project.

  • Difficulties faced.

  • Conclusion.


Introduction

Introduction

Project Description:

Integration of Amazon web service, eBay web service to find out cheap books and convert price to other currencies.


Web services

Web services

  • Amazon Web Service.

  • eBay Web service.

  • Currency Converter (XMathods).


Tools used

Tools used

  • Axis 1.4 (switched from Axis2).

    • WSDL2Java

    • JAX-RPC

  • Tomcat 5.5

  • J2sdk1.5

    • Jsp

    • Servlet

    • Java Bean


Class diagram

Class Diagram


Screen shots

Screen Shots


Screen shots1

Screen Shots


Screen shots2

Screen Shots


Screen shots3

Screen Shots


Screen shots4

Screen Shots


Screen shots5

Screen Shots


Screen shots6

Screen Shots


Screen shots7

Screen Shots


Screen shots8

Screen shots


Screen shots9

Screen Shots


Screen shots10

Screen Shots


Difficulties faced

Difficulties faced

  • Installation of Axis(2.0/1.4).

    • Class path setup.

    • Set up jar files in to lib.

  • Amazon web service call.

    • Set up keys for service call.

    • Soap message call.


Difficulties faced1

Difficulties faced

eBay web service call:

Soap API .

eBay Java SDK (XML based RPC).

System development:

SandBox development environment.

Production development environment.


Difficulties faced2

Difficulties faced

  • Difficulties with eBay:-

    • eBay active auction is so volatile that most of the time auction ended before debugging of codes.

    • eBay API manual is not friendly for new developers.

    • eBay uses their own “ItemID” for each item in active auction.

    • I Failed Item Specific search in eBay. Succeeded on category search.

      • Parsed whole category response xml to pick up item by “Title”.

      • Most of the time Amazon and eBay book title are not same.

      • Tried to find out possible pattern to split the titles to extract the name.


Difficulties faced3

Difficulties faced

eBay web service:-

  • Authentication failure:

    <?xml version="1.0" encoding="UTF-8"?>

    <eBay><EBayTime>2007-03-10 15:46:37</EBayTime><Errors><Error><Code>16112</Code>

    <SeverityCode>1</SeverityCode>

    <Severity>SeriousError</Severity>

    <Line>0</Line><Column>0</Column>

    <ErrorClass>RequestError</ErrorClass>

    <ShortMessage><![CDATA[Invalid authentication method.]]></ShortMessage><LongMessage><![CDATA[The authentication method you are using is invalid. Please use the eBay Authentication & Authorization method.]]></LongMessage></Error></Errors></eBay>


Difficulties faced4

Difficulties faced

  • eBay web service

    “The velocity (rate of change) of eBay is notoriously fast. As anyone who has used eBay knows, things constantly change, and there is a fundamental release every 2 weeks. There are supporters and non-supporters of this, but it's something we all have to live with at this time, both eBay users and eBay employees…..”

    Best Regards,Amish PateleBay Developer Support


Difficulties faced5

Difficulties faced

GetItemRequest fails

<?xml version="1.0" encoding="utf-8"?>

<GetItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <DetailLevel>ItemReturnAttributes</DetailLevel> <RequesterCredentials>

<eBayAuthToken>MY TOKEN </eBayAuthToken> </RequesterCredentials>

<ItemID>517203014</ItemID>

</GetItemRequest>


Difficulties faced6

Difficulties faced

<?xml version="1.0" encoding="UTF-8"?>

<GetItemResponse xmlns="urn:ebay:apis:eBLBaseComponents">

<Timestamp>2007-03-12T1 7:17:47.171Z</Timestamp>

<Ack>Failure</Ack>

<Errors>

<ShortMessage>Item not found.</ShortMessage>

<LongMessage>Item &quot;517203014&quot; is invalid, not activated,or no longer in our database, or an Live Auction item.</LongMessage>

<ErrorCode>17</ErrorCode>

<SeverityCode>Error</SeverityCode>

<ErrorParameters ParamID="0">

<Value>517203014</Value>

</ErrorParameters>

<ErrorClassification>RequestError</ErrorClassification>

</Errors>

<Version>503</Version><Build>e503_core_Bundled_4329350_R1</Build>

</GetItemResponse>


Difficulties faced7

Difficulties faced

[email protected]: 938 Member Since: 10/20/05 Re: GetItemRequest fails Posted: Mar 14, 2007 4:40 PM  Reply

Hi titasmutsuddy,You need to specify an eBay ItemID but ISBN # in your GetItem API request. You can get the item number in either your item's View Item or the seller's My eBay Selling page.

Best Regards,Zhuowei YangeBay Developer Support


Difficulties faced8

Difficulties faced

<?xml version="1.0" encoding="UTF-8"?>

<GetItemResponse xmlns="urn:ebay:apis:eBLBaseComponents">

<Timestamp>2007-03-14T0 3:22:17.302Z</Timestamp>

<Ack>Failure</Ack>

<Errors>

<ShortMessage>Item not found.</ShortMessage>

<LongMessage>Item &quot;130094932808&quot; is invalid, not activated, or no longer in our database, or an Live Auction item.</LongMessage>

<ErrorCode>17</ErrorCode>

<SeverityCode>Error</SeverityCode>

<ErrorParameters ParamID="0">

<Value>130094932808</Value>

</ErrorParameters>

<ErrorClassification>RequestError</ErrorClassification>

</Errors>

<Version>503</Version>

<Build>e503_core_Bundled_4329350_R1</Build>

</GetItemResponse>


Difficulties faced9

Difficulties faced

GetSearchResultRequest:-

<?xml version='1.0' encoding='utf-8'?>\r\n"+

<GetSearchResultsRequest xmlns=\"urn:ebay:apis:eBLBaseComponents\">

<ExternalProductID> <Value>0876295340</Value>

<Type>ISBN</Type>

</ExternalProductID>

<Pagination>

<EntriesPerPage>2</EntriesPerPage>

<PageNumber>1</PageNumber>

</Pagination>

<RequesterCredentials>

<eBayAuthToken>token</eBayAuthToken>

</RequesterCredentials>

</GetSearchResultsRequest>


Difficulties faced10

Difficulties faced

GetSearchResultResponse:-

<?xml version="1.0" encoding="UTF-8"?>

<GetSearchResultsResponse xmlns="urn:ebay:apis:eBLBaseComponents">

<Timestamp>2007-03-14T19:13:08.706Z</Timestamp>

<Ack>Success</Ack>

<Version>503</Version>

<Build>e503_core_Bundled_4329350_R1</Build>

<ItemsPerPage>100</ItemsPerPage>

<PageNumber>1</PageNumber>

<HasMoreItems>false</HasMoreItems>

<PaginationResult>

<TotalNumberOfPages>1</TotalNumberOfPages>

<TotalNumberOfEntries>0</TotalNumberOfEntries>

</PaginationResult>

<CategoryArray/>

</GetSearchResultsResponse>


Difficulties faced11

Difficulties faced

Error:- Content not allowed in prolog

[Fatal Error] request.xml:1:41: Content is not allowed in prolog.

Error Sending Request: org.xml.sax.SAXParseException: Content is not allowed in

prolog.

org.xml.sax.SAXParseException: Content is not allowed in prolog.

at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)

at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)

at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:172)

at GetSearchResults.SendRequest(GetSearchResults.java:220)

at GetSearchResults.main(GetSearchResults.java:91)


Difficulties faced12

Difficulties faced


Difficulties faced13

Difficulties faced

titasmutsuddyPosts: 4 Member Since: 3/13/07 PKIX path building failed Posted: Mar 14, 2007 9:38 PM  ReplyHi,I am getting a strange error. I didn't get it 4-hours ago. It is like the following:-SendRequest IO Error:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1518)at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174)at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168)and so on------Note that I am using the jre1.5.0_11 and checked for latest version and there is none.I will be pleased if you give any suggestions.Regards,Titas Mutsuddy


Difficulties faced14

Difficulties faced

Response:-

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:PKIX path validation failed: java.security.cert.CertPathValidatorException: timestamp check failed

I think Sun changed the default TrustManagerFactory from SunX509 to SunPKIX sometime during the 1.5.0 update cycle. grep ManagerFactory $JAVA_HOME/jre/lib/security/java.security You should be able to override these with system properties.


Difficulties faced15

Difficulties faced

Default:-

ssl.KeyManagerFactory.algorithm=SunX509

ssl.TrustManagerFactory.algorithm=PKIX

OverWritten in the following properties file:- D:\Sun\AppServer\jdk\jre\lib\security\java.security(properties file):-

ssl.KeyManagerFactory.algorithm=PKIX

ssl.TrustManagerFactory.algorithm=PKIX


Difficulties faced16

Difficulties faced

caradtesterPosts: 1 Member Since: 3/10/06 Re: PKIX path building failed Posted: Mar 14, 2007 11:48 PM  ReplyYour JDK is probably missing one of the CA-certs in the path for https://api.sandbox.ebay.comIt seems sandbox may have updated the SSL certificate within the last 24 hours. Hopefully there will be an official update soon.Meanwhile.... you might try this (assuming windows platform):1. In IE, connect to https://api.sandbox.ebay.com2. Go to Tools > Internet Options > Content > Certificates > Intermediate Certification Authorities [or "Trusted Root Certification Authorities"]3. Choose "VeriSign Class 3 Secure Server CA" (I assume this is the certificate that is missing... you can confirm by comparing thumbprints to what is in your keystore)4. Click "Export...", then "Next>"5. Select "DER encoded binary X.509 (.CER)"6. Name the file c:\temp\verisignsecureserver.cer7. Select "Finish"8. \j2sdk1.4.2_08\bin\keytool -keystore \j2sdk1.4.2_08\jre\lib\security\cacerts -import -alias verisignsecureserver -file c:\temp\verisignsecureserver.cer -trustcacerts9. del c:\temp\verisignsecureserver.cerNote that you must have a full JDK installed (not just the JRE) to have access. The default password for the JDK keystore is well-known: changeitPlease post feedback if this worked for you or not.


Difficulties faced17

Difficulties faced

GetSearchResultRequest (Category search succeeded):-

<?xml version='1.0' encoding='utf-8'?>

< GetSearchResultRequest xmlns="urn:ebay:apis:eBLBaseComponents">

<RequesterCredentials>

<eBayAuthToken>token </eBayAuthToken>

</RequesterCredentials>

<ErrorLevel>1</ErrorLevel>

<Query>books</Query>

<MaxResults>2</MaxResults>

<SiteId>0</SiteId>

</GetSearchResultRequest>


Conclusion

Conclusion

  • Rate of change of eBay is notoriously fast.

  • Failed “Item specific” search in eBay web service.

  • eBay XML based Java API is difficult to handle.

  • eBay introduced SOAP based API in mid-2004 and still eBay platform is undergoing significant transition to SOAP.


Future extension

Future extension

  • Item wise search for eBay.

  • Integrate other available book retailers web service.

  • Try to create the Shopping Cart (Most difficult part of the project).


03 60 569 project

Questions ?


  • Login