Access Remote Orbeon server

48 views
Skip to first unread message

Sanjana Vanjinathan

unread,
Feb 13, 2024, 1:18:21 PMFeb 13
to Orbeon Forms
Alex,

I would like to connect Orbeon server which is running on different tomcat , (remote server)
From my local application to connect remote server I am getting 404 error.

Regards,
Vanji


Alessandro Vernet

unread,
Feb 14, 2024, 2:52:34 PMFeb 14
to orb...@googlegroups.com
Hi Vanji,

Could you describe your setup in more detail and provide more information about the error you are encountering, including a screenshot of the error and attaching your `orbeon.log`?

-Alex

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orbeon+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/18578ad3-bbb7-4aca-b299-80866a34f661n%40googlegroups.com.

Sanjana Vanjinathan

unread,
Feb 15, 2024, 1:18:19 PMFeb 15
to orb...@googlegroups.com
Alex,

my java web application's web.xml (Java web application -Tomcat1)

    <!-- Declare and configure the Orbeon Forms XForms filter -->
    <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>
    <!-- Any web resource under /xforms-jsp is processed by the XForms engine -->
    <filter-mapping>
        <filter-name>orbeon-xforms-filter</filter-name>
        <url-pattern>/xforms/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
    <!-- This is necessary so that XForms engine resources can be served appropriately -->
    <filter-mapping>
        <filter-name>orbeon-xforms-filter</filter-name>
        <url-pattern>/orbeon/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
    </filter-mapping>

Jmanage settings for access Orbeon: (configuration

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE map SYSTEM "http://java.sun.com/dtd/preferences.dtd">
<map MAP_XML_VERSION="1.0">
  <entry key="OrbeonHost" value="http://localhost:8081"/>
  <entry key="XPathInspector" value="true"/>
</map>



orbeon running on different tomcat server: (Tomcat 2)

<property as="xs:string" name="oxf.xforms.format.input.date" value="[M01]/[D01]/[Y]"/>
    <property as="xs:string" processor-name="oxf:page-flow" name="page-public-methods" value="GET POST"/>
    <property as="xs:string" processor-name="oxf:page-flow" name="service-public-methods" value="GET POST"/>
    <property as="xs:boolean" name="oxf.epilogue.xforms.inspector" value="false"/>
    <property as="xs:string"  name="oxf.http.internal-paths" value="(?!/ws/rs/gw/)(?!/xforms/gw.gs)/.*(?&lt;!\.jsp)"/>
    <property as="xs:boolean" name="oxf.xforms.show-error-dialog" value="false"/>
    <property as="xs:string"  name="oxf.http.forward-cookies" value="JSESSIONID keycloak.gs.session"/>
    <property as="xs:integer" name="oxf.xforms.cache.documents.size" value="70"/>
    <property as="xs:boolean" name="oxf.http.exceptions" value="true"/>
    <property as="xs:string" name="oxf.xforms.function-library" value="org.orbeon.oxf.fr.library.FormRunnerFunctionLibrary"/>
    <property as="xs:anyURI" name="oxf.url-rewriting.service.base-uri" value="http://localhost:8081/orbeon"/>
</properties>


Removed crossContext=true from both server  ( I tried adding too)

[02/14/24 15:50:44] ERROR org.apache.jsp.jsp.common.ServiceException_jsp:
Status code for error:500
type: class java.lang.AssertionError
uri(/gs/xforms/budgetWorksheet.gs)
Request Parameters: ngaId = 1205752; applicationId = 1434259; closeURL = mkRfXBaA;
Error Message:Filter execution threw an exception
[02/14/24 15:50:44] ERROR org.apache.jsp.jsp.common.ServiceException_jsp: Exception thrown to View
java.lang.AssertionError: assertion failed: Can't find Orbeon Forms context called '/orbeon'. Check the 'oxf.xforms.renderer.context' filter initialization parameter and the <Context crossContext='true'/> attribute.
at scala.Predef$Ensuring$.ensuring$extension3(Predef.scala:223) ~[scala-library.jar-2022.1.6-PE.jar:?]
at org.orbeon.oxf.servlet.OrbeonXFormsFilter.$anonfun$doFilter$2(OrbeonXFormsFilter.scala:64) ~[orbeon-core.jar-2022.1.6-PE.jar:2022.1.6.202401300738]
at scala.Option.map(Option.scala:230) ~[scala-library.jar-2022.1.6-PE.jar:?]
at org.orbeon.oxf.servlet.OrbeonXFormsFilter.$anonfun$doFilter$1(OrbeonXFormsFilter.scala:60) ~[orbeon-core.jar-2022.1.6-PE.jar:2022.1.6.202401300738]
at org.orbeon.oxf.servlet.OrbeonXFormsFilter.$anonfun$doFilter$1$adapted(OrbeonXFormsFilter.scala:55) ~[orbeon-core.jar-2022.1.6-PE.jar:2022.1.6.202401300738]
at scala.Option.foreach(Option.scala:407) ~[scala-library.jar-2022.1.6-PE.jar:?]
at org.orbeon.oxf.servlet.OrbeonXFormsFilter.doFilter(OrbeonXFormsFilter.scala:55) ~[orbeon-core.jar-2022.1.6-PE.jar:2022.1.6.202401300738]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.84]
at gov.grantsolutions.util.acheck.ACheckServletFilter.doFilter(ACheckServletFilter.java:58) ~[section508-develop.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.84]
at gov.grantsolutions.user.servlet.SAMLFilter.doFilter(SAMLFilter.java:265) ~[grantsolutions.jar-develop.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.84]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) ~[spring-web-3.0.6.RELEASE.jar:3.0.6.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) ~[spring-web-3.0.6.RELEASE.jar:3.0.6.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:177) ~[catalina.jar:8.5.84]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[catalina.jar:8.5.84]
at org.keycloak.adapters.tomcat.AbstractAuthenticatedActionsValve.invoke(AbstractAuthenticatedActionsValve.java:67) ~[keycloak-tomcat-core-adapter-3.4.3.Final.jar:3.4.3.Final]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543) ~[catalina.jar:8.5.84]
at org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve.invoke(AbstractKeycloakAuthenticatorValve.java:181) ~[keycloak-tomcat-core-adapter-3.4.3.Final.jar:3.4.3.Final]

Alessandro Vernet

unread,
Feb 15, 2024, 10:25:20 PMFeb 15
to orb...@googlegroups.com
Hi Vanji,

The servlet utilizes a `RequestDispatcher` for communication with Orbeon Forms, which necessitates both your application and Orbeon Forms to be hosted on the same instance of Tomcat. This requirement explains the error message you encountered:


    Can't find Orbeon Forms context called '/orbeon'. Check the 'oxf.xforms.renderer.context' filter initialization parameter and the <Context crossContext='true'/> attribute.

Unlike the above setup, the Form Runner embedding API does not share this limitation. It enables the embedding of a form, created with Form Builder, into a Java web application running on a different server (i.e., a different JVM or host). However, to utilize this API, the form definition must reside on the Orbeon Forms side. This means your application cannot generate the form definition and then pass it to Orbeon Forms. Please confirm if this explanation is clear.

Reply all
Reply to author
Forward
0 new messages