Liferay XForms-使用Portlet的单独部署无法加载资源

Liferay XForms-使用Portlet的单独部署无法加载资源,liferay,portlet,orbeon,xforms,Liferay,Portlet,Orbeon,Xforms,过滤后的xform资源(javascript、css和图像)存在问题。我们尝试在liferay portlet中使用OrbeonPortletXFormsFilter和Trampoline servlet来显示xform,将整个表单写入响应,或者使用request.setAttribute(“oxf.xforms.renderer.document”,xformXml)。结果是相同的-表单被呈现,但javascript和CSS没有找到,所有表单都是分散的。表单操作也不起作用。多谢各位 我的配置:

过滤后的xform资源(javascript、css和图像)存在问题。我们尝试在liferay portlet中使用OrbeonPortletXFormsFilter和Trampoline servlet来显示xform,将整个表单写入响应,或者使用request.setAttribute(“oxf.xforms.renderer.document”,xformXml)。结果是相同的-表单被呈现,但javascript和CSS没有找到,所有表单都是分散的。表单操作也不起作用。多谢各位

我的配置:

portlet.xml

    <portlet>
        <portlet-name>xForm-portlet</portlet-name>
        <portlet-class>com.xform.XFormPortlet</portlet-class>
        <init-param>
            <name>oxf.main-processor.name</name>
            <value>{http://www.orbeon.com/oxf/processors}pipeline</value>
        </init-param>
        <init-param>
            <name>oxf.main-processor.input.config</name>
            <value>oxf:/config/prologue-portlet.xpl</value>
        </init-param>
        <init-param>
            <name>oxf.error-processor.name</name>
            <value>{http://www.orbeon.com/oxf/processors}pipeline</value>
        </init-param>
        <init-param>
            <name>oxf.error-processor.input.config</name>
            <value>oxf:/config/error.xpl</value>
        </init-param>
        <supports>
            <mime-type>text/html</mime-type>
            <portlet-mode>view</portlet-mode>
        </supports>
        <portlet-info>
            <title>Xform Portlet</title>
        </portlet-info>
    </portlet>
<filter>
    <filter-name>orbeon-forms-portlet-xforms-filter</filter-name>
    <filter-class>org.orbeon.oxf.portlet.OrbeonPortletXFormsFilter</filter-class>
    <lifecycle>RENDER_PHASE</lifecycle>
    <lifecycle>ACTION_PHASE</lifecycle>
    <lifecycle>RESOURCE_PHASE</lifecycle>
    <init-param>
        <name>oxf.xforms.renderer.context</name>
        <value>/orbeon</value>
    </init-param>
</filter>   
<!-- Map the Orbeon portlet XForms filter -->
<filter-mapping>
<filter-name>orbeon-forms-portlet-xforms-filter</filter-name>
    <portlet-name>xForm-portlet</portlet-name>
</filter-mapping>    

XFormportlet
com.xform.XFormPortlet
oxf.main-processor.name
{http://www.orbeon.com/oxf/processors}管道
oxf.main-processor.input.config
oxf:/config/prologue-portlet.xpl
oxf.error-processor.name
{http://www.orbeon.com/oxf/processors}管道
oxf.error-processor.input.config
oxf:/config/error.xpl
文本/html
看法
XFormportlet
orbeon表单portlet xforms过滤器
org.orbeon.oxf.portlet.OrbeonPortletXFormsFilter
渲染相位
行动阶段
资源分配阶段
oxf.xforms.renderer.context
/奥本
orbeon表单portlet xforms过滤器
XFormportlet
web.xml

<filter>
    <filter-name>orbeon-xforms-filter</filter-name>
    <filter-class>org.orbeon.oxf.servlet.OrbeonXFormsFilter</filter-class>
    <init-param>
      <param-name>oxf.xforms.renderer.context</param-name>
      <param-value>/orbeon</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>orbeon-xforms-filter</filter-name>
    <url-pattern>/orbeon/*</url-pattern>
  </filter-mapping>

 <servlet>
    <servlet-name>orbeon-trampoline-servlet</servlet-name>
    <servlet-class>org.orbeon.oxf.portlet.OrbeonTrampolineServlet</servlet-class>
    <init-param>
      <param-name>oxf.xforms.renderer.context</param-name>
      <param-value>/orbeon</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>orbeon-trampoline-servlet</servlet-name>
    <url-pattern>/xforms-trampoline</url-pattern>
  </servlet-mapping>

orbeon xforms过滤器
org.orbeon.oxf.servlet.OrbeonXFormsFilter
oxf.xforms.renderer.context
/奥本
orbeon xforms过滤器
/奥本/*
奥本蹦床
org.orbeon.oxf.portlet.OrbeonTrampolineServlet
oxf.xforms.renderer.context
/奥本
1.
奥本蹦床
/xforms蹦床

此时的答案是,此功能不适用于Orbeon Forms 4.0。已输入。

这可能是一个或多个错误,因为Orbeon Forms 4.0尚未开发该特定功能。我们没有太多地关注这个特性,因为我们真的希望鼓励使用FormRunner(无论是独立的、作为完整portlet还是作为代理portlet)。但是如果我理解的很好,您选择了编写完全定制XForms的方法吗?有没有办法改用Form Builder/Form Runner?