Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 312005 - error dialog displayed when verification is cancelled
Summary: error dialog displayed when verification is cancelled
Status: RESOLVED FIXED
Alias: None
Product: MPC
Classification: Technology
Component: wizard (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 1.0.0   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 313585
Blocks:
  Show dependency tree
 
Reported: 2010-05-07 01:56 EDT by Steffen Pingel CLA
Modified: 2010-05-19 14:02 EDT (History)
0 users

See Also:


Attachments
screenshot (16.55 KB, image/png)
2010-05-07 01:57 EDT, Steffen Pingel CLA
no flags Details
mylyn/context/zip (58.02 KB, application/octet-stream)
2010-05-19 13:59 EDT, David Green CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2010-05-07 01:56:19 EDT
I clicked on the Installed tab in the MPC wizard and got an error when I cancelled the operation that was triggered (see screenshot).
Comment 1 Steffen Pingel CLA 2010-05-07 01:57:32 EDT
Created attachment 167431 [details]
screenshot
Comment 2 David Green CLA 2010-05-19 13:59:19 EDT
this problem is related to how errors are propagated by ECF:

pre. org.eclipse.core.runtime.CoreException: Cannot complete request to http://marketplace.eclipse.org/recent/api/p?os=macosx&client=org.eclipse.epp.mpc.core&java.version=1.6.0_17&ws=cocoa: Cancelled by user
	at org.eclipse.epp.internal.mpc.core.service.DefaultMarketplaceService.processRequest(DefaultMarketplaceService.java:422)
	at org.eclipse.epp.internal.mpc.core.service.DefaultMarketplaceService.processRequest(DefaultMarketplaceService.java:328)
	at org.eclipse.epp.internal.mpc.core.service.DefaultMarketplaceService.recent(DefaultMarketplaceService.java:248)
	at org.eclipse.epp.internal.mpc.core.service.CachingMarketplaceService$5.doSearch(CachingMarketplaceService.java:161)
	at org.eclipse.epp.internal.mpc.core.service.CachingMarketplaceService.performSearch(CachingMarketplaceService.java:120)
	at org.eclipse.epp.internal.mpc.core.service.CachingMarketplaceService.recent(CachingMarketplaceService.java:158)
	at org.eclipse.epp.internal.mpc.ui.catalog.MarketplaceDiscoveryStrategy.recent(MarketplaceDiscoveryStrategy.java:298)
	at org.eclipse.epp.internal.mpc.ui.catalog.MarketplaceCatalog$2.run(MarketplaceCatalog.java:78)
	at org.eclipse.epp.internal.mpc.ui.catalog.MarketplaceCatalog.performDiscovery(MarketplaceCatalog.java:316)
	at org.eclipse.epp.internal.mpc.ui.catalog.MarketplaceCatalog.recent(MarketplaceCatalog.java:76)
	at org.eclipse.epp.internal.mpc.ui.wizards.MarketplaceViewer$3.run(MarketplaceViewer.java:244)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: java.io.IOException: Cancelled by user
	at org.eclipse.equinox.internal.p2.repository.FileReader$1.checkException(FileReader.java:260)
	at org.eclipse.equinox.internal.p2.repository.FileReader$1.close(FileReader.java:215)
	at org.eclipse.epp.internal.mpc.core.service.DefaultMarketplaceService.processRequest(DefaultMarketplaceService.java:417)
	... 11 more
Caused by: org.eclipse.ecf.filetransfer.UserCancelledException: Cancelled by user
	at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.newUserCancelledException(AbstractRetrieveFileTransfer.java:431)
	at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.setDoneCanceled(AbstractRetrieveFileTransfer.java:461)
	at org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.cancel(HttpClientRetrieveFileTransfer.java:349)
	at org.eclipse.equinox.internal.p2.repository.FileReader.handleTransferEvent(FileReader.java:165)
	at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.fireTransferReceiveDataEvent(AbstractRetrieveFileTransfer.java:377)
	at org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.fireTransferReceiveDataEvent(HttpClientRetrieveFileTransfer.java:1143)
	at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.handleReceivedData(AbstractRetrieveFileTransfer.java:277)
	at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer$1.performFileTransfer(AbstractRetrieveFileTransfer.java:162)
	at org.eclipse.ecf.filetransfer.FileTransferJob.run(FileTransferJob.java:74)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
	
I've modified exception handling to look for @org.eclipse.ecf.filetransfer.UserCancelledException@ so that we can provide an IStatus with severity CANCEL

In some (hopefully rare) cases we can still experience an exception dialog if the XML parser throws a SAXException instead of an IOException.  Please reopen if the problem persists.
Comment 3 David Green CLA 2010-05-19 13:59:22 EDT
Created attachment 169165 [details]
mylyn/context/zip