I have a Spring MVC application that I would like to use an xForms
front end for. Reading through the documentation and postings it
appears that as part of the coming release we will be able to deploy
the Orbeon WAR file separately from our web application and use it to
serve up the xForms through the org.orbeon.oxf.servlet.OPSXFormsFilter
bridge. Is this working in the current nightly builds?
I created a simple Spring application to test this with, downloaded a nightly build from last week and followed the setup steps at http://www.orbeon.com/ops/doc/reference-xforms-java . Attached are the web.xml deployed in my WAR file, the server.xml file from tomcat and my WAR file. However, when I deploy ops.war and who_new.war I get this output that includes an error trying to start the filter. Can anyone give me a pointer in the right direction? I'm new to Orbeon so I may be missing something basic. Oct 26, 2007 9:16:12 PM org.apache.catalina.core.AprLifecycleListener initThanks, Dustin <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN' 'http://java.sun.com/dtd/web-app_2_3.dtd'> <web-app> <!-- ************************************************** --> <!-- XForms Engine Setup --> <!-- ************************************************** --> <!-- Declare and configure the Orbeon Forms XForms filter --> <filter> <filter-name>ops-xforms-filter</filter-name> <filter-class> org.orbeon.oxf.servlet.OPSXFormsFilter </filter-class> <init-param> <param-name>oxf.xforms.renderer.context</param-name> <param-value>/ops</param-value> </init-param> </filter> <!-- Any web resource under /xforms-jsp is processed by the XForms engine --> <filter-mapping> <filter-name>ops-xforms-filter</filter-name> <url-pattern>/xforms-jsp/*</url-pattern> </filter-mapping> <!-- This is necessary so that XForms engine resources can be served appropriately --> <filter-mapping> <filter-name>ops-xforms-filter</filter-name> <url-pattern>/ops/*</url-pattern> </filter-mapping> <!-- ************************************************** --> <!-- Spring MVC Setup --> <!-- ************************************************** --> <servlet> <servlet-name>springapp</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springapp</servlet-name> <url-pattern>*.htm</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> <!-- Note: A "Server" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/server.html --> <Server port="8005" shutdown="SHUTDOWN"> <!--Let WHO application talk to the Orbeon xForms engine at /ops --> <Context path="/who_new" docBase="C:\Java\tomcat\apache-tomcat-6.0.14\webapps\who_new.war" crossContext="true"/> <!--APR library loader. Documentation at /docs/apr.html --> <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html --> <Listener className="org.apache.catalina.core.JasperListener" /> <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html --> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <!-- Global JNDI resources Documentation at /docs/jndi-resources-howto.html --> <GlobalNamingResources> <!-- Editable user database that can also be used by UserDatabaseRealm to authenticate users --> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <!-- A "Service" is a collection of one or more "Connectors" that share a single "Container" Note: A "Service" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/service.html --> <Service name="Catalina"> <!--The connectors can use a shared executor, you can define one or more named thread pools--> <!-- <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="4"/> --> <!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html (blocking & non-blocking) Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL HTTP/1.1 Connector on port 8080 --> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- A "Connector" using the shared thread pool--> <!-- <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> --> <!-- Define a SSL HTTP/1.1 Connector on port 8443 This connector uses the JSSE configuration, when using APR, the connector should be using the OpenSSL style configuration described in the APR documentation --> <!-- <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" /> --> <!-- Define an AJP 1.3 Connector on port 8009 --> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> <!-- An Engine represents the entry point (within Catalina) that processes every request. The Engine implementation for Tomcat stand alone analyzes the HTTP headers included with the request, and passes them on to the appropriate Host (virtual host). Documentation at /docs/config/engine.html --> <!-- You should set jvmRoute to support load-balancing via AJP ie : <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1"> --> <Engine name="Catalina" defaultHost="localhost"> <!--For clustering, please take a look at documentation at: /docs/cluster-howto.html (simple how to) /docs/config/cluster.html (reference documentation) --> <!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> --> <!-- The request dumper valve dumps useful debugging information about the request and response data received and sent by Tomcat. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.RequestDumperValve"/> --> <!-- This Realm uses the UserDatabase configured in the global JNDI resources under the key "UserDatabase". Any edits that are performed against this UserDatabase are immediately available for use by the Realm. --> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> <!-- Define the default virtual host Note: XML Schema validation will not work with Xerces 2.2. --> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> --> </Host> </Engine> </Service> </Server> -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws who_new.war (3M) Download Attachment |
Hi Dustin, I'm not from the Orbeon team, but I am also using Orbeon as a separate war file. Niko, On 10/27/07, Dustin Henson <[hidden email]> wrote:
-- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Good call. localhost.2007-10-27.log shows a class not found error for org.orbeon.oxf.servlet.OPSXFormsFilter. Attached are the log files and an updated WAR for my project in which I made sure the latest version of ops-xforms-filter.jar is in the WEB-INF/lib directory. I'm still getting the class not found error though. Attached is the updated WAR and the current Tomcat log files. Thanks for you help! -Dustin Nicolas Modrzyk wrote:
Oct 27, 2007 11:37:19 AM org.apache.catalina.core.AprLifecycleListener init INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Java\jdk1.5.0_09\bin;.;C:\WINDOWS\System32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Sonic\MyDVD;C:\Program Files\md5sum;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Common Files\GTK\2.0\bin Oct 27, 2007 11:37:20 AM org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 Oct 27, 2007 11:37:20 AM org.apache.catalina.startup.Catalina load INFO: Initialization processed in 1329 ms Oct 27, 2007 11:37:20 AM org.apache.catalina.core.StandardService start INFO: Starting service Catalina Oct 27, 2007 11:37:20 AM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 Oct 27, 2007 11:37:20 AM org.apache.catalina.startup.HostConfig deployWAR INFO: Deploying web application archive ops.war Oct 27, 2007 11:37:42 AM org.apache.catalina.startup.HostConfig deployWAR INFO: Deploying web application archive who_new.war Oct 27, 2007 11:37:42 AM org.apache.catalina.core.StandardContext start SEVERE: Error filterStart Oct 27, 2007 11:37:42 AM org.apache.catalina.core.StandardContext start SEVERE: Context [/who_new] startup failed due to previous errors Oct 27, 2007 11:37:44 AM org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 Oct 27, 2007 11:37:44 AM org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8009 Oct 27, 2007 11:37:45 AM org.apache.jk.server.JkMain start INFO: Jk running ID=0 time=0/78 config=null Oct 27, 2007 11:37:45 AM org.apache.catalina.startup.Catalina start INFO: Server startup in 24998 ms Oct 27, 2007 11:38:53 AM org.apache.coyote.http11.Http11Protocol pause INFO: Pausing Coyote HTTP/1.1 on http-8080 Oct 27, 2007 11:38:54 AM org.apache.catalina.core.StandardService stop INFO: Stopping service Catalina Oct 27, 2007 11:38:57 AM org.apache.coyote.http11.Http11Protocol destroy INFO: Stopping Coyote HTTP/1.1 on http-8080 Oct 27, 2007 11:37:42 AM org.apache.catalina.core.StandardContext filterStart SEVERE: Exception starting filter ops-xforms-filter java.lang.ClassNotFoundException: org.orbeon.oxf.servlet.OPSXFormsFilter at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:249) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3696) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4343) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:566) 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:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Oct 27, 2007 11:37:43 AM org.apache.catalina.core.ApplicationContext log INFO: ContextListener: contextInitialized() Oct 27, 2007 11:37:43 AM org.apache.catalina.core.ApplicationContext log INFO: SessionListener: contextInitialized() Oct 27, 2007 11:38:56 AM org.apache.catalina.core.ApplicationContext log INFO: SessionListener: contextDestroyed() Oct 27, 2007 11:38:56 AM org.apache.catalina.core.ApplicationContext log INFO: ContextListener: contextDestroyed() 2007-10-27 11:37:38,905 main INFO webapp.ProcessorService null - Servlet - Servlet initialized. 2007-10-27 11:37:39,014 main INFO webapp.ProcessorService null - Servlet - Servlet initialized. 2007-10-27 11:37:39,014 main INFO webapp.ProcessorService null - Servlet - About to run processor: [{http://www.orbeon.com/oxf/processors}pipeline, config -> oxf:/apps/context/servlet-initialized.xpl] 2007-10-27 11:37:39,358 main INFO processor.DebugProcessor null - message: line 19, column 46 of oxf:/apps/context/servlet-initialized.xpl <message xmlns:oxf="http://www.orbeon.com/oxf/processors" xmlns:p="http://www.orbeon.com/oxf/pipeline">Servlet initialized.</message> 2007-10-27 11:37:39,358 main INFO webapp.ProcessorService null - Done running processor - Timing: 312 - Cache hits for cache.main: 1, fault: 4, adds: 4, expirations: 0, success rate: 20% 2007-10-27 11:37:39,811 main INFO servlets.EXistServlet null - EXistServlet: exist.home=C:\Java\tomcat\apache-tomcat-6.0.14\webapps\ops\WEB-INF 2007-10-27 11:37:39,811 main INFO servlets.EXistServlet null - reading configuration from C:\Java\tomcat\apache-tomcat-6.0.14\webapps\ops\WEB-INF\exist-conf.xml 2007-10-27 11:37:39,843 main INFO util.Configuration null - Reading configuration from file C:\Java\tomcat\apache-tomcat-6.0.14\webapps\ops\WEB-INF\exist-conf.xml 2007-10-27 11:37:40,249 main INFO util.Configuration null - data directory = C:\Java\tomcat\apache-tomcat-6.0.14\webapps\ops\WEB-INF\exist-data 2007-10-27 11:37:40,327 main INFO servlets.EXistServlet null - configuring eXist instance 2007-10-27 11:37:40,514 main INFO storage.CacheManager null - Cache settings: totalPages: 12288; maxCacheSize: 11059 2007-10-27 11:37:40,530 main INFO storage.XQueryPool null - QueryPool: size = 128; maxStackSize = 5; timeout = 120000; timeoutCheckInterval = 30000 2007-10-27 11:37:41,702 main INFO servlets.EXistServlet null - registering XMLDB driver 2007-10-27 11:37:41,827 main INFO servlets.EXistServlet null - Using default user guest for all unauthorized requests. 2007-10-27 11:37:41,889 main WARN servlets.EXistServlet null - Looking for a valid Parser... Checking for Xerces, not found! Warning: Failed find a valid Parser! Please add an appropriate Parser to the class-path, e.g. in the 'endorsed' folder of the servlet container or in the 'endorsed' folder of the JRE. 2007-10-27 11:37:41,889 main WARN servlets.EXistServlet null - Looking for a valid Transformer... Checking for Xalan, not found! Checking for Saxon, not found! Warning: Failed find a valid Transformer! Please add an appropriate Transformer to the class-path, e.g. in the 'endorsed' folder of the servlet container or in the 'endorsed' folder of the JRE. 2007-10-27 11:38:54,436 Thread-9 INFO webapp.ProcessorService null - Servlet - Servlet destroyed. 2007-10-27 11:38:54,468 Thread-9 INFO webapp.ProcessorService null - Servlet - Servlet destroyed. 2007-10-27 11:38:54,468 Thread-9 INFO webapp.ProcessorService null - Servlet - About to run processor: [{http://www.orbeon.com/oxf/processors}pipeline, config -> oxf:/apps/context/servlet-destroyed.xpl] 2007-10-27 11:38:54,499 Thread-9 INFO processor.DebugProcessor null - message: line 19, column 46 of oxf:/apps/context/servlet-destroyed.xpl <message xmlns:oxf="http://www.orbeon.com/oxf/processors" xmlns:p="http://www.orbeon.com/oxf/pipeline">Servlet destroyed.</message> 2007-10-27 11:38:54,514 Thread-9 INFO webapp.ProcessorService null - Done running processor - Timing: 46 - Cache hits for cache.main: 2, fault: 2, adds: 2, expirations: 0, success rate: 50% -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws who_new.war (3M) Download Attachment |
Hi Dustin, I'd say everything is in the logs. Add Xerces, Xalan and Saxon as required. and you should be going. Niko, ________________________________________ 2007-10-27 11:37:41,889 main WARN
servlets.EXistServlet null - Looking for a valid Parser... 2007-10-27 11:37:41,889 main WARN
servlets.EXistServlet null - Looking for a valid Parser... 2007-10-27 11:37:41,889 main WARN
servlets.EXistServlet null - Looking for a valid Parser... 2007-10-27 11:37:41,889 main WARN
servlets.EXistServlet null - Looking for a valid Parser... On 10/28/07, Dustin Henson <[hidden email]> wrote:
-- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Free forum by Nabble | Edit this page |