You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by sdfreetiger <sd...@yahoo.com> on 2006/04/28 05:05:25 UTC

How to override the renderer for ADF component?

I want to overide the renderer for ADF components, without using
<default-render-kit>, I defined every render class. But It does not work.
Always told me: Could not find renderer for CoreOutputText[UIXFacesBeanImpl,
id=_id0], rendererType = oracle.adf.Text

How can I config custom renderer for exsiting component or new components?


Thanks a lot!


<render-kit>
<render-kit-id>oracle.adf.core</render-kit-id>

<renderer>
<component-family>oracle.adf.Output</component-family>
<renderer-type>oracle.adf.Formatted</renderer-type>
<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.OutputFormattedRenderer</renderer-class>
</renderer>

<renderer>
<component-family>oracle.adf.Choose</component-family>
<renderer-type>oracle.adf.Date</renderer-type>

<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.ChooseDateRenderer</renderer-class>
</renderer>
<renderer>
<component-family>oracle.adf.Input</component-family>
<renderer-type>oracle.adf.Text</renderer-type>

<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.InputTextRenderer</renderer-class>
</renderer>
<renderer>
<component-family>oracle.adf.SelectInput</component-family>
<renderer-type>oracle.adf.Date</renderer-type>

<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.SelectInputDateRenderer</renderer-class>
</renderer>
<renderer>
<component-family>oracle.adf.Object</component-family>
<renderer-type>oracle.adf.Separator</renderer-type>
<renderer-class>oracle.adfinternal.view.faces.uinode.UINodeRendererBase</renderer-class>
</renderer>
<renderer>
<component-family>oracle.adf.Command</component-family>
<renderer-type>oracle.adf.Link</renderer-type>

<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.CommandLinkRenderer</renderer-class>
</renderer>
<renderer>
<component-family>oracle.adf.Panel</component-family>
<renderer-type>oracle.adf.Group</renderer-type>

<renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelGroupRenderer</renderer-class>
</renderer>
</render-kit> 

--
View this message in context: http://www.nabble.com/How-to-override-the-renderer-for-ADF-component--t1522173.html#a4133619
Sent from the My Faces - Dev forum at Nabble.com.


Re: How to override the renderer for ADF component?

Posted by xie min <xi...@gmail.com>.
hi,
you can using  <default-render-kit> to tell the jsf using the ADF renderkit,
or you can provide a new ViewHandler, overwirite the calculateRenderKitId
method, just like this:

public class DelegatingViewHandler extends ViewHandler
{
 private ViewHandler originalViewHander;

 public DelegatingViewHandler(ViewHandler originalViewHander)
 {
        this.originalViewHander = originalViewHander;
 }

 public String calculateRenderKitId(FacesContext context)
 {
        return "oracle.adf.core";
 }

.....

2006/4/28, sdfreetiger <sd...@yahoo.com>:
>
>
> I want to overide the renderer for ADF components, without using
> <default-render-kit>, I defined every render class. But It does not work.
> Always told me: Could not find renderer for
> CoreOutputText[UIXFacesBeanImpl,
> id=_id0], rendererType = oracle.adf.Text
>
> How can I config custom renderer for exsiting component or new components?
>
>
> Thanks a lot!
>
>
> <render-kit>
> <render-kit-id>oracle.adf.core</render-kit-id>
>
> <renderer>
> <component-family>oracle.adf.Output</component-family>
> <renderer-type>oracle.adf.Formatted</renderer-type>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.OutputFormattedRenderer
> </renderer-class>
> </renderer>
>
> <renderer>
> <component-family>oracle.adf.Choose</component-family>
> <renderer-type>oracle.adf.Date</renderer-type>
>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.ChooseDateRenderer
> </renderer-class>
> </renderer>
> <renderer>
> <component-family>oracle.adf.Input</component-family>
> <renderer-type>oracle.adf.Text</renderer-type>
>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.InputTextRenderer
> </renderer-class>
> </renderer>
> <renderer>
> <component-family>oracle.adf.SelectInput</component-family>
> <renderer-type>oracle.adf.Date</renderer-type>
>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.SelectInputDateRenderer
> </renderer-class>
> </renderer>
> <renderer>
> <component-family>oracle.adf.Object</component-family>
> <renderer-type>oracle.adf.Separator</renderer-type>
> <renderer-class>oracle.adfinternal.view.faces.uinode.UINodeRendererBase
> </renderer-class>
> </renderer>
> <renderer>
> <component-family>oracle.adf.Command</component-family>
> <renderer-type>oracle.adf.Link</renderer-type>
>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.CommandLinkRenderer
> </renderer-class>
> </renderer>
> <renderer>
> <component-family>oracle.adf.Panel</component-family>
> <renderer-type>oracle.adf.Group</renderer-type>
>
> <renderer-class>
> oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelGroupRenderer
> </renderer-class>
> </renderer>
> </render-kit>
>
> --
> View this message in context:
> http://www.nabble.com/How-to-override-the-renderer-for-ADF-component--t1522173.html#a4133619
> Sent from the My Faces - Dev forum at Nabble.com.
>
>