2015-01-08 6 views
0

Я использую PrettyFaces для перезаписи URL-адресов, я использовал Glassfish 4 в качестве сервера приложений, и я хорошо управлял URL-адресами с поверхностями, но после миграции сервера на WildFly 8.0 я не могу получить страницу с ее идентификатором определены в довольно-config.xml (я могу получить страницу только с помощью URL, т.е. завершена домен: порт /../ page1.jsf)PrettyFaces не работает под WildFly

здесь 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" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0"> 

    <display-name>Cursus Management</display-name> 

    <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value> 
      /WEB-INF/applicationContext-security.xml 
      /WEB-INF/applicationContext.xml 
     </param-value> 
    </context-param> 
    <context-param> 
     <param-name>javax.faces.PROJECT_STAGE</param-name> 
     <param-value>Development</param-value> 
    </context-param> 
    <context-param> 
     <param-name>javax.faces.STATE_SAVING_METHOD</param-name> 
     <param-value>server</param-value> 
    </context-param> 
    <context-param> 
     <param-name>com.ocpsoft.pretty.DEVELOPMENT</param-name> 
     <param-value>true</param-value> 
    </context-param> 
    <context-param> 
     <param-name>primefaces.THEME</param-name> 
     <param-value>bootstrap</param-value> 
    </context-param> 

    <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 

    <listener> 
     <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> 
    </listener> 

    <listener> 
     <listener-class>com.sun.faces.config.ConfigureListener</listener-class> 
    </listener> 

    <filter> 
     <filter-name>Pretty Filter</filter-name> 
     <filter-class>com.ocpsoft.pretty.PrettyFilter</filter-class> 
    </filter> 
    <filter-mapping> 
     <filter-name>Pretty Filter</filter-name> 
     <url-pattern>/*</url-pattern> 
     <dispatcher>FORWARD</dispatcher> 
     <dispatcher>REQUEST</dispatcher> 
     <dispatcher>ERROR</dispatcher> 
    </filter-mapping> 

    <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> 
     <dispatcher>FORWARD</dispatcher> 
     <dispatcher>INCLUDE</dispatcher> 
     <dispatcher>REQUEST</dispatcher> 
    </filter-mapping> 

    <filter> 
     <filter-name>encodingFilter</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> 

    <servlet> 
     <servlet-name>Faces Servlet</servlet-name> 
     <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.jsf</url-pattern> 
    </servlet-mapping> 
    <welcome-file-list> 
     <welcome-file>index.jsp</welcome-file> 
    </welcome-file-list> 
</web-app> 

довольно-конфигурации .xml

<pretty-config xmlns="http://ocpsoft.com/prettyfaces/3.3.3" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://ocpsoft.com/prettyfaces/3.3.3 
http://ocpsoft.com/xml/ns/prettyfaces/ocpsoft-pretty-faces-3.3.3.xsd"> 
<!-- Begin UrlMappings --> 

<url-mapping id="test"> 
    <pattern value="/test" /> 
    <view-id value="/pages/test.jsf" /> 
</url-mapping> 
<url-mapping id="home"> 
    <pattern value="/" /> 
    <view-id value="/pages/index.jsf" /> 
... 
</pretty-config> 

Зависимость prettyface определяется в pom.xml:

<!-- PrettyFaces --> 
    <dependency> 
     <groupId>com.ocpsoft</groupId> 
     <artifactId>prettyfaces-jsf2</artifactId> 
     <version>3.3.3</version> 
    </dependency> 
+1

WildFly 8,0 стар и имеют некоторые неудобные ошибки, как для обработки сеанса HTTP. Вместо этого попробуйте ввести 8.2. – BalusC

+1

И PrettyFaces 3.3.3 тоже очень старый. Вместо этого вы должны использовать Rewrite с модулем PrettyFaces. См. Http://ocpsoft.org/rewrite/ и руководство по миграции: http://ocpsoft.org/rewrite/docs/migration/prettyfaces3 – chkal

+0

@BalusC большое спасибо, вы помогли мне решить множество проблем в эти последние дни. chkal Я сделал то, что вы предложили, и теперь это работает. – SSouhaieb

ответ

1

Вы пробовали более позднюю версию Wildfly или PrettyFaces? Пожалуйста, ознакомьтесь с новыми инструкциями по установке здесь: http://ocpsoft.org/prettyfaces/

(Примечание: PrettyFaces теперь является расширение переписывания.)