PrimeFaces 验证码未按预期工作

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

我想在注册用户时添加验证码验证。我正在使用

p:captcha
。密钥设置正确,我可以在本地计算机中看到验证码。但在服务器上,验证验证码并单击提交后,验证码将重置并给出错误:
Please validate Captcha.
(下面的必需消息)并停留在同一页面上。
它没有击中我服务器上的控制器。我们需要在服务器上进行一些设置吗?但是,它在我的本地计算机上运行良好。在服务器上,没有日志,没有错误。

页面上显示新的验证码:
Fresh Captcha showing on page
验证后:
After validating
单击提交后:(验证码重置。它没有击中我的后端控制器,只是卡在同一页面上)
After clicking on submit

我有一个验证码定义如下:

register.xhtml
文件:

<ui:define name="content">
    <h:form id="registerForm">
        <div class="card-body">
            <ui:include src="userDetails.xhtml" />
            <p:commandButton 
                type="submit" styleClass="float-end" value="Submit" 
                update="@form" process="@form" icon="pi pi-chevron-circle-right"
                id="sign-up-button" escape="false" actionListener="#Cntrl.submit}" 
                ajax="false" />
        </div>
    </h:form>
</ui:define>

文件

userDetails.xhtml

<div class="col-md-6">
    <ui:define name="control">
        <p:captcha 
            label="Captcha" id="captcha" required="true" 
            requiredMessage="Please validate Captcha." 
            validatorMessage="Please validate Captcha." />
        <p:message for="captcha" escape="false" />
    </ui:define>
</div>

PrimeFaces 版本:13.0.4 || MyFaces 版本:4.0.1 || Java 17

jsf primefaces captcha
1个回答
0
投票

我找到了另一种验证码的方法,以及这个问题的解决方案。

我正在使用 mewebstudio 的 Java 验证码生成器(GitHub 项目)。

它按预期工作,并且不依赖于 javax/jakarta。

验证码图片:Captcha Imagee

它是高度可定制的。谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.