是的,我们已经扩展了JSF(实际上是oracleadf)组件,以满足那些无法开箱即用的特殊需求。您将需要获得这些呈现的所有源文件,并对要删除的有问题的HTML进行递归搜索
application/xhtml+xml
. 这只是为了确保它实际上在
HtmlResponseWriter
班级。JSF组件框架可能很复杂,所以您永远不会知道,可能还有其他实例呈现了这个头。
自从
HtmlResponseWriter
未声明
final
就像某些组件一样,您可以扩展它,并重写其中的方法
应用程序/xhtml+xml
register it
faces-config.xml
. 唯一的障碍是如果在
在需要重写的方法中被引用。如果是这种情况,你要么不能在你的重新实现中引用它们,要么你必须完全重新构建一个新的
HtmlResponseWriter
类(通过扩展
ResponseWriter
模拟每个方法和实例变量)。延长服务期限的好处
HTMLResponseWriter
您将自动获取对它所做的任何更改(来自JSF更新)(当然,重写方法除外)。
更新:
这是我为faces-config.xml所做的,但它使用的是Oracle ADF:
<?xml version="1.0" encoding="windows-1252"?>
<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee">
<application>
<default-render-kit-id>oracle.adf.rich</default-render-kit-id>
</application>
<render-kit>
<render-kit-id>oracle.adf.rich</render-kit-id>
<renderer>
<component-family>org.apache.myfaces.trinidad.Input</component-family>
<renderer-type>oracle.adf.rich.Text</renderer-type>
<renderer-class>com.company.jsf.renders.text.CustomRenderer</renderer-class>
</renderer>
</render-kit>
</faces-config>