代码之家  ›  专栏  ›  技术社区  ›  Jakub

在Liferay 5.2下运行ColdFusion 9以服务Portlet时出错

  •  0
  • Jakub  · 技术社区  · 15 年前

    所以这一切都是从尝试让ColdFusion9 portlet在Liferay下运行开始的,就像我看到的运行jboss的例子一样: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSC00E3E9C-DC24-4488-930D-AEED19172CC5.html

    我遵循了这些步骤,但我的应用服务器将是Tomcat5.5(捆绑的w Liferay 5.2.3)。

    我想从ColdFusion创建一个portlet(从HelloWorld开始)。

    安装 cfusion 很好,我创造了 WAR 文件,并将其扔到Liferay的“hot depolly”目录中,然后将其复制,并毫无错误地集成到Liferay安装中。

    我按照jboss示例中的步骤重新启动了Liferay服务器(在复制了 .cfc 归档到正确的位置。

    但是,在启动Liferay之后,在启动过程中出现以下错误:

    21:04:33,648 INFO  [PluginPackageUtil:1153] Reloading repositories
    21:06:06,510 INFO  [PortletHotDeployListener:227] Registering portlets for cfusion
    javax.portlet.PortletException: javax.servlet.ServletException: ClassloaderHelper not initialized properly. Call ClassloaderHelper.init
    (ServletContext) before using this class
            at coldfusion.portlet.ColdFusionPortlet.invokeCFC(ColdFusionPortlet.java:123)
            at coldfusion.portlet.ColdFusionPortlet.init(ColdFusionPortlet.java:67)
            at com.liferay.portlet.InvokerPortletImpl.init(InvokerPortletImpl.java:250)
            at com.liferay.portlet.PortletInstanceFactoryImpl.init(PortletInstanceFactoryImpl.java:245)
            at com.liferay.portlet.PortletInstanceFactoryImpl.create(PortletInstanceFactoryImpl.java:135)
            at com.liferay.portlet.PortletInstanceFactoryUtil.create(PortletInstanceFactoryUtil.java:47)
            at com.liferay.portal.deploy.hot.PortletHotDeployListener.initPortlet(PortletHotDeployListener.java:660)
            at com.liferay.portal.deploy.hot.PortletHotDeployListener.doInvokeDeploy(PortletHotDeployListener.java:250)
            at com.liferay.portal.deploy.hot.PortletHotDeployListener.invokeDeploy(PortletHotDeployListener.java:127)
            at com.liferay.portal.kernel.deploy.hot.HotDeployUtil._doFireDeployEvent(HotDeployUtil.java:108)
            at com.liferay.portal.kernel.deploy.hot.HotDeployUtil._fireDeployEvent(HotDeployUtil.java:153)
            at com.liferay.portal.kernel.deploy.hot.HotDeployUtil.fireDeployEvent(HotDeployUtil.java:43)
            at com.liferay.portal.kernel.servlet.PortletContextListener.portalInit(PortletContextListener.java:113)
            at com.liferay.portal.kernel.util.PortalInitableUtil.init(PortalInitableUtil.java:48)
            at com.liferay.portal.kernel.servlet.PortletContextListener.contextInitialized(PortletContextListener.java:109)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764)
            at org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
            at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
            at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
            at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
            at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:927)
            at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:890)
            at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
            at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1150)
            at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
            at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
            at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
            at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
            at org.apache.catalina.core.StandardService.start(StandardService.java:448)
            at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
    Caused by: javax.servlet.ServletException: ClassloaderHelper not initialized properly. Call ClassloaderHelper.init(ServletContext) befo
    re using this class
            at coldfusion.bootstrap.ClassloaderHelper.testInit(ClassloaderHelper.java:73)
            at coldfusion.bootstrap.ClassloaderHelper.getClassLoader(ClassloaderHelper.java:178)
            at coldfusion.portlet.ColdFusionPortlet.invokeCFC(ColdFusionPortlet.java:120)
            ... 38 more
    21:06:07,135 INFO  [PortletHotDeployListener:346] 1 portlet for cfusion is available for use
    11/16 21:06:07 INFO License Service: Flex 1.5 CF Edition enabled
    11/16 21:06:07 INFO Starting Flex 1.5 CF Edition
    11/16 21:06:08 Information [main] - C:\chicago\liferay-portal-tomcat-5.5-5.2.3\tomcat-5.5.27\temp\0-cfusion\WEB-INF\cfusion\logs\server
    .log initialized
    11/16 21:06:08 Information [main] - Starting logging...
    11/16 21:06:08 Information [main] - Starting license...
    11/16 21:06:09 Information [main] - Invalid ColdFusion 9 license.
    

    现在,我只想在Liferay上设置一个portlet(这个portlet出现了!耶!)。但是,只有portlet的标题才会显示,正文是一条错误消息: The requested resource (/cfusion/ColdFusionPortlet/invoke) is not available

    现在我似乎找不到解决这个问题的方法… 我在谷歌上搜索了好几份文件,没有人提到这类错误。当然,Liferay.com社区很安静,那里的论坛上没有冷融合对话。所以我想我会和所有在某某的人核实一下。

    有人吗?思想?

    1 回复  |  直到 15 年前
        1
  •  0
  •   Jakub    15 年前

    像我一样 关于我的问题的反馈,我决定自己更新我发现的内容。

    如果需要运行此安装程序,请获取LifeRay的jboss/tomcat版本,因为ColdFusion 9打算在jboss下运行(以这种方式服务portlet)。

    我也在liferay.com上发布了这个问题,这里是它的链接引用,我有一个用户更新了我,帮助我解决了portlet问题,使用jboss让我走到了最后一步。

    Liferay.com参考:

    http://www.liferay.com/web/guest/community/forums/-/message_boards/message/4369312#_19_message_4287472

    Liferay.com jboss捆绑包下载:

    http://www.liferay.com/web/guest/downloads/portal

    希望将来有人决定去ColdFusion 9+Liferay路线时能帮上忙。享受!