We are about to deploy on a configuration of CF7/Flex (prod is multi-instance while my local dev is standalone) so it works. I worked with Peter Farland (well he did most of it) and created the necessary web.xml file to get these to work together. I have attached it.
You will need to install Flex on your server obviously. Best. Ben -----Original Message----- From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of lamynes03 Sent: Thursday, May 12, 2005 12:32 AM To: [email protected] Subject: [flexcoders] New Guy I have coldfusion mx7 and now flex 1.5, I can't seem to get flex to run with coldfusion. The trial version has the java side installed with it, but with the full version... nothing. Coldfusion has java built in, but I can't open .jsp or .mxml files from my site. Thank you, Paul Yahoo! Groups Links Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
<?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"> <!-- This web.xml is a sample ColdFusion MX 7 web application deployment descriptor (with its own Embedded Flex for Flash Forms and Reporting) merged with a Flex 1.5 web application deployment descriptor. This file should work on JRun 4 as that application server is more lenient in its parsing of web.xml deployment descriptors. Other application servers may enforce the DTD specified order of each config section, for example, WebSphere expects servlets to become servlet-mappings, etc. This file takes this order into account and as a result is a little longer than it could be for JRun because the configuration sections have to be separated for CFMX 7, CFMX 7-Embedded-Flex and Flex 1.5. Another item to consider for other application servers is that each config element might need a unique id attribute. I'm not sure which application servers require this, but note that the Flex 1.5 config sections do not have unique id attributes and thus these would have to be added if the application server required it. The co-existance of ColdFusion MX 7 and Flex 1.5 is made possible due to several factors. Firstly, since CFMX 7 contains some portions of Flex to support its reporting and flash forms features, unique servlet names and servlet mappings had to be chosen to avoid collisions. Secondly, the two applications store the majority of there classes in their own directories and locate classes with a custom bootstrap classloader. The bootstrap classloaders allow each application to guarantee that their versions of common APIs, such as Apache Commons, Log4J, and XML Parsing APIs, are used rather than those shipped with each application server or user web application. The CFMX 7 bootstrap classloader classpath is specified by the cf.class.path context-param. Typically all CFMX specific libraries live in various directories under /WEB-INF/cfusion The Flex 1.5 bootstrap classloader classpath is specified by the flex.class.path context-param. Typically all Flex specific libraries live at /WEB-INF/flex/jars There are exceptions to this, however... application features that must run in the current web application classpath (such as tag libs used in JSP pages or Flex RemoteObject that needs to locate user defined classes) typically are contained in libraries in /WEB-INF/lib. --> <web-app id="macromedia_coldfusion"> <display-name>Macromedia Coldfusion MX and Macromedia Flex 1.5</display-name> <description>Macromedia Coldfusion MX 7 merged with Macromedia Flex 1.5</description> <!-- CFMX 7 Context Params --> <context-param id="macromedia_context_1"> <param-name>cftags</param-name> <param-value>/WEB-INF/cftags</param-value> <description>Path to search for built-in tags. Relative to application root. This parameter can only be one path element.</description> </context-param> <context-param id="macromedia_context_2"> <param-name>coldfusion.compiler.outputDir</param-name> <param-value>/WEB-INF/cfclasses</param-value> <description>This is the directory where we will place compiled pages. It must be relative to the webapp root.</description> </context-param> <context-param id="macromedia_context_4"> <param-name>cfx.registry.nativelibrary</param-name> <param-value>cfregistry</param-value> <description>Native library that implements CFX_REGISTRY. Used on Windows only.</description> </context-param> <context-param id="macromedia_context_5"> <param-name>cfx.report.nativelibrary</param-name> <param-value>cfreport</param-value> <description>Native library that implements CFX_REPORT. Used on Windows only.</description> </context-param> <context-param id="macromedia_context_6"> <param-name>cfx.collection.nativelibrary</param-name> <param-value>cfcollection</param-value> <description>Native library that implements CFX_COLLECTION.</description> </context-param> <context-param id="macromedia_context_7"> <param-name>cfx.index.nativelibrary</param-name> <param-value>cfindex</param-value> <description>Native library that implements CFX_INDEX.</description> </context-param> <context-param id="macromedia_context_8"> <param-name>cfx.search.nativelibrary</param-name> <param-value>cfsearch</param-value> <description>Native library that implements CFX_SEARCH.</description> </context-param> <context-param id="macromedia_context_88"> <param-name>cf.class.path</param-name> <param-value>./WEB-INF/cfusion/lib/updates,./WEB-INF/cfusion/lib,./WEB-INF/cfusion/gateway/lib,./WEB-INF/cfform/jars</param-value> </context-param> <context-param id="macromedia_context_89"> <param-name>cf.lib.path</param-name> <param-value>./WEB-INF/cfusion/lib</param-value> </context-param> <!-- End CFMX 7 Context Params --> <!-- Flex 1.5 Context Params --> <context-param> <param-name>flex.class.path</param-name> <param-value>/WEB-INF/flex/jars</param-value> </context-param> <!-- End Flex 1.5 Context Params --> <!-- CFMX 7 Embedded Flex Filters --> <filter> <filter-name>CFCacheFilter</filter-name> <filter-class>coldfusion.bootstrap.BootstrapFilter</filter-class> <init-param> <param-name>filter.class</param-name> <param-value>flex.server.j2ee.cache.CacheFilter</param-value> </init-param> </filter> <!-- End CFMX 7 Embedded Flex Filters --> <!-- Flex 1.5 Filters --> <filter> <filter-name>FlexDetectionFilter</filter-name> <filter-class>flex.bootstrap.BootstrapFilter</filter-class> <init-param> <param-name>filter.class</param-name> <param-value>flex.server.j2ee.DetectionFilter</param-value> </init-param> </filter> <filter> <filter-name>FlexCacheFilter</filter-name> <filter-class>flex.bootstrap.BootstrapFilter</filter-class> <init-param> <param-name>filter.class</param-name> <param-value>flex.server.j2ee.cache.CacheFilter</param-value> </init-param> </filter> <!-- End Flex 1.5 Filters --> <!-- CFMX 7 Embedded Flex Filter Mappings --> <filter-mapping> <filter-name>CFCacheFilter</filter-name> <servlet-name>CFSwfServlet</servlet-name> </filter-mapping> <!-- End CFMX 7 Embedded Flex Filter Mappings --> <!-- Flex 1.5 Filter Mappings --> <filter-mapping> <filter-name>FlexDetectionFilter</filter-name> <servlet-name>FlexMxmlServlet</servlet-name> </filter-mapping> <filter-mapping> <filter-name>FlexCacheFilter</filter-name> <servlet-name>FlexMxmlServlet</servlet-name> </filter-mapping> <filter-mapping> <filter-name>FlexCacheFilter</filter-name> <servlet-name>FlexSwfServlet</servlet-name> </filter-mapping> <!-- End Flex 1.5 Filter Mappings --> <!-- CFMX 7 Servlets --> <servlet id="macromedia_servlet_1"> <servlet-name>ColdFusionStartUpServlet</servlet-name> <display-name>Coldfusion MX Startup Servlet</display-name> <description>Initializes ColdFusion</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_1034013110641"> <param-name>servlet.class</param-name> <param-value>coldfusion.server.j2ee.CFStartUpServlet</param-value> </init-param> <init-param id="InitParam_1034013110642"> <param-name>cfRootDir</param-name> <param-value>./WEB-INF/cfusion</param-value> </init-param> <init-param id="InitParam_1034013110643"> <param-name>appServer</param-name> <param-value>J2EE</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet id="macromedia_servlet_3"> <servlet-name>CfmServlet</servlet-name> <display-name>CFML Template Processor</display-name> <description>Compiles and executes CFML pages and tags</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_1034013110656ert"> <param-name>servlet.class</param-name> <param-value>coldfusion.CfmServlet</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <servlet id="macromedia_servlet_4"> <servlet-name>GraphServlet</servlet-name> <display-name>GraphServlet</display-name> <description>Serves up graph data</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_1034013110657xx"> <param-name>servlet.class</param-name> <param-value>coldfusion.graph.GraphServlet</param-value> </init-param> </servlet> <servlet id="macromedia_servlet_5"> <servlet-name>CFCServlet</servlet-name> <display-name>CFC Processor</display-name> <description>Compiles and executes CF web components</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_1034013110657ax"> <param-name>servlet.class</param-name> <param-value>coldfusion.xml.rpc.CFCServlet</param-value> </init-param> <load-on-startup>10</load-on-startup> </servlet> <servlet id="macromedia_servlet_11"> <servlet-name>FlashGateway</servlet-name> <display-name>Flash Gateway</display-name> <description>Allows flash to connect to CFML and CFC templates.</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParamdca"> <param-name>DISABLE_CFWS_ADAPTERS</param-name> <param-value>false</param-value> <description>When set to true, this setting disables the ColdFusion WebServices Adapters in the gateway.</description> </init-param> <init-param> <param-name>DISABLE_SERVER_AUTHENTICATION</param-name> <param-value>false</param-value> <description>When set to true, this setting disables the server authentication of users.</description> </init-param> <init-param id="InitParam_103401311064890"> <param-name>servlet.class</param-name> <param-value>flashgateway.controller.GatewayServlet</param-value> </init-param> <init-param id="InitParam_1034013110642x"> <param-name>cfRootDir</param-name> <param-value>./WEB-INF/cfusion</param-value> </init-param> <init-param> <param-name>gateway.configuration.file</param-name> <param-value>/WEB-INF/gateway-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.configuration.file</param-name> <param-value>/WEB-INF/gateway-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.parent.node</param-name> <param-value>gateway-config</param-value> </init-param> <init-param id="InitParam_1034013110643a"> <param-name>appServer</param-name> <param-value>J2EE</param-value> </init-param> <load-on-startup>11</load-on-startup> </servlet> <servlet id="macromedia_servlet_12"> <servlet-name>CFFormGateway</servlet-name> <display-name>CFFormGateway</display-name> <description>Allows flash forms to connect to CFML and CFC templates.</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_103401311064891"> <param-name>servlet.class</param-name> <param-value>flashgateway.controller.GatewayServlet</param-value> </init-param> <init-param id="InitParam_1034013110642y"> <param-name>cfRootDir</param-name> <param-value>./WEB-INF/cfusion</param-value> </init-param> <init-param> <param-name>gateway.configuration.file</param-name> <param-value>/WEB-INF/cfform-gateway-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.configuration.file</param-name> <param-value>/WEB-INF/cfform-gateway-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.parent.node</param-name> <param-value>gateway-config</param-value> </init-param> <init-param id="InitParam_1034013110643b"> <param-name>appServer</param-name> <param-value>J2EE</param-value> </init-param> <load-on-startup>12</load-on-startup> </servlet> <!-- Begin RDS --> <!-- <servlet id="macromedia_servlet_8789"> <servlet-name>RDSServlet</servlet-name> <display-name>RDS Servlet</display-name> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_103401311065856789"> <param-name>servlet.class</param-name> <param-value>coldfusion.rds.RdsFrontEndServlet</param-value> </init-param> </servlet> --> <!-- End RDS --> <!-- End CFMX 7 Servlets --> <!-- CFMX 7 Embedded Flex Servlets --> <servlet> <servlet-name>CFInternalServlet</servlet-name> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.filemanager.FileManagerServlet</param-value> </init-param> <load-on-startup>13</load-on-startup> </servlet> <servlet> <servlet-name>CFSwfServlet</servlet-name> <display-name>SWF Retreiver</display-name> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.SwfServlet</param-value> </init-param> <load-on-startup>4</load-on-startup> </servlet> <servlet> <servlet-name>CFMxmlServlet</servlet-name> <display-name>MXML Processor</display-name> <description>Servlet wrapper for the Mxml Compiler</description> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.compiler.MxmlServlet</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>CFForbiddenServlet</servlet-name> <display-name>Prevents access to *.as files</display-name> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.ForbiddenServlet</param-value> </init-param> </servlet> <!-- End CFMX 7 Embedded Flex Servlets --> <!-- Flex 1.5 Servlets --> <!-- Flash Web Services Proxy --> <servlet> <servlet-name>FlexProxyServlet</servlet-name> <display-name>Flex Web Services Proxy Servlet</display-name> <description>Optional proxy for relaying web services messages</description> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.proxy.ProxyServlet</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <servlet> <servlet-name>FlexErrorServlet</servlet-name> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.compiler.ErrorPageServlet</param-value> </init-param> </servlet> <servlet> <servlet-name>FlexInternalServlet</servlet-name> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.filemanager.FileManagerServlet</param-value> </init-param> <load-on-startup>10</load-on-startup> </servlet> <servlet> <servlet-name>FlexSwfServlet</servlet-name> <display-name>SWF Retriever</display-name> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.SwfServlet</param-value> </init-param> <!-- SwfServlet must be initialized after MxmlServlet --> <load-on-startup>4</load-on-startup> </servlet> <servlet> <servlet-name>FlexMxmlServlet</servlet-name> <display-name>MXML Processor</display-name> <description>Servlet wrapper for the Mxml Compiler</description> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.compiler.MxmlServlet</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <!-- RemoteObject AMF Gateway 1.1 --> <servlet> <servlet-name>AMFGatewayServlet</servlet-name> <display-name>Flash Remoting AMF Servlet</display-name> <description>Servlet-based plugin to Flash Remoting</description> <servlet-class>flashgateway.controller.GatewayServlet</servlet-class> <init-param> <param-name>gateway.configuration.file</param-name> <param-value>/WEB-INF/flex/gateway-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.configuration.file</param-name> <param-value>/WEB-INF/flex/flex-config.xml</param-value> </init-param> <init-param> <param-name>whitelist.parent.node</param-name> <param-value>remote-objects</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>FlexForbiddenServlet</servlet-name> <display-name>Prevents access to *.as files</display-name> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.ForbiddenServlet</param-value> </init-param> </servlet> <servlet> <servlet-name>session</servlet-name> <display-name>Provides access to the current session; for use with RemoteObject</display-name> <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class> <init-param> <param-name>servlet.class</param-name> <param-value>flex.server.j2ee.remote.Session</param-value> </init-param> </servlet> <!-- End Flex 1.5 Servlets --> <!-- CFMX 7 Servlet Mappings --> <servlet-mapping id="macromedia_mapping_1"> <servlet-name>FlashGateway</servlet-name> <url-pattern>/flashservices/gateway/*</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_2"> <servlet-name>GraphServlet</servlet-name> <url-pattern>/CFIDE/GraphData</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_3"> <servlet-name>CfmServlet</servlet-name> <url-pattern>*.cfm</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_4"> <servlet-name>CFCServlet</servlet-name> <url-pattern>*.cfc</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_5"> <servlet-name>CfmServlet</servlet-name> <url-pattern>*.cfml</url-pattern> </servlet-mapping> <!-- If your J2EE server supports it, you can uncomment these. They are included to support Search Engine Safe (SES) URL types. Some servers (Tomcat, SunONE) don't support wildcard mappings --> <!-- <servlet-mapping id="macromedia_mapping_6"> <servlet-name>CfmServlet</servlet-name> <url-pattern>*.cfml/*</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_7"> <servlet-name>CfmServlet</servlet-name> <url-pattern>*.cfm/*</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_8"> <servlet-name>CFCServlet</servlet-name> <url-pattern>*.cfc/*</url-pattern> </servlet-mapping> --> <!-- Begin RDS --> <!-- <servlet-mapping id="macromedia_mapping_9"> <servlet-name>RDSServlet</servlet-name> <url-pattern>/CFIDE/main/ide.cfm</url-pattern> </servlet-mapping> --> <!-- End RDS --> <servlet-mapping id="macromedia_mapping_10"> <servlet-name>CFCServlet</servlet-name> <url-pattern>*.jws</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_11"> <servlet-name>GraphServlet</servlet-name> <url-pattern>/CFIDE/GraphData.cfm</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_12"> <servlet-name>CFCServlet</servlet-name> <url-pattern>*.cfr</url-pattern> </servlet-mapping> <servlet-mapping id="macromedia_mapping_13"> <servlet-name>CFFormGateway</servlet-name> <url-pattern>/CFFormGateway/*</url-pattern> </servlet-mapping> <!-- End CFMX 7 Servlet Mappings --> <!-- CFMX 7 Embedded Flex Servlet Mappings --> <servlet-mapping> <servlet-name>CFInternalServlet</servlet-name> <url-pattern>/cfform-internal/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CFSwfServlet</servlet-name> <url-pattern>*.cfswf</url-pattern> </servlet-mapping> <!-- These forbidden mappings are covered by Flex 1.5 entries below --> <!-- <servlet-mapping> <servlet-name>CFForbiddenServlet</servlet-name> <url-pattern>*.as</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CFForbiddenServlet</servlet-name> <url-pattern>*.sws</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CFForbiddenServlet</servlet-name> <url-pattern>*.swc</url-pattern> </servlet-mapping> --> <!-- End CFMX 7 Embedded Flex Servlet Mappings --> <!-- Flex 1.5 Servlet Mappings --> <!-- AMF Gateway URL --> <servlet-mapping> <servlet-name>AMFGatewayServlet</servlet-name> <url-pattern>/amfgateway/*</url-pattern> </servlet-mapping> <!-- Flash Web Services Proxy URL --> <servlet-mapping> <servlet-name>FlexProxyServlet</servlet-name> <url-pattern>/flashproxy/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexErrorServlet</servlet-name> <url-pattern>/flex-error</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexInternalServlet</servlet-name> <url-pattern>/flex-internal/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexMxmlServlet</servlet-name> <url-pattern>*.mxml</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexSwfServlet</servlet-name> <url-pattern>*.swf</url-pattern> </servlet-mapping> <!-- use the same servlet for retreiving SWD debugging files --> <servlet-mapping> <servlet-name>FlexSwfServlet</servlet-name> <url-pattern>*.swd</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexForbiddenServlet</servlet-name> <url-pattern>*.as</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexForbiddenServlet</servlet-name> <url-pattern>*.swc</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>FlexForbiddenServlet</servlet-name> <url-pattern>*.sws</url-pattern> </servlet-mapping> <!-- End Flex 1.5 Servlet Mappings --> <welcome-file-list id="WelcomeFileList_1034013110672"> <welcome-file>index.cfm</welcome-file> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> </welcome-file-list> <!-- Flex 1.5 Error Pages Possibly comment these out when Flex added to CFMX 7 ??? --> <error-page> <error-code>403</error-code> <location>/flex-error</location> </error-page> <error-page> <error-code>500</error-code> <location>/flex-error</location> </error-page> <error-page> <exception-type>javax.servlet.jsp.JspException</exception-type> <location>/flex-error</location> </error-page> <error-page> <exception-type>javax.servlet.ServletException</exception-type> <location>/flex-error</location> </error-page> <!-- End Flex 1.5 Error Pages --> <!-- Flex 1.5 Tag Libraries --> <taglib> <taglib-uri>FlexTagLib</taglib-uri> <taglib-location>/WEB-INF/lib/flex-bootstrap.jar</taglib-location> </taglib> <!-- End Flex 1.5 Tag Libraries --> </web-app>

