如何使用PrimeFaces

时间:2018-04-12 07:50:47

标签: spring-boot primefaces

我有sample Spring Boot project for PrimeFaces并正在寻找让awesomefont工作的方法,如PF Showcase所示。

所以我创建了awesomefont-test.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:p="http://primefaces.org/ui">

<h:head>
  <title>Awesomefont Test</title>
</h:head>

<h:body>

    <p:commandButton value="Edit" icon="fa fa-fw fa-edit" type="button"/>

</h:body>
</html>

,结果是(没有图标)

button without awesomefont icon

我尝试了几件事:

1。)web.xml

我创建了web.xml,并尝试将它放在faces-config.xml(位于jsf-primefaces-spring-boot/src/main/resources/META-INF/)旁边。

我试图把它jsf-primefaces-spring-boot/src/main/resources/WEB-INF/也不用了。

我不知道如何检查它是否已被阅读。

含量:

<?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"
    version="3.0">

    <context-param>
        <param-name>primefaces.FONT_AWESOME</param-name>
        <param-value>true</param-value>
    </context-param>

</web-app>

2.)SpringBootServletInitializer

package com.codenotfound.primefaces;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer;

@SpringBootApplication
public class SpringPrimeFacesApplication extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(SpringPrimeFacesApplication.class, args);
    }

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {
        servletContext.setInitParameter("primefaces.FONT_AWESOME", "true");
        super.onStartup(servletContext);
    }

}

来源:How to set context-param in spring-boot

3.)application.properties

我从同一来源尝试在application.properties

中设置属性
server.context_parameters.primefaces.FONT_AWESOME=true

我也试过

变种
server.servlet.context-parameters.primefaces.FONT_AWESOME=true

4.。)webjars

这是一种解决方法,我只是想尝试一下。

我还尝试添加webjars依赖项(并修改xhtml),如此处所述 - http://www.littlebigextra.com/add-bootstrap-css-jquery-to-springboot-mvc/

但这些方法都不适合我。

2 个答案:

答案 0 :(得分:0)

在pom.xml中定义依赖项之后:

<dependency>
  <groupId>org.webjars</groupId>
  <artifactId>font-awesome</artifactId>
  <version>4.7.0</version>
</dependency>

您需要将配置添加到application.yml

jsf:
  primefaces: 
    FONT_AWESOME: true

或如果使用application.properties添加:

jsf.primefaces.FONT_AWESOME=true

答案 1 :(得分:0)

您不需要创建Web xml,只需添加依赖项,然后在您的application.properties中添加以下内容即可:

jsf.primefaces.font-awesome=true

如果要配置主题,请添加以下内容:

jsf.primefaces.theme= theme-name