AnsweredAssumed Answered

UiThreadingViolationException

Question asked by tobiasjones on Jul 29, 2013
Latest reply on Aug 1, 2013 by Walter Ebeling

I am trying to compile my own Spark client, because I would like to rebrand it and to lock down a few things.  Starting from the baseline (http://svn.igniterealtime.org/svn/repos/spark/trunk), I did a build, just changing the build.xml to allow Ant 1.9.  The build goes just fine, just a bunch of deprecation warnings.  When I start up the Spark client and log in, I get the following errors (among others) and the Conference tab is blank.  Using a pre-compiled binary works just fine with the OpenFire server I set up.  This is being compiled on a Windows 7 desktop with Ant 1.9 and JDK 1.7.0_25.

 

Some background, I was using these instructions http://community.igniterealtime.org/docs/DOC-1360 and got the error after doing all of the modifications, so I went all the way back to a clean copy to slowly make the changes to find where the error was introduced; however, I got the error from the clean copy.

 

C:\my_dev\ChatTest2\target\build\bin>java -Dappdir=.. -cp ../lib/jdom.jar;../lib/log4j.jar;../lib/lti-civil.jar;../

lib/fmj.jar;../lib/startup.jar;../lib/windows/jdic.jar;../resources;../lib/windo ws; -Djava.library.path="../lib/windows"

org.jivesoftware.launcher.Startup

org.jvnet.substance.api.UiThreadingViolationException: Component creation must be done on Event Dispatch Thread

        at org.jvnet.substance.utils.SubstanceCoreUtilities.testComponentCreationThreading Violation(SubstanceCoreUtiliti

es.java:2367)

        at org.jvnet.substance.SubstancePanelUI.createUI(SubstancePanelUI.java:57)

        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

        at java.lang.reflect.Method.invoke(Unknown Source)

        at sun.reflect.misc.Trampoline.invoke(Unknown Source)

        at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

        at java.lang.reflect.Method.invoke(Unknown Source)

        at sun.reflect.misc.MethodUtil.invoke(Unknown Source)

        at javax.swing.UIDefaults.getUI(Unknown Source)

        at javax.swing.UIManager.getUI(Unknown Source)

        at javax.swing.JPanel.updateUI(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.getServicePanel(BookmarksUI.j ava:447)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.loadUI(BookmarksUI.java:114)

        at org.jivesoftware.spark.ui.conferences.ConferenceServices$3.run(ConferenceServic es.java:166)

        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

        at java.util.concurrent.FutureTask.run(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

        at java.lang.Thread.run(Unknown Source)

UIDefaults.getUI() failed: createUI() failed for javax.swing.JPanel[,0,0,0x0,invalid,layout=java.awt.FlowLayout,alignmen

tX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=] java.lang.reflect.InvocationTargetExcept

ion

java.lang.Error

        at javax.swing.UIDefaults.getUIError(Unknown Source)

        at javax.swing.MultiUIDefaults.getUIError(Unknown Source)

        at javax.swing.UIDefaults.getUI(Unknown Source)

        at javax.swing.UIManager.getUI(Unknown Source)

        at javax.swing.JPanel.updateUI(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at javax.swing.JPanel.<init>(Unknown Source)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.getServicePanel(BookmarksUI.j ava:447)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.loadUI(BookmarksUI.java:114)

        at org.jivesoftware.spark.ui.conferences.ConferenceServices$3.run(ConferenceServic es.java:166)

        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

        at java.util.concurrent.FutureTask.run(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

        at java.lang.Thread.run(Unknown Source)

org.jvnet.substance.api.UiThreadingViolationException: Component creation must be done on Event Dispatch Thread

        at org.jvnet.substance.utils.SubstanceCoreUtilities.testComponentCreationThreading Violation(SubstanceCoreUtiliti

es.java:2367)

        at org.jvnet.substance.SubstanceLabelUI.createUI(SubstanceLabelUI.java:63)

        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

        at java.lang.reflect.Method.invoke(Unknown Source)

        at sun.reflect.misc.Trampoline.invoke(Unknown Source)

        at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

        at java.lang.reflect.Method.invoke(Unknown Source)

        at sun.reflect.misc.MethodUtil.invoke(Unknown Source)

        at javax.swing.UIDefaults.getUI(Unknown Source)

        at javax.swing.UIManager.getUI(Unknown Source)

        at javax.swing.JLabel.updateUI(Unknown Source)

        at javax.swing.JLabel.<init>(Unknown Source)

        at javax.swing.JLabel.<init>(Unknown Source)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.getServicePanel(BookmarksUI.j ava:451)

        at org.jivesoftware.spark.ui.conferences.BookmarksUI.loadUI(BookmarksUI.java:114)

        at org.jivesoftware.spark.ui.conferences.ConferenceServices$3.run(ConferenceServic es.java:166)

        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

        at java.util.concurrent.FutureTask.run(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

        at java.lang.Thread.run(Unknown Source)

Outcomes