2010-02-01 10 views
3

J'ai le fichier wsdl suivant: http://pastie.org/804441. Je reçois les erreurs suivantes avec le wsdl. Je l'utilise dans un outil appelé XAware, qui est un outil d'intégration de données.Erreur lors de l'analyse du message WSDL

Cette question ne concerne pas XAware. Juste en regardant les erreurs ci-dessous et le fichier wsdl, cela indique-t-il un problème avec l'utilisation du WSDL ou mon WSDL est-il correct?

Aidez-nous s'il vous plaît. Merci.

Message d'erreur (erreur d'analyse WSDL)

org.xaware.shared.util.XAwareException: La définition du schéma "http://www.w3.org/2001/XMLSchema" n'est pas disponible dans le fichier wsdl. Veuillez le définir dans ce fichier ou utiliser l'instruction import pour importer à partir d'un autre fichier contenant le schéma definition.at org.xaware.ide.xadev.wizard.BizDocumentWizard $ SelectGrammarFilePage.getSchemURI (source inconnue) sur org.xaware.ide.xadev.wizard .BizDocumentWizard $ SelectGrammarFilePage.getOutputMessageSchema (Source inconnue) sur org.xaware.ide.xadev.wizard.BizDocumentWizard $ SélectionnezGrammarFilePage.parseWSDLFile (Source inconnue) sur org.xaware.ide.xadev.wizard.BizDocumentWizard $ SelectGrammarFilePage.access $ 000 (Unknown Source) à org.xaware.ide.xadev.wizard.BizDocumentWizard $ SelectGrammarFilePage $ 2.selectionChanged (source inconnue) à org.eclipse.jface.viewers.Viewer $ 2.run (Viewer.java:162) à org.eclipse.core.runtime .SafeRunner.run (SafeRunner.java:37) sur org.eclipse.core.runtime.Platform.run (Platform.java:880) sur org.eclipse.ui.internal.JFaceUtil $ 1.run (JFaceUtil.java:48) sur org.eclipse.jface.util.SafeRunnable.run (SafeRunnable.java:175) sur org.eclipse.jface.viewers.Viewer.fireSelectionChanged (Viewer.java:160) sur org.eclipse.jface.viewers.StructuredViewer.updateSelection (StructuredViewer.java:2062) sur org.eclipse.jface.viewers.StructuredViewer.setSelection (StructuredViewer.java:1638) sur org.eclipse.jface.viewers.TreeViewer.setSelection (TreeViewer.java:1104)at org.eclipse.wst.common.ui.internal.viewers.SelectSingleFileView.setVisibleHelper (SelectSingleFileView.java:377) à org.xaware.bizdocgenerator.dialogs.SelectFileOrXMLCatalogIdPanel.setVisibleHelper (Source inconnue) org .xaware.ide.xadev.wizard.BizDocumentWizard $ SelectGrammarFilePage.setVisible (Source inconnue) à org.eclipse.jface.wizard.WizardDialog.updateForPage (WizardDialog.java:1161) à org.eclipse.jface.wizard.WizardDialog.access 2 $ (WizardDialog.java:1139) à org.eclipse.jface.wizard.WizardDialog $ 4.run (WizardDialog.java:1128) à org.eclipse.swt.custom.BusyIndicator.showWhile (BusyIndicator.java:70) à org.eclipse .jface.wizard.WizardDialog.showPage (WizardDialog.java:1126) sur org.eclipse.jface.wizard.WizardDialog.nextPressed (WizardDialog.java:820)) À org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:369) à org.eclipse.jface.dialogs.Dialog $ 2.widgetSelected (Dialog.java:624) à org.eclipse.swt.widgets.TypedListener .handleEvent (TypedListener.java:228) sur org.eclipse.swt.widgets.EventTable.sendEvent (EventTable.java:84) sur org.eclipse.swt.widgets.Widget.sendEvent (Widget.java:1003) sur org. eclipse.swt.widgets.Display.runDeferredEvents (Display.java:3823) à org.eclipse.swt.widgets.Display.readAndDispatch (Display.java:3422) à org.eclipse.jface.window.Window.runEventLoop (fenêtre. java: 825) à org.eclipse.jface.window.Window.open (Window.java:801) à org.xaware.ide.xadev.wizard.BizDocumentWizard.showDialog (source inconnue) à org.xaware.ide.xadev. gui.actions.CreateBizDocFromWSDLAction.run (Source inconnue) à org.eclipse.ui.internal.PluginAction.runWithEvent (PluginAction.java:251) à org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:583) à org.eclipse.jface.action.ActionContributionItem.a ccess $ 2 (ActionContributionItem.java:500) à org.eclipse.jface.action.ActionContributionItem $ 5.handleEvent (ActionContributionItem.java:411) à org.eclipse.swt.widgets.EventTable.sendEvent (EventTable.java:84) à org .eclipse.swt.widgets.Widget.sendEvent (Widget.java:1003) à org.eclipse.swt.widgets.Display.runDeferredEvents (Display.java:3823) à org.eclipse.swt.widgets.Display.readAndDispatch (Affichage .java: 3422) à org.eclipse.ui.internal.Workbench.runEventLoop (Workbench.java:2382) à org.eclipse.ui.internal.Workbench.runUI (Workbench.java:2346) à org.eclipse.ui. internal.Workbench.access $ 4 (Workbench.java:2198) à org.eclipse.ui.internal.Workbench $ 5.run (Workbench.java:493) à org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm. java: 288) sur org.eclipse.ui.internal.Workbench.createAndRunWorkbench (Workbench.java:488) sur org.eclipse.ui.PlatformUI.createAndRunWorkbench (PlatformUI.java:149) sur org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113) sur org .eclipse.equinox.internal.app.EclipseAppHandle.run (EclipseAppHandle.java:193) sur org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication (EclipseAppLauncher.java:110) sur org.eclipse.core.runtime .internal.adaptor.EclipseAppLauncher.start (EclipseAppLauncher.java:79) sur org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:386) sur org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:179) à sun.reflect.NativeMethodAccessorImpl.invoke0 (méthode native) à sun.reflect.NativeMethodAccessorImpl.invoke (source inconnue) à sun.reflect.DelegatingMethodAccessorImpl.invoke (source inconnue) à java.lang.reflect. Method.invoke (Source inconnue) à org.eclipse.equinox.launcher.Main.invokeFramework (Main.java:549) à org.eclipse.equinox.launcher.Main.basicRun (Ma in.java:504) à org.eclipse.equinox.launcher.Main.run (Main.java:1236) à org.eclipse.equinox.launcher.Main.main (Main.java:1212)

