Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aether-users] 403 when deploying to non-existent webdav child folder

Sorry for bothering again. It seems that there is some issue on my server-side which I don't know how to fix. Maybe you have an idea where to look at and how to fix this.

I'm trying to deploy certain artifacts to a remote repository. This works well if all folders on the server-side already exist but fails if (for instance) the version folder does not. For instance, when pushing an artifact to http://vandyk.st.informatik.tu-darmstadt.de/maven/ar/com/tadp/prolog/ar.com.tadp.prolog/1.0.0/ar.com.tadp.prolog-1.0.0-cr-calls.zip it fails with 403 since the folder 1.0.0 does not exist. If I create the folders manually before it works propoerly.

Also, when using a local file system repository, all folders are created without any exception. Hint's on how to fix this are greatly appreciated. Otherwise, I'd create the required folders per puts before (but this is probably not the way how to do it)

Thanks a lot,
Marcel


The repository system is initialized with:

system = new DefaultPlexusContainer().lookup(RepositorySystem.class);


and artifacts are deployed using the code given in your examples repository:

public void deploy(Artifact artifact, Artifact pom) throws DeploymentException {
        RepositorySystemSession session = newSession();

        // Authentication authentication = new Authentication("admin", "admin123");
        // nexus.setAuthentication(authentication);

        DeployRequest deployRequest = new DeployRequest();
        deployRequest.addArtifact(artifact).addArtifact(pom);
        deployRequest.setRepository(remote);

        system.deploy(session, deployRequest);
    }

The artifacts used as input to deploy() are created as follows:


Artifact modelArtifact = ModelRepository.newArtifact(coordinate);
modelArtifact = modelArtifact.setFile(out);

Artifact pomArtifact = ModelRepository.newArtifact(groupId + ":" + artifactId + ":pom:" + minVersion);
File pomFile = File.createTempFile("some-pom.", ".xml");
Files.write(Poms.newPom(groupId, artifactId, minVersion.toString()), pomFile, Charsets.UTF_8);
pomArtifact = pomArtifact.setFile(pomFile);
repo.install(modelArtifact, pomArtifact);
repo.deploy(modelArtifact, pomArtifact);


Exception in thread "main" org.sonatype.aether.deployment.DeploymentException: Failed to deploy artifacts: Could not transfer artifact ar.com.tadp.prolog:ar.com.tadp.prolog:zip:cr-calls:1.0.0 from/to recommenders (http://vandyk.st.informatik.tu-darmstadt.de/maven/): Access denied to http://vandyk.st.informatik.tu-darmstadt.de/maven/ar/com/tadp/prolog/ar.com.tadp.prolog/1.0.0/ar.com.tadp.prolog-1.0.0-cr-calls.zip. Error code 403, Forbidden
	at org.sonatype.aether.impl.internal.DefaultDeployer.deploy(DefaultDeployer.java:284)
	at org.sonatype.aether.impl.internal.DefaultDeployer.deploy(DefaultDeployer.java:215)
	at org.sonatype.aether.impl.internal.DefaultRepositorySystem.deploy(DefaultRepositorySystem.java:480)
	at org.eclipse.recommenders.internal.rcp.repo.ModelRepository.deploy(ModelRepository.java:237)
	at cc.recommenders.models.index.Indexer.main(Indexer.java:84)
Caused by: org.sonatype.aether.transfer.ArtifactTransferException: Could not transfer artifact ar.com.tadp.prolog:ar.com.tadp.prolog:zip:cr-calls:1.0.0 from/to recommenders (http://vandyk.st.informatik.tu-darmstadt.de/maven/): Access denied to http://vandyk.st.informatik.tu-darmstadt.de/maven/ar/com/tadp/prolog/ar.com.tadp.prolog/1.0.0/ar.com.tadp.prolog-1.0.0-cr-calls.zip. Error code 403, Forbidden
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector$3.wrap(AsyncRepositoryConnector.java:1426)
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector$3.wrap(AsyncRepositoryConnector.java:1417)
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector$PutTask.flush(AsyncRepositoryConnector.java:1065)
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector.put(AsyncRepositoryConnector.java:337)
	at org.sonatype.aether.impl.internal.DefaultDeployer.deploy(DefaultDeployer.java:278)
	... 4 more
Caused by: org.sonatype.aether.connector.async.AuthorizationException: Access denied to http://vandyk.st.informatik.tu-darmstadt.de/maven/ar/com/tadp/prolog/ar.com.tadp.prolog/1.0.0/ar.com.tadp.prolog-1.0.0-cr-calls.zip. Error code 403, Forbidden
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector.handleResponseCode(AsyncRepositoryConnector.java:361)
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector.access$1600(AsyncRepositoryConnector.java:89)
	at org.sonatype.aether.connector.async.AsyncRepositoryConnector$PutTask$1.onCompleted(AsyncRepositoryConnector.java:996)
	at org.sonatype.aether.connector.async.CompletionHandler.onCompleted(CompletionHandler.java:163)
	at org.sonatype.aether.connector.async.CompletionHandler.onCompleted(CompletionHandler.java:42)
	at com.ning.http.client.providers.netty.NettyResponseFuture.getContent(NettyResponseFuture.java:235)
	at com.ning.http.client.providers.netty.NettyResponseFuture.done(NettyResponseFuture.java:258)
	at com.ning.http.client.providers.netty.NettyAsyncHttpProvider.markAsDoneAndCacheConnection(NettyAsyncHttpProvider.java:1407)
	at com.ning.http.client.providers.netty.NettyAsyncHttpProvider.finishUpdate(NettyAsyncHttpProvider.java:1428)
	at com.ning.http.client.providers.netty.NettyAsyncHttpProvider.messageReceived(NettyAsyncHttpProvider.java:1181)
	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
	at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
	at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleUpstream(ChunkedWriteHandler.java:148)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
	at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
	at org.jboss.netty.handler.codec.http.HttpContentDecoder.messageReceived(HttpContentDecoder.java:104)
	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
	at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)
	at org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndfireMessageReceived(ReplayingDecoder.java:522)
	at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:506)
	at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:443)
	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
	at org.jboss.netty.handler.codec.http.HttpClientCodec.handleUpstream(HttpClientCodec.java:77)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)
	at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:349)
	at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:280)
	at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:200)
	at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
	at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)



Back to the top