WEBDAV: Authentication failed!

Having trouble installing Oxygen? Got a bug to report? Post it all here.
yury.eroshenkov
Posts: 34
Joined: Mon Jun 03, 2013 2:17 pm

WEBDAV: Authentication failed!

Post by yury.eroshenkov »

Hello,
I'm testing a webdav connection feature in the Oxygen and faced with blocker: webdav connection is not opening due to Authentication failed error. It's strange, because i can reach my webdav server using the same credentials, for example, in the browser or via windows net drive.
From oxygen.log:

Code: Select all


19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.s - Closing model
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.s - Setting null model with : true
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.s - Building model: http://cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.d - The URL for Remote browsing is:http://cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.s - Setting model
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.f - Listing: http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy data http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/ state:1
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Current proxy conf:ro.sync.net.protocol.http.d$2@1e677aca
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy selector returns:ro.sync.net.protocol.http.d$2@1e677aca
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Detected system proxies for:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/ is:[DIRECT]
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy data returns null for:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy data http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/ state:1
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Current proxy conf:ro.sync.net.protocol.http.d$2@1e677aca
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy selector returns:ro.sync.net.protocol.http.d$2@1e677aca
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Detected system proxies for:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/ is:[DIRECT]
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.d - Get proxy data returns null for:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.b.i - Init proxy for:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.b.i - Proxy data:null
19765 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.b.i - Init credentials from:http://someuser:somepasswd@cloud.ditaworks.com/WorkplaceXT/webdav/
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.PoolingClientConnectionManager - Connection request: [route: {}->http://cloud.ditaworks.com][total kept alive: 3; route allocated: 1 of 20; total allocated: 3 of 100]
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.PoolingClientConnectionManager - Connection leased: [id: 2][route: {}->http://cloud.ditaworks.com][total kept alive: 2; route allocated: 1 of 20; total allocated: 3 of 100]
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - Stale connection check
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.client.protocol.RequestAddCookies - CookieSpec selected: best-match
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.client.protocol.RequestAddCookies - Cookie [version: 0][name: JSESSIONID][value: 0000VV691L2Z8XbMU5fcZ_PuzmL:-1][domain: cloud.ditaworks.com][path: /][expiry: null] match [cloud.ditaworks.com:80/WorkplaceXT/webdav/]
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.client.protocol.RequestTargetAuthentication - Target auth state: UNCHALLENGED
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.client.protocol.RequestProxyAuthentication - Proxy auth state: UNCHALLENGED
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - Attempt 1 to execute request
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.DefaultClientConnection - Sending request: PROPFIND /WorkplaceXT/webdav/ HTTP/1.1
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "PROPFIND /WorkplaceXT/webdav/ HTTP/1.1[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Content-Type: text/xml; charset=utf-8[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Depth: 1[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Content-Length: 190[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Host: cloud.ditaworks.com[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Connection: Keep-Alive[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "User-Agent: Oxygen XML Editor/15.2[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Cookie: JSESSIONID=0000VV691L2Z8XbMU5fcZ_PuzmL:-1[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "Cookie2: $Version=1[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "[\r][\n]"
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> PROPFIND /WorkplaceXT/webdav/ HTTP/1.1
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Content-Type: text/xml; charset=utf-8
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Depth: 1
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Content-Length: 190
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Host: cloud.ditaworks.com
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Connection: Keep-Alive
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> User-Agent: Oxygen XML Editor/15.2
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Cookie: JSESSIONID=0000VV691L2Z8XbMU5fcZ_PuzmL:-1
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - >> Cookie2: $Version=1
19765 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - >> "<?xml version="1.0" encoding="utf-8" ?><D:propfind xmlns:D="DAV:"><D:prop><D:getlastmodified/><D:getcontentlength/><D:resourcetype/><D:supportedlock/><D:lockdiscovery/></D:prop></D:propfind>"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "HTTP/1.1 401 Unauthorized[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Date: Tue, 20 May 2014 09:59:15 GMT[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "WWW-Authenticate: Basic[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Content-Language: en-US[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Content-Length: 0[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Keep-Alive: timeout=15, max=99[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Connection: Keep-Alive[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "Content-Type: text/plain[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.wire - << "[\r][\n]"
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.DefaultClientConnection - Receiving response: HTTP/1.1 401 Unauthorized
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << HTTP/1.1 401 Unauthorized
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Date: Tue, 20 May 2014 09:59:15 GMT
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << WWW-Authenticate: Basic
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Content-Language: en-US
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Content-Length: 0
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Keep-Alive: timeout=15, max=99
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Connection: Keep-Alive
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.headers - << Content-Type: text/plain
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - Connection can be kept alive for 15000 MILLISECONDS
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - Authentication required
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - cloud.ditaworks.com:80 requested authentication
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.TargetAuthenticationStrategy - Authentication schemes in the order of preference: [NTLM, negotiate, Kerberos, Digest, Basic]
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.TargetAuthenticationStrategy - Challenge for NTLM authentication scheme not available
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.TargetAuthenticationStrategy - Challenge for negotiate authentication scheme not available
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.TargetAuthenticationStrategy - Challenge for Kerberos authentication scheme not available
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.client.TargetAuthenticationStrategy - Challenge for Digest authentication scheme not available
19859 WARN [ AWT-EventQueue-0 ] org.apache.http.impl.client.DefaultHttpClient - Malformed challenge: Authentication challenge is empty
19859 DEBUG [ AWT-EventQueue-0 ] ro.sync.net.protocol.http.b.c - Server responded: 401
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.PoolingClientConnectionManager - Connection [id: 2][route: {}->http://cloud.ditaworks.com] can be kept alive for 15000 MILLISECONDS
19859 DEBUG [ AWT-EventQueue-0 ] org.apache.http.impl.conn.PoolingClientConnectionManager - Connection released: [id: 2][route: {}->http://cloud.ditaworks.com][total kept alive: 3; route allocated: 1 of 20; total allocated: 3 of 100]
19859 DEBUG [ AWT-EventQueue-0 ] ro.sync.fsv.d - ro.sync.net.protocol.http.HttpExceptionWithDetails: 401 Unauthorized for: http://cloud.ditaworks.com/WorkplaceXT/webdav/
ro.sync.net.protocol.http.HttpExceptionWithDetails: 401 Unauthorized for: http://cloud.ditaworks.com/WorkplaceXT/webdav/
at ro.sync.net.protocol.http.b.c.x(Unknown Source)
at ro.sync.net.protocol.http.b.c.f(Unknown Source)
at ro.sync.net.protocol.http.c.n.o(Unknown Source)
at ro.sync.net.protocol.http.c.n.d(Unknown Source)
at ro.sync.fsv.f.rb(Unknown Source)
at ro.sync.fsv.f.h(Unknown Source)
at ro.sync.fsv.d.j(Unknown Source)
at ro.sync.fsv.d.getChildCount(Unknown Source)
at javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.expand(Unknown Source)
at javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.expand(Unknown Source)
at javax.swing.tree.VariableHeightLayoutCache.rebuild(Unknown Source)
at javax.swing.tree.VariableHeightLayoutCache.setModel(Unknown Source)
at javax.swing.plaf.basic.BasicTreeUI.setModel(Unknown Source)
at javax.swing.plaf.basic.BasicTreeUI$Handler.propertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.fire(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at javax.swing.JTree.setModel(Unknown Source)
at ro.sync.fsv.s.jec(Unknown Source)
at ro.sync.fsv.o$7$2.run(Unknown Source)
at ro.sync.ui.m$1.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at ro.sync.ui.application.ApplicationDialog.pk(Unknown Source)
at ro.sync.ui.application.ApplicationDialog.setVisible(Unknown Source)
at ro.sync.ui.application.bc.setVisible(Unknown Source)
at ro.sync.fsv.o.tfc(Unknown Source)
at ro.sync.fsv.o.cgc(Unknown Source)
at ro.sync.fsv.o.yfc(Unknown Source)
at ro.sync.exml.e.d$11.run(Unknown Source)
at ro.sync.ui.m$1.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Maybe our WEBDAV server settings have to be re-configured. Can you suggest what exact settings (for example, SSL) needs to be correctly setup?
Radu
Posts: 9055
Joined: Fri Jul 09, 2004 5:18 pm

Re: WEBDAV: Authentication failed!

Post by Radu »

Hi Yuri,

Are you using the standalone Oxygen version or the Oxygen plugin for Eclipse?
What version of Oxygen are you using?
If you go to the Oxygen Preferences->Network Connection Settings / HTTP(S)/WebDAV page and change the internal used HTTP Client to v3 do you obtain the same behavior?
Could you perhaps make available for us a public Webdav test account for a few hours in order to add more debug information and reproduce the issue on our side?

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
yury.eroshenkov
Posts: 34
Joined: Mon Jun 03, 2013 2:17 pm

Re: WEBDAV: Authentication failed!

Post by yury.eroshenkov »

Hi Radu,
Thank you for reply. We are using a standalone Oxygen Editor v15.2 (v16 we also tried - the same). Switching HTTP Client to v3 also doesn't solve the problem.
I can provide an access to our webdav server. I'll send an access on support@oxygen.com.
Thank you!
Radu
Posts: 9055
Joined: Fri Jul 09, 2004 5:18 pm

Re: WEBDAV: Authentication failed!

Post by Radu »

Hi Yuri,

The email address you wanted to use "support@oxygen.com" does not belong to us.
Our support email address is support@oxygenxml.com

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
yury.eroshenkov
Posts: 34
Joined: Mon Jun 03, 2013 2:17 pm

Re: WEBDAV: Authentication failed!

Post by yury.eroshenkov »

Hi Radu!
Thank you for your efforts, but the problem is solved.
In the WWW-Auth header the realm attr was not set. Now we are putting this realm param via apache server.
Thank you!
Radu
Posts: 9055
Joined: Fri Jul 09, 2004 5:18 pm

Re: WEBDAV: Authentication failed!

Post by Radu »

Hi Yuri,

Exactly, we found out exactly the same thing, our HTTP client (Apache HTTP Client) expects a realm to be set in the WWW-Auth header. We'll look at the spec and if it is not a required field we'll try to add a ticket to the Apache HTTP Client library issues list.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
Post Reply