WSO2 ESB 4.6.0类路径问题:无法找到httpclient类

时间:2014-01-07 14:31:00

标签: wso2 wso2esb

在WSO2ESB 4.6.0上,我想部署一个依赖redmine-java-api版本1.23的服务。当我查看库的maven依赖项时,我发现它需要httpclient 4.2。虽然,我将httpclient jar放在$ESB_HOME/repository/components/lib文件夹中,但我得到了例外:

java.lang.ClassNotFoundException: org.apache.http.impl.conn.PoolingClientConnectionManager

在jar中,有一个名为org.apache.http.impl.conn的包,该包包含PoolingClientConnectionManager的类定义。

我无法弄清楚问题。可能的解决方案是什么?

2 个答案:

答案 0 :(得分:1)

我不确定确切的解决方案。但是默认情况下,WSO2ESB附带了一个httpclient jar文件。我认为,它是httpclient 4.1.X jar,它不包含“PoolingClientConnectionManager”类。在OSGI运行时,这个jar文件可能被设置为redmine-java-api的依赖项(而不是你的httplclient 4.2)但是你可以通过OSGI控制台启动WSO2ESB来获得一些想法。

  

sh wso2server.sh -DosgiConsole

使用OSGI控制台,检查“org.apache.http.impl.conn”包已经暴露给WSO2ESB的OSGI运行时的jar文件。并且它还会列出使用给定包的所有包。请使用以下命令。

  

包org.apache.http.impl.conn

答案 1 :(得分:0)

您是否已在捆绑包的MANIFEST.INF文件中导入包?