Migrating JSF1.2 application from Jboss 4.2 to Wildfly 13 - jsf-1.2

I am trying to migrate an existing JSF 1.2 application from Jboss 4.2 to Wildfly 13. I have also moved from jdk1.5 to jdk10. I am making an ear file with the following hierarchy:
ear
/lib ---all jars in it
/META-INF
/application.xml
/jboss-deployment-structure.xml
/MANIFEST.MF
/EOSEJB.jar
/EOSWeb.war
My jboss-deployment-structure.xml looks like:
<deployment>
<exclude-subsystems>
<subsystem name="jsf" />
</exclude-subsystems>
<exclusions>
<module name="com.sun.jsf-impl" />
<module name="javax.faces.api" />
<module name="org.jboss.as.jsf" />
<module name="org.jboss.as.jsf-injection" />
<module name="org.apache.commons.beanutils" />
<module name="org.apache.commons.cli" />
<module name="org.apache.commons.codec" />
<module name="org.apache.commons.collections" />
<module name="org.apache.commons.io" />
<module name="org.apache.commons.lang" />
<module name="org.apache.commons.lang3" />
<module name="org.apache.commons.logging" />
<module name="org.apache.commons.pool" />
<module name="org.hibernate" slot="main" />
</exclusions>
</deployment>
Same exclusions in <sub-deployment name="EOSWeb.war">
All jsf jars that I used in jboss 4.2 are in ear/lib now.
My web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<context-param>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.COMPRESS_STATE_IN_CLIENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.jsp</param-value>
</context-param>
<!-- context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param-->
<!-- context-param>
<param-name>org.jboss.jbossfaces.JSF_CONFIG_NAME</param-name>
<param-value>mojarra-1.2_15</param-value>
</context-param-->
<context-param>
<param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>
/WEB-INF/faces-config.xml,
/WEB-INF/faces-config-eos.xml,
/WEB-INF/faces-config-pda.xml,
/WEB-INF/faces-config-referral.xml
</param-value>
</context-param>
<!-- SERVET DEFINITIONS -->
<servlet>
<servlet-name>PDF Servlet</servlet-name>
<servlet-class>org.ukt.common.PDFServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>EOS Faces Servlet</servlet-name>
<!-- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> -->
<servlet-class>org.ukt.eos.util.EOSCustomFacesServlet</servlet-class>
<init-param>
<param-name>errorPage</param-name>
<param-value>/faces/jsp/ErrorPage.jsp</param-value>
</init-param>
<load-on-startup>-1</load-on-startup>
</servlet>
<!-- SERVET MAPPING DEFINITIONS -->
<servlet-mapping>
<servlet-name>PDF Servlet</servlet-name>
<url-pattern>/_donor_summary/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>EOS Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<!-- WELCOME FILE DEFINITION -->
<welcome-file-list>
<welcome-file>jsp/login.jsp</welcome-file>
</welcome-file-list>
<!-- FILTER DEFINITION -->
<filter>
<filter-name>extensionsFilter</filter-name>
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
<init-param>
<description>Set the size limit for uploaded files. Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB</description>
<param-name>uploadMaxFileSize</param-name>
<param-value>100m</param-value>
</init-param>
<init-param>
<description>
Set the threshold size - files below this limit are stored in memory, files above this limit are stored on disk. Format: 10
- 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
</description>
<param-name>uploadThresholdSize</param-name>
<param-value>100k</param-value>
</init-param>
</filter>
<!-- FILTER MAPPING DEFINITION -->
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>SessionHandlerFilter</filter-name>
<filter-class>org.ukt.eos.security.filters.SessionHandlerFilter</filter-class>
<init-param>
<param-name>session_timeout_page</param-name>
<param-value>/faces/jsp/login.jsp</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SessionHandlerFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter>
<filter-name>PDFRendererFilter</filter-name>
<filter-class>org.ukt.eos.pdf.filter.PDFRendererFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PDFRendererFilter</filter-name>
<url-pattern>/_donor_summary/*</url-pattern>
</filter-mapping>
<!-- Filter added for security (pen test) defects
<filter>
<filter-name>CrossSiteScriptingFilter</filter-name>
<filter-class>org.ukt.eos.security.filters.CrossSiteScriptingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CrossSiteScriptingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
-->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<error-page>
<error-code>500</error-code>
<location>/EOSWeb/faces/jsp/ErrorPage.jsp</location>
</error-page>
<listener>
<listener-class>
org.ukt.eos.security.filters.EOSSessionListener
</listener-class>
</listener>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
</web-app>
When I now place my ear file in standalone/deployment folder and start wildfly, it doesn't give any error in server.log. But when I hit the application url it gives me 404.
Full server logs is available at:
server logs

Related

cvc-complex-type.2.4a: Expected elements "run-as, security-role-ref, multipart-config" instead of "load-on-startup" here in element "servlet"

I got the following error while deploying a war in weblogic server but it is getting deployed successfully in wildfly 17 .
Error Unable to access the selected application. Error VALIDATION
PROBLEMS WERE FOUND <113:5> problem: cvc-complex-type.2.4a: Expected
elements 'run-as#http://xmlns.jcp.org/xml/ns/javaee
security-role-ref#http://xmlns.jcp.org/xml/ns/javaee
multipart-config#http://xmlns.jcp.org/xml/ns/javaee' instead of
'load-on-startup#http://xmlns.jcp.org/xml/ns/javaee' here in element
servlet#http://xmlns.jcp.org/xml/ns/javaee
Below is my Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>JavaServerFaces</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value/>
</context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
<!-- <param-value>Development</param-value> -->
</context-param>
<context-param>
<param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.disableIdUniquenessCheck</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.numberOfViewsInSession</param-name>
<param-value>500</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.numberOfLogicalViews</param-name>
<param-value>300</param-value>
</context-param>
<context-param>
<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
<param-value>resources.application</param-value>
</context-param>
<context-param>
<param-name>primefaces.THEME</param-name>
<param-value>#{primefacethemes.theme}</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.sendPoweredByHeader</param-name>
<param-value>false</param-value>
</context-param>
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
<async-supported>true</async-supported>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<filter>
<filter-name>compressionFilter</filter-name>
<filter-class>com.googlecode.webutilities.filters.CompressionFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>compressionThreshold</param-name>
<param-value>1024</param-value>
</init-param>
<init-param>
<param-name>ignoreURLPattern</param-name>
<param-value>.*\.(flv|mp3|mpg)</param-value>
</init-param>
<init-param>
<param-name>acceptURLPattern</param-name>
<param-value>.*\.(css|js|html|xhtml|js.xhtml|css.xhtml|png|jpg|TTF)</param-value>
</init-param>
<init-param>
<param-name>ignoreMIMEPattern</param-name>
<param-value>image/.*|video/.*|multipart/x-gzip</param-value>
</init-param>
<init-param>
<param-name>ignoreUserAgentsPattern</param-name>
<param-value>.*MSIE.*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>compressionFilter</filter-name>
<url-pattern>*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- <listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener> -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<async-supported>true</async-supported>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>PushSchedulerInitializer</servlet-name>
<servlet-class>com.iii.orion.common.pushscheduler.PushSchedulerInitializer</servlet-class>
<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
<cookie-config>
<http-only>true</http-only>
</cookie-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
<welcome-file-list>
<welcome-file>/Orion_login/index.xhtml</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/report/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.iii.orn11j.common.webservice.OrionRESTApplication</param-value>
</context-param>
<listener>
<listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
</listener>
<filter>
<filter-name>SecurityFilter</filter-name>
<filter-class>waffle.servlet.NegotiateSecurityFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>principalFormat</param-name>
<param-value>fqn</param-value>
</init-param>
<init-param>
<param-name>roleFormat</param-name>
<param-value>both</param-value>
</init-param>
<init-param>
<param-name>allowGuestLogin</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>securityFilterProviders</param-name>
<param-value>
waffle.servlet.spi.NegotiateSecurityFilterProvider
waffle.servlet.spi.BasicSecurityFilterProvider
</param-value>
</init-param>
<init-param>
<param-name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>
<param-value>
Negotiate
NTLM
</param-value>
</init-param>
<init-param>
<param-name>waffle.servlet.spi.BasicSecurityFilterProvider/realm</param-name>
<param-value>WaffleInfo</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SecurityFilter</filter-name>
<url-pattern>/welcome.xhtml</url-pattern>
</filter-mapping>
<!-- System Information Helpful for debugging -->
<servlet>
<servlet-name>WaffleInfo</servlet-name>
<servlet-class>waffle.servlet.WaffleInfoServlet</servlet-class>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>WaffleInfo</servlet-name>
<url-pattern>/waffle</url-pattern>
</servlet-mapping>
</web-app>
Below is my Weblogic.xml
<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app">
<session-descriptor>
<cookie-name>pinGLO_SESSIONID</cookie-name>
<cookie-http-only>true</cookie-http-only>
</session-descriptor>
<charset-params>
<input-charset>
<resource-path>/*</resource-path>
<java-charset-name>UTF-8</java-charset-name>
</input-charset>
</charset-params>
</weblogic-web-app>
This is a jsf project successfully running in wildfly17.but got error while deploying in weblogic12C
The web.xml is not valid. The last end tag is not closing: <web-app>
it must be </web-app>
UPDATE 1:
Ok, now having the complete web.xml we can identify the error:
Original xml snippet:
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<async-supported>true</async-supported>
<load-on-startup>1</load-on-startup>
</servlet>
Tags <async-supported>true</async-supported> and <load-on-startup>1</load-on-startup> are in incorrect order
Correct xml snippet:
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
</servlet>

My all XML configuration files of SpringMVC project show some error that they can't recognize the symbol in the files

I don't know how those error occured,the project goes no any problem just now.
I remember I renamed the index.jsp and create a new RestController.
The error say "Element param-serviceName is not allowed here".
Here are some images show the errors
web.xml:
applicationContext.xml:
and the code of the web.xml as follows,others xml files like the web.xml
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<!--配置Spring核心监听器-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--指定Spring的配置文件-->
<context-param>
<param-serviceName>contextConfigLocation</param-serviceName>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!--Spring MVC的前端控制器-->
<servlet>
<servlet-serviceName>springmvc</servlet-serviceName>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-serviceName>contextConfigLocation</param-serviceName>
<param-value>/WEB-INF/springmvc-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<multipart-config>
<!--临时文件的目录-->
<location>/tmp/</location>
<!-- 上传文件最大2M -->
<max-file-size>2097152</max-file-size>
<!-- 上传文件整个请求不超过4M -->
<max-request-size>4194304</max-request-size>
</multipart-config>
</servlet>
<servlet-mapping>
<servlet-serviceName>springmvc</servlet-serviceName>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--编码过滤器-->
<filter>
<filter-serviceName>characterEncodingFilter</filter-serviceName>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-serviceName>encoding</param-serviceName>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-serviceName>forceEncoding</param-serviceName>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-serviceName>characterEncodingFilter</filter-serviceName>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--session有效时间-->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
Consider this my mistake to not be able to help OP properly
The issue in your web.xml is, it is using wrong tags.
update your web.xml to this and then try.
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<!--配置Spring核心监听器-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--指定Spring的配置文件-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!--Spring MVC的前端控制器-->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springmvc-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<multipart-config>
<!--临时文件的目录-->
<location>/tmp/</location>
<!-- 上传文件最大2M -->
<max-file-size>2097152</max-file-size>
<!-- 上传文件整个请求不超过4M -->
<max-request-size>4194304</max-request-size>
</multipart-config>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--编码过滤器-->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--session有效时间-->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
</web-app>

Going back after spring security logout

Hi Project consist of spring security mvc application.In my application after i logout, i can
go back by clicking browser back button.How Can i get rid of this problem????
security.xml security confiuration
<security:http use-expressions="true">
<security:form-login login-page="/home.html"
default-target-url="/dologin.html" authentication-failure-url="/loginfailed.html" />
<!-- <security:logout logout-success-url="/home.html" /> -->
<security:logout logout-success-url="/home.html"
delete-cookies="JSESSIONID" invalidate-session="true" />
<security:remember-me />
<security:intercept-url pattern="/signin*"
access="permitAll" />
</security:http>
web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-context-data.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-context-web.xml,
/WEB-INF/spring-context-data.xml,
/WEB-INF/spring-security.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-context-web.xml,
/WEB-INF/spring-context-data.xml,
/WEB-INF/spring-security.xml
</param-value>
</context-param>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<!-- <servlet>
<servlet-name>RealEstate</servlet-name>
<servlet-class>com.Servlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RealEstate</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping> -->
<filter>
<filter-name>methodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>methodFilter</filter-name>
<url-pattern>*.html</url-pattern>
</filter-mapping>
<!-- Spring Security -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
html
<span>Logout</span>

flash builder web.xml matter after using RDSDispatchServlet

I encouter a matter when i add
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet>
in the following web.xml
<?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>
<!-- Http Flex Session attribute and binding listener support -->
<listener>
<listener-class>flex.messaging.HttpFlexSession</listener-class>
</listener>
<!-- MessageBroker Servlet -->
<servlet>
<servlet-name>MessageBrokerServlet</servlet-name>
<display-name>MessageBrokerServlet</display-name>
<servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
<init-param>
<param-name>services.configuration.file</param-name>
<param-value>/WEB-INF/flex/services-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet>
<servlet-mapping id="RDS_DISPATCH_MAPPING">
<servlet-name>RDSDispatchServlet</servlet-name>
<url-pattern>/CFIDE/main/ide.cfm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>MessageBrokerServlet</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
<!-- for WebSphere deployment, please uncomment -->
<!--
<resource-ref>
<description>Flex Messaging WorkManager</description>
<res-ref-name>wm/MessagingWorkManager</res-ref-name>
<res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
-->
</web-app>
the matter is that i can't use "data-centric development" feature in flash builder 4.
Try with:
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>messageBrokerId</param-name>
<param-value>_messageBroker</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet>
And check that you have added the libs of BlazeDS inside your project.

Got Problems with Tuckey UrlRewriteFilter and Spring 3 Web MVC

I have a Spring Web MVC application and I want to use RESTful URLs. Regrettably I haven't found any configuration that works for me with Tuckey's UrlRewriteFilter.
I'm using the "DefaultAnnotationHandlerMapping" and I added "urlrewritefilter.jsp" to my classpath and copied "urlrewrite.xml" into "/WEB-INF/".
I wan't to achieve that xyz://www.domain.com/abc will be redirected (invisible for the user) to xyz://www.domain.com/app/abc to catch it with my Controller and to let xyz://www.domain.com/css untouched.
My "web.xml" is configured this way:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="xyz://java.sun.com/xml/ns/javaee" xmlns:xsi="xyz://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="xyz://java.sun.com/xml/ns/javaee xyz://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<!-- Context -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
/WEB-INF/applicationContext-security.xml
</param-value>
</context-param>
<!-- Context Loader -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Spring Security -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Tuckey UrlRewriteFilter -->
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Dispatcher Servlet -->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/app/*</url-pattern>
</servlet-mapping>
<!-- All the rest... -->
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>redirect.jsp</welcome-file>
</welcome-file-list>
</web-app>
My "urlrewrite.xml" is configured this way:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.2//EN"
"xyz://tuckey.org/res/dtds/urlrewrite3.2.dtd">
<urlrewrite default-match-type="wildcard">
<rule>
<from>/**</from>
<to>/app/$1</to>
</rule>
<outbound-rule>
<from>/app/**</from>
<to>/$1</to>
</outbound-rule>
</urlrewrite>
My AbcController.java for mapping xyz://www.domain.com/abc has such methods:
#RequestMapping(value = "/app/abc", method=RequestMethod.GET)
public void displayRegistration(Model model)
{
...
}
But I always receive "HTTP Status 404" when trying to access xyz://www.domain.com/ or xyz://www.domain.com/abc :-(
It would be very nice if somebody could help.
Greetings
Benny
Did you try with
#RequestMapping(value = "/abc", method=RequestMethod.GET)
Really late reply.
You need to add the grouping symbols (.*)
<urlrewrite >
<rule>
<from>^/(en|de)/(.*)$</from>
<to >/$2?lang=$1</to>
</rule>
</urlrewrite>

Resources