commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan \"Rambius\" Ivanov" <rambiusparkisan...@yahoo.com>
Subject Building commons-vfs with httpclient 3.0
Date Tue, 20 Nov 2007 05:53:05 GMT
Hello,

I am using Commons-VFS with Ivy the dependency manager
to build and access a webdav repository for my java
artifacts and Ivy is using httpclient 3.0. I bumped
into a problem that can be classified as neither Ivy
nor Commons-VFS; it is more or less an integration
problem.

Ivy is using httpclient 3.0 and commons-vfs is using
httpclient 2.0. Commons-vfs does not work and does not
compile with httpclient-3.0. I already described this
problem to the Ivy mailing list, see [0].

In short, when I try to compile commons-vfs with
httpclient 3.0 I receive the following error:

    [javac]
C:\install\apache\commons\vfs\vfs-trunk\core\src\main\java\org\apache\commons\vfs\provider\http\ThreadLocalHttpConnectionManager.java:25:
org.apache.commons.vfs.provider.http.ThreadLocalHttpConnectionManager
is not abstract and does not override abstract method
setParams(org.apache.commons.httpclient.params.HttpConnectionManagerParams)
in org.apache.commons.httpclient.HttpConnectionManager
    [javac] public class
ThreadLocalHttpConnectionManager implements
HttpConnectionManager

During runtime, when I tried to use commons-vfs 1.0
with httpclient 3.0 I received this exception:

java.lang.AbstractMethodError
	at
org.apache.commons.httpclient.HttpClient.setHttpConnectionManager(HttpClient.java:472)
	at
org.apache.commons.vfs.provider.webdav.WebdavClientFactory.createConnection(WebdavClientFactory.java:107)
	at
org.apache.commons.vfs.provider.webdav.WebdavFileProvider.doCreateFileSystem(WebdavFileProvider.java:86)
	at
org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:81)
	at
org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:62)
	at
org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:641)
	at
org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:602)
	at
org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:570)
	at
org.apache.ivy.plugins.repository.vfs.VfsResource.init(VfsResource.java:64)
	at
org.apache.ivy.plugins.repository.vfs.VfsResource.physicallyExists(VfsResource.java:181)
	at
org.apache.ivy.plugins.repository.vfs.VfsRepository.put(VfsRepository.java:204)
	at
org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:130)
	at
org.apache.ivy.plugins.resolver.RepositoryResolver.put(RepositoryResolver.java:174)
	at
org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:168)
	at
org.apache.ivy.core.publish.PublishEngine.publish(PublishEngine.java:221)
	at
org.apache.ivy.core.publish.PublishEngine.publish(PublishEngine.java:188)
	at
org.apache.ivy.core.publish.PublishEngine.publish(PublishEngine.java:152)
	at org.apache.ivy.Ivy.publish(Ivy.java:320)
	at
org.apache.ivy.ant.IvyPublish.doExecute(IvyPublish.java:299)
	at
org.apache.ivy.ant.IvyTask.execute(IvyTask.java:281)
	at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
	at org.apache.tools.ant.Task.perform(Task.java:364)
	at
org.apache.tools.ant.Target.execute(Target.java:341)
	at
org.apache.tools.ant.Target.performTasks(Target.java:369)
	at
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
	at
org.apache.tools.ant.Project.executeTarget(Project.java:1185)
	at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
	at
org.apache.tools.ant.Project.executeTargets(Project.java:1068)
	at org.apache.tools.ant.Main.runBuild(Main.java:668)
	at org.apache.tools.ant.Main.startAnt(Main.java:187)
	at
org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
	at
org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)

I have the following questions:
-) Do you plan to upgrade commons-vfs use to
httpclient 3.x? I understand that such an upgrade may
not be easy or you may be occupied with other more
important tasks, so I would like to try this upgrade
myself, but:

-) In order to compile commons-vfs I hardcoded
httpclient 3.0 in vfs's build.xml. I would like to use
maven in order to build it, but even if I change the
version of httpclient to 3.0 in vfs's project.xml, it
still uses httpclient 2.0.2. Can you tell me how
upgrade httpclient in the maven build?

Regard
Rambius

[0]http://mail-archives.apache.org/mod_mbox/incubator-ivy-user/200711.mbox/browser


Tangra Mega Rock: http://www.radiotangra.com/


      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message