You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Weblogic11g升级至12c时遇org.springframework.faces.ui.DojoClientTextValidator缺失异常求助

解决java.lang.ClassNotFoundException: org.springframework.faces.ui.DojoClientTextValidator异常

这个问题我之前帮团队排查过,核心原因很明确:Spring Faces 2.4及后续版本彻底移除了org.springframework.faces.ui.DojoClientTextValidator类——因为Spring从2.4版本开始放弃了对Dojo的内置支持,而你之前用的Spring Web Flow 2.3搭配Spring Faces 2.3是包含这个类的,升级到Spring Web Flow 2.4.6后,对应的Spring Faces版本(2.4.x)已经没有这个类了,所以抛出了找不到类的异常。

下面给你三个可行的解决方向,按推荐优先级排序:

方案1:用PrimeFaces原生组件替换Dojo验证器(首推)

既然你的应用已经在用PrimeFaces 5.2,完全没必要再依赖Spring Faces已废弃的Dojo组件,直接用PrimeFaces自带的客户端验证能力替代即可,更贴合你的技术栈,也更稳定:

  • 原来的DojoClientTextValidator主要用于客户端文本长度、格式这类验证,你可以用PrimeFaces的<p:clientValidator>配合标准JSF验证器实现,示例代码如下:
    <p:inputText id="userEmail" value="#{userBean.email}">
        <f:validateRegex pattern="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$" />
        <p:clientValidator />
    </p:inputText>
    
  • 如果需要自定义客户端逻辑,还可以用<p:remoteValidator>或者结合PrimeFaces的p:ajax做异步验证,灵活性更高。

方案2:回退Spring版本并解决Weblogic类冲突(应急可用)

如果暂时没时间大规模替换组件,可以回退到包含该类的Spring版本,同时解决Weblogic 12c初期的Spring jar冲突问题:

  • 保持Spring Web Flow 2.3.x + Spring Framework 3.2.x + Spring Faces 2.3.x的组合,然后在应用的weblogic.xml中添加prefer-application-packages配置,让Weblogic优先加载你应用打包的Spring类,避免和服务器自带的Spring类冲突:
    <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app">
        <container-descriptor>
            <prefer-application-packages>
                <package-name>org.springframework.*</package-name>
            </prefer-application-packages>
        </container-descriptor>
    </weblogic-web-app>
    
    这个配置能解决升级初期的Spring jar冲突,同时保留原来的DojoClientTextValidator类,但长期来看不推荐,因为这些版本的Spring已经停止维护了。

方案3:手动引入旧版Spring Faces jar(不推荐)

如果一定要保留这个类,可以单独引入Spring Faces 2.3的jar,但这样会带来版本冲突风险——新的Spring Web Flow 2.4.6和旧的Spring Faces 2.3可能存在API不兼容问题,容易引发其他异常,所以只建议作为最后的应急手段。

额外提醒

升级Weblogic 12c时还要注意:Weblogic 12c自带JSF 2.2,PrimeFaces 5.2是支持JSF 2.2的,但要确保应用的JSF配置和服务器版本一致,避免出现JSF类冲突的问题。

内容的提问来源于stack exchange,提问作者user3340820

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:56:39