The regular application does not work

I am trying to create a simple JSF application using performances, but somehow poor-quality components do not work out properly. I do not understand what is going wrong.

I am trying to display the following Facelet file:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.prime.com.tr/ui"> <h:head> <link type="text/css" rel="stylesheet" href="/Themes/primefaces-dot-luv/theme.css" /> </h:head> <h:body> <p:spinner value="100" style="height: 10px" /> <br/> <p:button value="Navigate"></p:button> </h:body> </html> 

I use eclipse to run the application on the tomcat server. When I launch the application and view the page source in a browser (firefox), I get the following source:

 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:p="http://primefaces.prime.com.tr/ui"> <head> <link type="text/css" rel="stylesheet" href="Themes/primefaces-dot-luv/theme.css" /> </head> <body> <p:spinner value="100" style="height: 10px"></p:spinner> <br /> <p:button value="Navigate"></p:button> </body> </html> 

I think PrimeFaces components are not getting properly. Other JSF tags, such as <h:head> and <h:body> , translate correctly to <head> and <body> elements, respectively. Only tags starting with <p:> are not converted.

The following is my project structure:

enter image description here

My web.xml as follows:

 <?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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>HelloJSF</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <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> <context-param> <param-name>primefaces.THEME</param-name> <param-value>none</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>client</param-value> </context-param> <context-param> <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name> <param-value>resources.application</param-value> </context-param> <listener> <listener-class>com.sun.faces.config.ConfigureListener</listener-class> </listener> <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> </web-app> 

I am using eclipse, tomcat server. JSF 2 and a 3-layer library.

Hi, After some thorough inspection of the entire project, I found out that there were no classes of Inconsistencies on the site. Yas herself was corrupt. I loaded the same jar three times, and then corruption. So I uploaded a zip file containing the source and binaries and my application started to work.

+4
source share
3 answers

Try changing the display of the web.xml servlet:

 <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.xhtml</url-pattern> </servlet-mapping> 

A way to determine if the Facelets sickle is processing your xhtml to see what the browser receives. If it looks like your xhtml file, you have something incorrectly configured.

+5
source

Change your need

 xmlns:p="http://primefaces.prime.com.tr/ui" 

to

 xmlns:p="http://primefaces.org/ui" 
0
source

You must change your namespace to xmlns: p = "http://primefaces.org/ui"

and execute this button this way

  <p:commandButton value="Home" process="@this" action="actionMethod()" immediate="true" rendered="true or renderingMethod()" /> 
0
source

Source: https://habr.com/ru/post/1369353/


All Articles