IBM Worklight v6.0-“创建 URL 中定义的名称为‘taskManager’的 bean 时出错”

Posted

技术标签:

【中文标题】IBM Worklight v6.0-“创建 URL 中定义的名称为‘taskManager’的 bean 时出错”【英文标题】:IBM Worklight v6.0- "Error creating bean with name 'taskManager' defined in URL" 【发布时间】:2013-07-03 07:32:14 【问题描述】:

我正在使用 Eclipse Juno 4.2.2 并通过 Eclipse Marketplace 安装了 Worklight V6.0 Developer Eition。

我正在使用 Oracle 11G 在 Tomcat 7 上运行 Worklight V6.0。

对于 Worklight,我创建了三个数据库,即 WRKLGHTWLREPORTAPPCNTR,并为其创建了一个用户。

context.xml 的内容

   <Context>
     <Resource auth="Container" 
               driverClassName="oracle.jdbc.driver.OracleDriver" 
               name="jdbc/WorklightDS" 
               password="worklight" 
               type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521/WRKLGHT"   username="worklight"/>
        <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" name="jdbc/WorklightReportsDS" password="worklight" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521/WLREPORT" username="worklight"/>
        <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" name="jdbc/AppCenterDS" password="worklight" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521/APPCNTR" username="worklight"/>
    </Context>

Tomcat 的 web.xml

    <resource-ref>
      <res-ref-name>jdbc/WorklightDS</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
    </resource-ref>
    <resource-ref>
      <res-ref-name>jdbc/WorklightReportsDS</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
    </resource-ref>

worklight.properties wl.db.type=ORACLE wl.db.url=jdbc:oracle:thin:@localhost:1521:WRKLGHT wl.db.username=工作灯 wl.db.password=工作灯 wl.reports.db.url=jdbc:oracle:thin:@localhost:1521:WLREPORT wl.reports.db.username=worklight wl.reports.db.password=工作灯 报告.exportRawData=true

还更新了publicWorkLightContextpublicWorkLightPort

将 worklight-jee.jar 放在 tomcat lib 上,将 ojdbc14.jar 放在项目的 claspath 上。

然后尝试在tomcat上部署project.war文件。

我收到以下错误:

严重:FWLST0003E:========= 启动项目 /SOMApprovalDemo [项目 SOMApprovalDemo] 失败 org.springframework.beans.factory.BeanCreationException: 在 URL [jar:file:/C:/Users/IBM_ADMIN/TemdemoWorkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/lib/worklight-jee- 中定义名称为“taskManager”的 bean 创建错误library-6.0.0.jar!/conf/core.xml]

任何帮助将不胜感激

【问题讨论】:

【参考方案1】:

我在 worklight.properties 中看到以下行: wl.db.type=ORACLEwl.db.url=jdbc:oracle:thin:@localhost:1521:WRKLGHT

有两条线连接到一条。这是论坛帖子错字吗?或者这是真正的文件连接。 应该: wl.db.type=ORACLE wl.db.url=jdbc:oracle:thin:@localhost:1521:WRKLGHT

并且不要忘记删除包含以下内容的行:wl.db.jndi.name=... (您必须决定:是使用 JNDI 还是使用 JDBC 数据库连接)。

第二个更重要的问题: 您在这里为两个不同的工作灯版本(5.0.6 和 6.0.0)滥用同一服务器。 您确定您从 Eclipse 市场下载了 Worklight v5.0.6 插件吗? (我怀疑你已经下载了 v6.0) 如果是,它可能会非常混乱且容易出错。 我强烈建议您为 5.0.6 测试安装一个单独的 Tomcat 实例,为 6.0.0 测试安装另一个。 (或者简单地将所有旧的 Worklight eclipse 项目迁移到 v6.0.0 上) 现在,您正尝试在同一个 Tomcat 上使用 Worklight Studio v6.0.0 运行 Worklight v5.0.6。

【讨论】:

您好,对于 forum.wl.db.type=ORACLE wl.db.url=jdbc:oracle:thin:@localhost:1521:WRKLGHT 中的拼写错误很抱歉

以上是关于IBM Worklight v6.0-“创建 URL 中定义的名称为‘taskManager’的 bean 时出错”的主要内容,如果未能解决你的问题,请参考以下文章

IBM Worklight 5.0.6.1 - 安装 5.0.6.1 修订包后,Studio 版本为 v6.0 而不是 v5.0.6.1

Worklight - 如何使用 IBM Worklight Tabbar API?

IBM Worklight 6.0 - 内容根目录和本地 Worklight 服务器设置

IBM Worklight - 啥是 Worklight 服务器?

安装 IBM Worklight Server

IBM Worklight 6.0 - 添加 Worklight 文件条目选项时遇到问题