没有/ faces /无法访问JSF2应用程序

Moh*_*uja 7 apache jsf tomcat primefaces jsf-2

我有一个JSF2应用程序我可以访问我的应用程序@ http://tvmteleshopping.com/faces/ui/manageProfile.xhtml

但是当我使用http://tvmteleshopping.com/ui/manageProfile.xhtml(没有/ faces /)时,这个请求是由Apache而不是tomcat提供的.呈现任何仅静态HTML内容.

我使用Apache来提供静态HTML文件和tomcat来提供*.xhtml文件

我的Servlet映射很好: web.xml

  <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>/faces/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.faces</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
  </servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

我的cp_jkmount.conf将jsp和jsf文件重定向到tocat服务器.

<IfModule mod_jk.c>
  JkMount /*.jsp ajp13
  JKMount /*.do ajp13
  JKMount /servlet/* ajp13
  JKMount /servlets/* ajp13
  JKMount /*.xhtml ajp13
  JKMount /ui/* ajp13
  JKMount /ui/*.xhtml ajp13
  JKMount /faces/* ajp13
  JKMount /*.jsf ajp13
</IfModule>
Run Code Online (Sandbox Code Playgroud)

我有两个cp_jkmount.conf,一个在/ usr/local/apache/conf/userdata/std/1 /myuser/mysite.com/cp_jkmount.conf

和/ usr/local/apache/conf/userdata/std/2 /myuser/mysite.com/cp_jkmount.conf中的一个

而我的两个cp_jkmount都是一样的.我不知道为什么我在两个不同的目录中有两个cp_jkmount.conf.

PS:我的应用程序适用于根文件夹http://tvmteleshopping.com/index.xhtml中的 .xhtml文件

为此,我认为我的cp_jkmout.conf工作正常.但对于'ui'文件夹后面的那些.xhtml文件,它不起作用.

Nik*_*hil 2

你为什么不使用

http://tvmteleshopping.com/manageProfile.jsf

代替

http://tvmteleshopping.com/ui/manageProfile.xhml或者其他任何东西作为超链接?

让框架为您找到页面,而不是您明确提及路径。