FUSE ESB,hibernate,mysql

时间:2012-03-01 13:15:13

标签: java hibernate cxf fuseesb jbossfuse

我正在构建cxf应用程序,它将在FUSE ESB下运行。

通常我只为交换数据创建应用程序,但现在我必须创建与mysql连接的应用程序。

我已经开始在cxf下构建配置,但我发现了一个问题。

当我添加课程时:

com.mchange.v2.c3p0

到我的<Import-Package>我的应用程序消除了FUSE ESB上的可用cxf应用程序。

 <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <version>2.1.0</version>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
                    <Import-Package>
                       ......

                        com.mchange.v2.c3p0,
                      ......
                       <DynamicImport-Package>...</DynamicImport-Package>

                </instructions>
            </configuration>
        </plugin>

当我从pom.xml中删除com.mchange.v2.c3p0时,应用程序会显示。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我猜你的包没有被启动,因为无法解析com.mchange.v2.c3p0依赖。默认情况下,FuseESB不包含C3P0依赖项,因此您需要将它们包含在项目中或将它们作为单独的包部署。

如果您在自己的捆绑包中提供依赖项,则必须导出c3p0包或将它们添加为私有包。像这样的东西

   ...
   <Private-Package>
      ...
      com.mchange.*
      ...
    </Private-Package>
    ...

当然你需要在你的pom中为c3p0添加maven依赖。

无论如何,你应该阅读Lukasz的博客文章。