Répondre

0

Il est Je comprends que l'instruction <import/> doit inclure un attribut schemaLocation. La déclaration d'importation (si vous avez besoin vraiment il) devrait ressembler à:

<import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="soapenc.xsd" /> 
+0

Merci pour la réponse Kevin. Quand je fais cela je reçois: "WSDLException (at/wsdl: définitions/wsdl: types/schema [1]): faultCode = OTHER_ERROR: Une erreur s'est produite en essayant de résoudre le schéma référencé à 'soapenc.xsd', relatif à 'fichier: /C:/XAware_5.4.0.356/designer/workspace/Imaginary Corporation/CompiereService/NewWSDLFile.wsdl '.: Ce fichier n'a pas été trouvé: fichier:/C: /XAware_5.4.0.356/designer/workspace/Imaginary Corporation/CompiereService/soapenc.xsd: java.io.FileNotFoundException: Ce fichier n'a pas été trouvé: fichier:/C: /XAware_5.4.0.356/designer/workspace/Imaginary Corporation/CompiereService/soapenc.xsd – Tim

+0

Tim, ce fichier (soapenc. xsd) doit réellement exister ou être une référence à un schéma valide.Je voudrais juste laisser cette importation en particulier, je ne pense pas que vous en ayez besoin – Kevin

+0

Merci Kevin d'avoir signalé cela.J'ai téléchargé le soapenc.xsd et placé dans l'emplacement requis, de sorte que l'erreur est parti.Mais maintenant, je reçois le message d'erreur "org.xaware.shared.util.XAwareException: T La définition du schéma "http://www.w3.org/2001/XMLSchema" n'est pas disponible dans le fichier wsdl. Veuillez le définir dans ce fichier ou utiliser l'instruction import pour importer depuis un autre fichier contenant la définition du schéma. "Désolé pour le problème, mais est-il possible de le corriger? – Tim

0

Il me semble que cela pourrait être en partie un problème/bizarrerie, XAware depuis autant que je sache, vous ne devriez pas devez spécifier schemaLocation de schémas bien connus tels que http://www.w3.org/2001/XMLSchema avec un outil à comportement normal.

Peut-être que vous pourriez essayer de pointer l'emplacement d'importation à http://www.w3.org/2001/XMLSchema.xsd et voir ce qui se passe?

1

L'outil peut être confondu parce que l'attribution de deux préfixes à l'espace de noms « http://www.w3.org/2001/XMLSchema » du schéma: les deux « xsd » dans l'élément racine:

xmlns:xsd="http://www.w3.org/2001/XMLSchema" 

et la valeur par défaut (aucun préfixe) dans chaque " élément de schéma »:

xmlns="http://www.w3.org/2001/XMLSchema" 

Selon la façon dont le logiciel gère ce cas, il pourrait être tousse sur elle. C'est quelque chose qui vaut la peine d'être réparé de toute façon, si ce n'est pour d'autres raisons que cela rendrait le WSDL plus facile à lire.

<xsd:schema> 

est mieux que

<schema targetNamespace="http://compservice.com" xmlns="http://www.w3.org/2001/XMLSchema"> 
+0

Soit faire ce que Gabriel suggère, soit supprimer la déclaration xmlns: xsd des définitions de wsdl:. Cela devrait fonctionner je crois. – anirvan

Questions connexes