primefaces 二维码未显示?

问题描述 投票:0回答:2

我正在使用 primefaces 开发一个网络应用程序。我试图在网页上显示条形码。除了二维码之外,所有编码器都会显示。我已经读到此需要两个 jar 文件 sample

  • barcode4j:2.1
  • qrgen:1.4

我已将这些 jar 文件添加到 lib 文件夹中并尝试运行它。这样,当我在 lib 文件夹中添加 qrgen 时,我会收到 404 错误。

我尝试使用 Maven 进行此操作,我添加了依赖项,如下所示:

<dependency>
    <groupId>net.glxn</groupId>
    <artifactId>qrgen</artifactId>
    <version>1.4</version>
</dependency>
<dependency>
    <groupId>net.sf.barcode4j</groupId>
    <artifactId>barcode4j-light</artifactId>
    <version>2.1</version>
</dependency>

但是我得到了第二个依赖项的错误,所以我复制了lib文件夹中的barcode4j,但我无法打印二维码。请帮助我。

xhtml 代码

<!DOCTYPE html>
<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>login</title>
    </h:head>
    <h:body>

   <p:panelGrid columns="2">
    <h:outputText value="Interleaved 2 of 5" />
    <p:barcode value="0123456789" type="int2of5" />

    <h:outputText value="Codabar" />
    <p:barcode value="0123456789" type="codabar"/>

    <h:outputText value="Code39" />
    <p:barcode value="0123456789" type="code39" />

    <h:outputText value="Code128" />
    <p:barcode value="0123456789" type="code128"/>

    <h:outputText value="EAN-8" />
    <p:barcode value="20123451" type="ean8"/>

    <h:outputText value="EAN-13" />
    <p:barcode value="0123456789012" type="ean13"/>

    <h:outputText value="UPC-A (PNG)" />
    <p:barcode value="01234567895" type="upca" format="png"/>

    <h:outputText value="UPC-E (Vertical)" />
    <p:barcode value="01234133" type="upce" orientation="90"/>

    <h:outputText value="PDF417" />
    <p:barcode value="0123456789" type="pdf417"/>

    <h:outputText value="DataMatrix" />
    <p:barcode value="0123456789" type="datamatrix"/>

    <h:outputText value="Postnet" />
    <p:barcode value="0123456789" type="postnet"/>

    <h:outputText value="QR" />
    <p:barcode value="0123456789" type="qr"/>
</p:panelGrid>
    </h:body> 

</html>

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.prime</groupId>
    <artifactId>primedemop</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>primefaces</name>
    <dependencies>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.primefaces</groupId>
            <artifactId>primefaces</artifactId>
            <version>5.1</version>
        </dependency>
          <dependency>
        <groupId>net.glxn</groupId>
        <artifactId>qrgen</artifactId>
        <version>1.4</version>
    </dependency>


    </dependencies>![smaple][2]
</project>
java maven jsf jsf-2 primefaces
2个回答
3
投票

我猜你一切都好。但你错过了一件事。你正在使用的 qrgen-1.4 进一步具有依赖关系,如 zxing-core-2.0zxing-javase 尝试将这两个 jar 文件包含到你的构建路径这些可能会很好用。


0
投票

尝试:

 <!-- Barcode: print QR -->
        <dependency>
            <groupId>io.nayuki</groupId>
            <artifactId>qrcodegen</artifactId>
            <version>1.8.0</version>
        </dependency>
        <dependency>
            <groupId>org.primefaces.extensions</groupId>
            <artifactId>barcode4j-light</artifactId>
            <version>2.3.0</version>
        </dependency>
© www.soinside.com 2019 - 2024. All rights reserved.