f:validateRegex 将 jsf 2.1 项目部署到 weblogic 12c 时始终检查

f:validateRegex always checked when deploy a jsf2.1 project into weblogic12c

我要部署一个jsf2.1(jsf2.1+spring3+primface-3.0.M3)项目到weblogic 12c(jdk1.8)。

在weblogic12c中实现还很长,但是还是有一些问题,比如

如何在不更改模式或其他属性的情况下修复它?

我的代码: <f:validateRegex pattern="^[0-9a-zA-Z;\s\r\*]+$" />

我的weblogic.xml:

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app">
    <container-descriptor>
        <prefer-web-inf-classes>false</prefer-web-inf-classes>
        <prefer-application-packages>
            <package-name>javax.faces.*</package-name>
            <package-name>com.sun.faces.*</package-name>
            <package-name>com.bea.faces.*</package-name>
            <package-name>net.sf.cglib.*</package-name>
            <package-name>javax.annotation.*</package-name>
            <package-name>org.primefaces.*</package-name>
        </prefer-application-packages>

        <prefer-application-resources>
            <resource-name>javax.faces.*</resource-name>
            <resource-name>com.sun.faces.*</resource-name>
            <resource-name>com.bea.faces.*</resource-name>
            <resource-name>META-INF/services/javax.servlet.ServletContainerInitializer</resource-name>
            <resource-name>META-INF/services/com.sun.faces.spi.FacesConfigResourceProvider</resource-name>
            <resource-name>META-INF/resources/javax.faces/jsf.js</resource-name>
            <resource-name>META-INF/resources/javax.faces/jsf-uncompressed.js</resource-name>           
        </prefer-application-resources>
        <!-- <prefer-web-inf-classes>true</prefer-web-inf-classes> -->
    </container-descriptor>
</weblogic-web-app>  

感谢您的阅读。

为避免验证空字段,您可以将此参数添加到您的 web.xml(适用于 jsf 2.1)

<context-param>
    <param-name>javax.faces.VALIDATE_EMPTY_FIELDS</param-name>
    <param-value>false</param-value>
</context-param>

In this post 你可以找到一些解释和许多其他参数。