This is the expected behavior when authentication fails, what were you expecting to happen? ARQ specifically does not attempt
What version of ARQ is this? --- If you are using ARQ 2.10.1 then it has a known bug with authentication for updates not working correctly - https://issues.apache.org/jira/browse/JENA-475 - the functionality is just broken. If this is the case then you can try using the latest dev SNAPSHOTS (2.11.0-SNAPSHOT) which contain fixes for this issue and other authentication improvements. --- If you are using a dev snapshot (2.10.2-SNAPSHOT / 2.11.0-SNAPSHOT - note the Jena team bumped the dev versions numbers this week) then it is likely a user error or a server bug. You appear to have supplied credentials but they are presumably incorrect since the server has returned 403 Forbidden. Either that or the server is not doing HTTP challenge response properly which would be a server bug. If the latter is true and you are using basic auth you can work around the server bug by forcing preemptive authentication - see http://jena.staging.apache.org/documentation/query/http-auth.html for more information on the new authentication framework used in current ARQ dev versions. It's also worth nothing that the dev code now does all HTTP through Apache HTTP client so if you configure logging for the org.apache.http package to the DEBUG level you can see detailed HTTP traces of the communication between ARQ and the server. --- Rob On 8/30/13 7:16 AM, "Arthur Vaïsse-Lesteven" <[email protected]> wrote: >Hi, > >It seem that an error occurs when a proxy/server send a 403 HTTP status >code in response to a SPARQL query. > >Stack trace begins by : > >org.apache.jena.atlas.web.HttpException: 403 - Forbidden > at org.apache.jena.riot.web.HttpOp.exec(HttpOp.java:961) > at org.apache.jena.riot.web.HttpOp.execHttpPostForm(HttpOp.java:711) > at >com.hp.hpl.jena.sparql.modify.UpdateProcessRemoteForm.execute(UpdateProces >sRemoteForm.java:88) > ... > >The code call done before this error is : > >[...] > > UpdateRequest update = UpdateFactory.create(query); > UpdateProcessRemoteForm updateExecution = >(UpdateProcessRemoteForm) UpdateExecutionFactory.createRemoteForm(update, >update_endpoint_ip); > updateExecution.setAuthentication(user_id, >user_pwd.toCharArray()); > updateExecution.execute(); >[...] >A possible fix may be the throw of a new ARQ exception in case of >HTTPError reception. > >VAÏSSE-LESTEVEN Arthur.
