[Resolvido] Erro: java.lang.NoClassDefFoundError: org/apache/xml/utils/DefaultErrorHandler

E aí pessoal!

Criei um Projeto que contém classes para transformação XSLT (utilizando Xalan) e neste mesmo projeto, criei uma classe para realizar testes. Quando vou executar a classe de transformação que importei para um outro projeto, que no caso é um Plugin do Eclipse que estou criando, ela gera o seguinte erro : java.lang.NoClassDefFoundError: org/apache/xml/utils/DefaultErrorHandler

Obs.:A classe importada para o projeto funciona, pois realizei o debug ela! Mas creio que exista algum problema com algum dependência, mas não sei qual e porque!

Procurei no google, mas não encontrei algo que me ajudasse!

Alguém já passou por isso?

Esta semana, passei por isso tantas vezes que nem consigo contar quantas vezes foram, mais…

Quero te dar uma dica: esse erro pode acontecer tanto por não encontrar nenhuma definição da classe, quanto por encontrar mais de uma definição. Portanto, pode ser o caso de procurar por classes duplicadas.

[]´s

[quote=asaudate]Esta semana, passei por isso tantas vezes que nem consigo contar quantas vezes foram, mais…

Quero te dar uma dica: esse erro pode acontecer tanto por não encontrar nenhuma definição da classe, quanto por encontrar mais de uma definição. Portanto, pode ser o caso de procurar por classes duplicadas.

[]´s[/quote]
Exatamente. Pode ter algum outro jar que você esteja usando que ‘sobreponha’ esse que você deseja usar.
Isso é o chamado JAR Hell ou Classloader Hell ou DLL Hell. Tem um draft da Caelum que fala um pouco sobre isso… Vale a pena dar uma lida.

[quote=Andre Brito][quote=asaudate]Esta semana, passei por isso tantas vezes que nem consigo contar quantas vezes foram, mais…

Quero te dar uma dica: esse erro pode acontecer tanto por não encontrar nenhuma definição da classe, quanto por encontrar mais de uma definição. Portanto, pode ser o caso de procurar por classes duplicadas.

[]´s[/quote]
Exatamente. Pode ter algum outro jar que você esteja usando que ‘sobreponha’ esse que você deseja usar.
Isso é o chamado JAR Hell ou Classloader Hell ou DLL Hell. Tem um draft da Caelum que fala um pouco sobre isso… Vale a pena dar uma lida.[/quote]

Então pessoal! Eu já verifiquei tudo isso. Isso já está se tornando um situação muito chata cara. Pois quando executo a classe no projeto que ela está, ela funciona perfeitamente, sem nenhum problema. Já quando estou em outro projeto, que é um Eclipse App, ela gera esse erro. Já não sei mais ao que recorrer.

Cavaleiros!

Para que você entendam um pouco mais sobre o erro que está acontecendo, vou mostrar abaixo o Stack Trace da Exception:
Unhandled event loop exception

java.lang.NoClassDefFoundError: org/apache/xml/utils/DefaultErrorHandler
	at com.totvs.tds.esb.transformation.EsbXSLTProcessor.parse(EsbXSLTProcessor.java:134)
	at com.totvs.tds.esb.transformation.EsbXSLTProcessor.parse(EsbXSLTProcessor.java:66)
	at com.totvs.tds.esb.transformation.util.FilePersist.persistTransformation(FilePersist.java:39)
	at com.totvs.tds.esb.ui.wizard.DeployToESBServerWizard.performFinish(DeployToESBServerWizard.java:86)
	at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:752)
	at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:373)
	at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
	at org.eclipse.jface.window.Window.open(Window.java:801)
	at com.totvs.tds.esb.ui.wizard.DeployESBProject.run(DeployESBProject.java:40)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
	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 org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
	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)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.utils.DefaultErrorHandler
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	... 44 more
  • cavalheiros

Se vc estiver usando Maven, passa quais jars vc está importando

[quote=mcarabolante]* cavalheiros

Se vc estiver usando Maven, passa quais jars vc está importando[/quote]

Cavaleiro (“porque batalhamos, isso lembra um pouco de história, o que você deve ter aprendido na 5ª série. Também pode ser substituído por guerreiro.”), nada pessoal!

Não estou utilizando Maven!

Realizei alguns testes com uma classe, e funcionou certinho! Com isso posso concluir que meu problema está com o Run do Eclipse Application!

[b]Tópico resolvido!

Solução:[/b]http://www.guj.com.br/posts/list/205391.java

Valeu!