eclipse-tapestry5-plugin icon indicating copy to clipboard operation
eclipse-tapestry5-plugin copied to clipboard

Symbol 'tapestry.scriptaculous' is defined in terms of itself

Open nfranke opened this issue 8 years ago • 3 comments

I see tons of errors like this on the eclipse logs. I'm running 2.13.4. I think this may have something to do with some of the issues I'm having with Eclipse stability. These messages appear quite frequently generating megabytes of logs.

!ENTRY com.anjlab.eclipse.tapestry5 2 0 2017-08-04 17:18:55.524
!MESSAGE Error expanding asset '${tapestry.scriptaculous}/prototype.js'
!STACK 0
java.lang.RuntimeException: Symbol 'tapestry.scriptaculous' is defined in terms of itself (tapestry.scriptaculous --> tapestry.scriptaculous --> ... ~ 2000 more times ... --> tapestry.scriptaculous --> tapestry.scriptaculous).
	at com.anjlab.eclipse.tapestry5.internal.SymbolExpansion.expandSymbol(SymbolExpansion.java:110)
	at com.anjlab.eclipse.tapestry5.internal.SymbolExpansion.valueForSymbol(SymbolExpansion.java:97)
	at com.anjlab.eclipse.tapestry5.internal.SymbolExpansion.expandSymbols(SymbolExpansion.java:81)
	at com.anjlab.eclipse.tapestry5.TapestryProject.expandSymbols(TapestryProject.java:322)
	at com.anjlab.eclipse.tapestry5.TapestryUtils.expandSymbols(TapestryUtils.java:854)
	at com.anjlab.eclipse.tapestry5.Asset.<init>(Asset.java:12)
	at com.anjlab.eclipse.tapestry5.AssetReference.resolveFile(AssetReference.java:18)
	at com.anjlab.eclipse.tapestry5.AbstractFileReference.equals(AbstractFileReference.java:182)
	at com.anjlab.eclipse.tapestry5.views.TreeObject.equals(TreeObject.java:89)
	at org.eclipse.jface.viewers.StructuredViewer.equals(StructuredViewer.java:713)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalFindItem(AbstractTreeViewer.java:1816)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doFindItem(AbstractTreeViewer.java:903)
	at org.eclipse.jface.viewers.StructuredViewer.findItems(StructuredViewer.java:811)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalGetWidgetToSelect(AbstractTreeViewer.java:1727)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand(AbstractTreeViewer.java:1628)
	at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget(AbstractTreeViewer.java:2531)
	at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget(AbstractTreeViewer.java:3001)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1469)
	at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:366)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1423)
	at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:1517)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:292)
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1701)
	at com.anjlab.eclipse.tapestry5.views.context.TapestryContextView.setContentProvider(TapestryContextView.java:147)
	at com.anjlab.eclipse.tapestry5.views.context.TapestryContextView.access$1(TapestryContextView.java:143)
	at com.anjlab.eclipse.tapestry5.views.context.TapestryContextView$1$1.run(TapestryContextView.java:93)
	at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:162)
	at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:154)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:694)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	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:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)

nfranke avatar Aug 04 '17 21:08 nfranke

Looks like recursion in symbol definition.

@nfranke how does the tapestry.scriptaculous symbol defined in your setup? Can you confirm you can run the app without errors?

Which Tapestry version is that? Does it happen on all pages/components or just some of them? Are you @Injecting any assets in failing components?

dmitrygusev avatar Aug 05 '17 18:08 dmitrygusev

I'm using Tapestry 5.3.7 and I have not defined tapestry.scriptaculous. That's part of the default config.

nfranke avatar Aug 07 '17 14:08 nfranke

I can't tell what's failing, exactly. I get hundreds of these in the logs.

nfranke avatar Aug 08 '17 18:08 nfranke