Call orbeon form from another application ! Problems !

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Call orbeon form from another application ! Problems !

karthik Jayaraman
This post was updated on .
Hi,

  I followed the link @

http://wiki.orbeon.com/forms/doc/developer-guide/xforms-with-java-applications

I have an application named Test1 and in Test1.jsp page inside the application 1,

                ServletContext ctx2 = application.getContext("/Test-2");
                RequestDispatcher rd = ctx2.getRequestDispatcher("/Test.jsp");
                rd.forward(request, response);

Its working fine.

When i put the following code inside Test1.jsp

             ServletContext ctx2 = application.getContext("/orbeon");
             RequestDispatcher rd = ctx2.getRequestDispatcher("/xforms-jsp/flickr-search/service-      
                                                                                                                search.jsp");
              rd.forward(request, response);

Its working fine!

----------------------------------------------------------------------------------------

But when i put

                ServletContext ctx2 = application.getContext("/orbeon");
                RequestDispatcher rd = ctx2.getRequestDispatcher("/fr/test-app/test-form/new");
                rd.forward(request, response);

Its not working. I get a blank page ! In the logs i see the following lines


19:12:46,145 INFO  [ProcessorService] /fr/Dynamic-DataSource-Application/Dynamic-DataSource-Form/new - Received request

Apart from that i neither get any errors of any kind  nor any information. The following are the changes i made as suggested by the documentation..

1. Included the following lines in web.xml of application 1

----------------------------------------------------------------------------------------

<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>/xforms-jsp/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>

<filter-mapping>
    <filter-name>orbeon-xforms-filter</filter-name>
    <url-pattern>/orbeon/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>
----------------------------------------------------------------------------------------

2. Copied WEB-INF/lib/orbeon-xforms-filter.jar from the Orbeon Forms WAR into your application's WEB-INF/lib/ directory.


I also tested my cross-context mode of the server by dispatching request from one web application to another and it was working fine. No the conclusion is if i can call the jsp page inside xforms-jsp page, why cant i call a form (which can be fetched from the database) ?

Awating for reply !





Reply | Threaded
Open this post in threaded view
|

Re: Call orbeon form from another application ! Problems !

karthik Jayaraman
Awaiting 4 reply !
Reply | Threaded
Open this post in threaded view
|

Re: Call orbeon form from another application ! Problems !

vladimirB
I do not think it is orbeon issue.....

getRequestDispatcher returns an object for the resource located at the given path.

forward(request, response)  forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server.

In second scenario you referencing to folder ("/fr/test-app/test-form/new") and not the actual resource.

If you want to forward to "folder" (read: url) another mechanism needed - similar to struts.


Reply | Threaded
Open this post in threaded view
|

Re: Call orbeon form from another application ! Problems !

karthik Jayaraman
But the request is being picked up by the orbeon servlet. I thought it should call the persistance layer for the form.