[teiid-issues] [JBoss JIRA] (TEIID-2759) Unable to import SAP NW-Gateway OData using sap-nw-gateway translator

Ramesh Reddy (JIRA) jira-events at lists.jboss.org
Thu Dec 5 12:31:05 EST 2013


    [ https://issues.jboss.org/browse/TEIID-2759?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929008#comment-12929008 ] 

Ramesh Reddy commented on TEIID-2759:
-------------------------------------

Woodstox XML Stax API library used by JBoss AS by default sets the validation of XML document building by default to true; There are options to set the property to false. However, the code that is calling this is embedded in Odata4J libraries and does not provide a way to intercept it, to turn this property false.

The only option is to override the odta4j class in Teiid and set the property to false. The property in question is "com.ctc.wstx.outputValidateStructure". 

The similar code is used in XMLSystemFunctions.newXmlOutputFactory() method. 
                
> Unable to import SAP NW-Gateway OData using sap-nw-gateway translator 
> ----------------------------------------------------------------------
>
>                 Key: TEIID-2759
>                 URL: https://issues.jboss.org/browse/TEIID-2759
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 8.4.1
>            Reporter: Van Halbert
>            Assignee: Mark Drilling
>         Attachments: ODataVDB.vdb, SAPGateway.ddl
>
>
> "No difference report was found" Error
> I am trying to test SAP NW-GATEWAY OData with DV6-ER4 and JDBS 7.0.1.GA/Designer 8.3.0-CR1
> The following steps will reproduce the error:
> 1.  Do an import/Designer/Teiid Connection >> Source Model
> 2.  Create a new datasource using webservice from available drivers
> 3.  Enter Data Source Properties (can connect to the url in a browser):
> 	URL:  https://sapes1.sapdevcenter.com/sap/opu/odata/IWFND/RMTSAMPLEFLIGHT/
> 	WebService Security Used:  HTTPBasic
> 	class-name:  used prefilled default
> 	Authentication User Name:  P1940027560
> 	Authentication User Password:  Foxrun1004
> 4.  Selected the newly created driver and selected "Next"
> 5.  Selected sap-nw-gateway translator and named the target model and selected "Next"
> 6.  Was presented with a DDL screen and selected "Next"
> 7.  The "Select the Differences to Apply" screen shows an Import Message "Error 
>     encountered while importing the DDL - No difference report was found".  screenshot attached.
> java.lang.reflect.InvocationTargetException
> 	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:421)
> 	at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
> 	at org.teiid.designer.ddl.importer.ui.DdlImportDifferencesPage.setVisible(DdlImportDifferencesPage.java:217)
> 	at org.eclipse.jface.wizard.WizardDialog.updateForPage(WizardDialog.java:1259)
> 	at org.eclipse.jface.wizard.WizardDialog.access$4(WizardDialog.java:1238)
> 	at org.eclipse.jface.wizard.WizardDialog$8.run(WizardDialog.java:1227)
> 	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
> 	at org.eclipse.jface.wizard.WizardDialog.showPage(WizardDialog.java:1225)
> 	at org.eclipse.jface.wizard.WizardDialog.nextPressed(WizardDialog.java:915)
> 	at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:428)
> 	at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:628)
> 	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
> 	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
> 	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3742)
> 	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3363)
> 	at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
> 	at org.eclipse.jface.window.Window.open(Window.java:802)
> 	at org.eclipse.ui.internal.handlers.WizardHandler$Import.executeHandler(WizardHandler.java:152)
> 	at org.eclipse.ui.internal.handlers.WizardHandler.execute(WizardHandler.java:279)
> 	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:290)
> 	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:601)
> 	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:243)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:224)
> 	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:167)
> 	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499)
> 	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
> 	at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:420)
> 	at org.eclipse.ui.internal.actions.CommandAction.runWithEvent(CommandAction.java:157)
> 	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:1392)
> 	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3742)
> 	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3363)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
> 	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
> 	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
> 	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
> 	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
> 	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	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:354)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:601)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
> Caused by: java.lang.NullPointerException
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.getColumnNode(CreateTableParser.java:120)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseReferenceList(CreateTableParser.java:333)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseTableBodyConstraint(CreateTableParser.java:455)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseTableBody(CreateTableParser.java:365)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parse(CreateTableParser.java:198)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.TeiidDdlParser.parseNextStatement(TeiidDdlParser.java:150)
> 	at org.modeshape.sequencer.ddl.StandardDdlParser.parse(StandardDdlParser.java:209)
> 	at org.modeshape.sequencer.ddl.DdlParsers.parseUsing(DdlParsers.java:174)
> 	at org.teiid.designer.ddl.importer.DdlImporter.importDdl(DdlImporter.java:134)
> 	at org.teiid.designer.ddl.importer.DdlImporter$1.tryToDo(DdlImporter.java:106)
> 	at org.teiid.core.designer.util.OperationUtil.perform(OperationUtil.java:40)
> 	at org.teiid.designer.ddl.importer.DdlImporter.importDdl(DdlImporter.java:90)
> 	at org.teiid.designer.ddl.importer.ui.DdlImportDifferencesPage$1.run(DdlImportDifferencesPage.java:222)
> 	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
> Root exception:
> java.lang.NullPointerException
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.getColumnNode(CreateTableParser.java:120)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseReferenceList(CreateTableParser.java:333)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseTableBodyConstraint(CreateTableParser.java:455)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parseTableBody(CreateTableParser.java:365)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.CreateTableParser.parse(CreateTableParser.java:198)
> 	at org.modeshape.sequencer.ddl.dialect.teiid.TeiidDdlParser.parseNextStatement(TeiidDdlParser.java:150)
> 	at org.modeshape.sequencer.ddl.StandardDdlParser.parse(StandardDdlParser.java:209)
> 	at org.modeshape.sequencer.ddl.DdlParsers.parseUsing(DdlParsers.java:174)
> 	at org.teiid.designer.ddl.importer.DdlImporter.importDdl(DdlImporter.java:134)
> 	at org.teiid.designer.ddl.importer.DdlImporter$1.tryToDo(DdlImporter.java:106)
> 	at org.teiid.core.designer.util.OperationUtil.perform(OperationUtil.java:40)
> 	at org.teiid.designer.ddl.importer.DdlImporter.importDdl(DdlImporter.java:90)
> 	at org.teiid.designer.ddl.importer.ui.DdlImportDifferencesPage$1.run(DdlImportDifferencesPage.java:222)
> 	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the teiid-issues mailing list