添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
Connect and discuss with the Denodo team and data management professionals and enthusiasts Unable to obtain the data structure: stream closed A newbie here. Been trying to setup an XML data source. Defined the url and authentication credentials etc but when I try to create a base view I get this error. Using the Get method. The same url works fine when I try it through a python script. What could be making it do it? Hi there, It looks someone or something is closing the connection. This issue could be related with a firewall policy or a connectivity issue. Check the logs in $Denodo_Home/logs/vdp to get more information about the error. Hope this helps! Well, everything I have been doing is happening inside firewalls. I am trying to access a sharepoint and creating an Excel data source. The authentication is NTLM. The url works fine in the browser.The proxy is also defined. Checked the log which really doesn't point to anything specific:- 693683226 [RMI(4818)-10.167.30.44-27] ERROR 20160219094724863 com.denodo.parser.connection.http.CommonsHttpClientConnection - java.io.IOException: Stream closed java.io.IOException: Stream closed at java.io.BufferedInputStream.getInIfOpen(Unknown Source) at java.io.BufferedInputStream.available(Unknown Source) at org.apache.commons.httpclient.ContentLengthInputStream.available(ContentLengthInputStream.java:213) at java.io.FilterInputStream.available(Unknown Source) at org.apache.commons.httpclient.AutoCloseInputStream.available(AutoCloseInputStream.java:143) at com.denodo.parser.connection.http.CommonsHttpClientConnection.getEncodedInputStreamHolder(CommonsHttpClientConnection.java:422) at com.denodo.parser.connection.http.CommonsHttpClientConnection.testConnection(CommonsHttpClientConnection.java:786) at com.denodo.parser.connection.Route.testConnection(Route.java:91) at com.denodo.vdb.util.introspectionservice.actions.TestRouteConnectionAction.testConnection(Unknown Source) at com.denodo.vdb.interpreter.execution.TestConnectionAction.exec(Unknown Source) at com.denodo.vdb.interpreter.execution.Action.run(Unknown Source) at com.denodo.vdb.interpreter.execution.a.b.a(Unknown Source) at com.denodo.vdb.interpreter.execution.a.b.a(Unknown Source) at com.denodo.vdb.interpreter.execution.a.b.e(Unknown Source) at com.denodo.vdb.interpreter.execution.Action.start(Unknown Source) at com.denodo.vdb.interpreter.execution.ExecutionEngine.execute(Unknown Source) at com.denodo.vdb.vdbinterface.server.QueryExecutorImpl.executeStatement(Unknown Source) at com.denodo.vdb.vdbinterface.server.QueryExecutorImpl.executeStatement(Unknown Source) at sun.reflect.GeneratedMethodAccessor82.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) at sun.rmi.transport.Transport$1.run(Unknown Source) at sun.rmi.transport.Transport$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Unknown Source) at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.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) Any clue? Thanks Hi there, According to you last comment, you are using a proxy to access your Sharepoint. Currently Denodo Platform does not support NTLM authentication in HTTP proxies, but you can try this workaround: When configuring the data source, instead of using HTTP Client, use "Denodo Browser Client" and add a sequence similar to: 'sequence://navigate(about:config?JSBrowser.ENABLE_HTTP_PREEMPTIVE_AUTH=0,0);SetProxyAuthInfo(login\@proxy_url:port,encrypted:password,NTLM:domain);navigate(about:config?JSBrowser.MIME_TYPES=*,0);Navigate(http://json_or_xml_or_df_url,1); The first ENABLE_HTTP_PREEMPTIVE_AUTH may not be needed. The password can be encrypted using ITPilot and other NSEQL commands can be used instead of navigate such as PostData Hope this helps! Well, it appears like you are talking about an option I don't see in the Express version of the tool. You also mention itPilot which is not an option in Denodo Express (greyed out).. I have a script in python that works flawlessly with sharepoint and it is only 10 lines of code. Also, is there a way to incorporate an output from an external script as a data source in Denodo but without the multiple independent steps? I have another question. Some systems work with tokens after the initial basic authnetication. How would you work with Tokens in Denodo? Any provision to work with global variables? Denodo supports oauth and oauth2 protocols that involve tokens. I'd need more information about the protocol you want to use and its tokens. Regarding the global variables in VDP, you can check the Advanced VQL Guide, section "ADDING VARIABLES TO SELECTION CONDITIONS (GETVAR AND SETVAR)". Regards You have stated 'Currently Denodo Platform does not support NTLM authentication in HTTP proxies'. Would that mean if I disabled proxy it should work? I have tried that as well but I get the same error. How much of a difference would I find in the Express version as opposed to the full blown Enterprise tool? I do see some features have been disabled in the Express version.