[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.technology.equinox] Re: P2 "Headless Updating on Startup" not working

Is it possible that some things changed for the final 3.5 version that broke the "Headless Updating on Startup" example?

scott brown wrote:

bringing back an old topic

I've downloaded the 3.5 release and tried my best to find all the p2 documentation I could. I tried Susan's example for "Headless Updating on Startup," including her p2Util class with my application, but i'm running into an issue: I get an "Invalid Thread Access"

I'll include the stack trace from the workspace .log and from our application log below. the line from P2Util that seems to cause the error is:

manager.loadRepository(reposToSearch[i], loadMonitor.newChild(100 / reposToSearch.length));

Can anyone else reproduce this?

workspace .log stack trace:

!ENTRY org.eclipse.ecf.provider.filetransfer 4 1001 2009-06-26 14:45:19.815
!MESSAGE Transfer Exception
!STACK 0
org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:3884)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770)
at org.eclipse.swt.widgets.Widget.error(Widget.java:463)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:355)
at org.eclipse.swt.widgets.ProgressBar.getSelection(ProgressBar.java:191)
at


org.eclipse.jface.dialogs.ProgressIndicator.worked(ProgressIndicator.java:139)
at

org.eclipse.jface.dialogs.ProgressMonitorDialog$ProgressMonitor.internalWorked(ProgressMonitorDialog.java:246)
at

org.eclipse.jface.dialogs.ProgressMonitorDialog$ProgressMonitor.worked(ProgressMonitorDialog.java:241)
at org.eclipse.core.runtime.SubMonitor$RootInfo.worked(SubMonitor.java:284)
at org.eclipse.core.runtime.SubMonitor.internalWorked(SubMonitor.java:570)
at org.eclipse.core.runtime.SubMonitor.worked(SubMonitor.java:585)
at


org.eclipse.equinox.internal.p2.repository.FileReader.handleTransferEvent(FileReader.java:161)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.fireTransferReceiveDataEvent(AbstractRetrieveFileTransfer.java:318)
at

org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.fireTransferReceiveDataEvent(HttpClientRetrieveFileTransfer.java:1013)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.handleReceivedData(AbstractRetrieveFileTransfer.java:213)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer$1.performFileTransfer(AbstractRetrieveFileTransfer.java:141)
at org.eclipse.ecf.filetransfer.FileTransferJob.run(FileTransferJob.java:73)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)



our application's stack trace

[2009-06-26 14:45:19,908] ERROR: org.eclipse.equinox.internal.provisional.p2.core.ProvisionException: Unable to read repository at http://foobar/content.jar. (P2Util.java:run:128) org.eclipse.equinox.internal.provisional.p2.core.ProvisionException: Unable to read repository at http://foobar/content.jar.
at


org.eclipse.equinox.internal.p2.metadata.repository.CacheManager.updateCache(CacheManager.java:416)
at

org.eclipse.equinox.internal.p2.metadata.repository.CacheManager.createCache(CacheManager.java:195)
at

org.eclipse.equinox.internal.provisional.spi.p2.metadata.repository.SimpleMetadataRepositoryFactory.getLocalFile(SimpleMetadataRepositoryFactory.java:60)
at

org.eclipse.equinox.internal.provisional.spi.p2.metadata.repository.SimpleMetadataRepositoryFactory.validateAndLoad(SimpleMetadataRepositoryFactory.java:99)
at

org.eclipse.equinox.internal.provisional.spi.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:87)
at

org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:54)
at

org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:669)
at

org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:617)
at

org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
at

org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:88)
at foobar.P2Util$1.run(P2Util.java:123)
at


org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
at


org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
at foobar..P2Util.checkForUpdates(P2Util.java:207)
at foobar..Updater.performP2Update(Updater.java:110)
at


foobar.ApplicationWorkbenchAdvisor.postStartup(ApplicationWorkbenchAdvisor.java:119)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2343)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at foobar.Application.start(Application.java:67)
at


org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at

org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at

org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:3884)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770)
at org.eclipse.swt.widgets.Widget.error(Widget.java:463)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:355)
at org.eclipse.swt.widgets.ProgressBar.getSelection(ProgressBar.java:191)
at


org.eclipse.jface.dialogs.ProgressIndicator.worked(ProgressIndicator.java:139)
at

org.eclipse.jface.dialogs.ProgressMonitorDialog$ProgressMonitor.internalWorked(ProgressMonitorDialog.java:246)
at

org.eclipse.jface.dialogs.ProgressMonitorDialog$ProgressMonitor.worked(ProgressMonitorDialog.java:241)
at org.eclipse.core.runtime.SubMonitor$RootInfo.worked(SubMonitor.java:284)
at org.eclipse.core.runtime.SubMonitor.internalWorked(SubMonitor.java:570)
at org.eclipse.core.runtime.SubMonitor.worked(SubMonitor.java:585)
at


org.eclipse.equinox.internal.p2.repository.FileReader.handleTransferEvent(FileReader.java:161)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.fireTransferReceiveDataEvent(AbstractRetrieveFileTransfer.java:318)
at

org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.fireTransferReceiveDataEvent(HttpClientRetrieveFileTransfer.java:1013)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.handleReceivedData(AbstractRetrieveFileTransfer.java:213)
at

org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer$1.performFileTransfer(AbstractRetrieveFileTransfer.java:141)
at org.eclipse.ecf.filetransfer.FileTransferJob.run(FileTransferJob.java:73)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)