How to build custom JSF components?

The JSF tutorials demonstrate ways to build JSF web "applications" ...
I am interested in developing JSF web "components" ... Is there any resource that I can avail of or if it's possible for some of u to share a sample ...
thanks much,
keyur

Hi Keyur,
The tutorial does need to include a custom component example. We have been working on an example and it's just about done. We need to work out some bugs, get it working on the RI that is publicly available, and document it.
If you need to get started in the meantime, here are some basic steps for creating a custom component:
1. Write a tag handler class that extends javax.faces.webapp.FacesTag. In this
class, you need:
* a getRendererType method, which returns the name of your custom renderer, if
you are using one (explained in step 4).
* a createComponent method, which returns an instance of your custom component.
* an overrideProperties method, in which you set all of the new attributes of
your component.
2. Create a TLD that associates the custom tag to the tag handler.
3. Write a class that either extends a standard JSF component or extends directly from javax.faces.component.UIComponentBase.
If a standard JSF component has most of the functionality you need, you can extend the component class that defines this component. These classes are found in the javax.faces.component package. Otherwise, extend UIComponentBase.
4. Either create a custom renderer by extending javax.faces.render.Renderer, or include the rendering code in one of the encodeXXX methods of your custom
component class. From the encodeXXX method, use the ResponseWriter from FacesContext to write out the markup. If what you need to render is fairly
simple, it's easier to include the rendering code in the component class.
5. From your ServletContextListener instance, register your Renderer to the standard RenderKit by: using RenderKitFactory to get the RenderKit, and using
addRenderer on the RenderKit to add your new Renderer. You only need to do this if you created a Renderer in step 4.
6. Declare your new TLD in your JSP page and use the tag in the page.
This will all be clearer once we publish the custom component documentation. We are working on it presently and will announce its release on this forum.
Thank you for your interest in JavaServer Faces

Similar Messages

  • Problem Adding Custom JSF Components to Oracle JDeveloper 10g (10.1.3) Prev

    I'm having a problem on Adding Custom JSF Components to Oracle JDeveloper 10g (10.1.3) Preview (http://www.oracle.com/technology/products/jdev/101/collateral/101/adffaces/howto_customcomponents.html)
    The step 1 of 5 isn't visible for me and I don't see the "Install from local file" option to select the adf-faces-bundle.zip from my file system. The OTN check for updates don't prove the ADF Faces...
    What may I do?

    And...
    If "Check for Updates Wizard" is not launched, you can try to set LANG.
    see: 10.1.3 Can't not launch Update Wizard in Japanese environment.
    10.1.3 Can't not launch Update Wizard in Japanese environment.
    Thanks.
    Takuya Ono

  • Issues in the How To "Build custom popup pages" document

    I followed the How-To document: "Build custom popup pages".
    It worked well with non-special-character data.
    But when I tested ename = KING's, the JavaScript could not handle this ename.
    I believe other special characters will have similar problems.
    Any suggestion for handling special characters in custom popup LOV pages?

    You can use PageURL tag. This is part of the render tag lib. In fact,
    the skeleton JSPs for page tabs use this tag to create links.
    Xin Wu wrote:
    In the portal application, I know I can build a book with multiple pages. These pages can be arranged with some orders. And each page can be navigated by clicking its tab.
    But my question is that if those tabs are disabled, how can i navigate from one page to another one? For example, can i add a next button on a page, and the next button is pointed to the next page? Since I want to have capability to build these page sequences dynamically, I don't want to use java page flow.
    Thank you for your help!

  • How to build custom portal database

    I have installed ias902 infrastructure and instance (portal and wireless). I got the default portal page running (http://domain:port/pls/portal). But this portal repository is stored in iasdb which is infrastructure repository. Could anyone tell me how to build our own custom portal database? So the portal repository will be stored in this custom database instead of iasdb.
    Thanks,
    Jean

    It is explained in Metalink
    Note:199101.1
    Subject: Installing Portal 9.0.2.x in a Remote Database

  • How to Build Custom JSP Page to bypass Oracle Apps Login

    Hi All,
    Can some one guide me how to develop a custom jsp page to bypass Oracle Apps R12 Login.
    Actually Our requirement is some external user will enter the login details in some third party login page with the third party generated username and passwrod, that user's credentials are mapped to oracle system,so as soon as they enter credentials having validated it has to redirect that external user to Oracle Apps R12 Home Page, where responsibilities are shown. Currently that third Party login page is set to redirect to RF.jsp but that is not working and throws this error:
    "You are trying to access a page that is no longer active.
    - The referring page may have come from a previous session.Please select Home to Proceed"
    So I am planning to build a custom jsp page to resolve the error.
    As soon as user enter credentials in the third party login page, it will be redirected to my custom login page which in turn redirect external user to Oracle Apps R12 Home Page, where responsibilities are shown. Is it possible? If yes what JSP Page/Servlet I have to invoke from custom JSP Page and what all URL parameters or session parameters and cookies parameter I have to pass or set.
    Can anybody please help me...
    Its very urgent. We are running short of time. Its a sev 1 issue.
    Please reply soon.
    Thanks,
    Raja Dutta

    Hi,
    Thanks for the update.
    Sir its not about calling the JSP Page from OAF page.
    My requirement is what I have explained above.
    Please suggest its urgent.
    Thanks,
    Raja Dutta

  • Exception handling in custom JSF components

    Hi,
    I’m trying to develop a JSF custom component, ‘intended for professional use’ ;-)
    I want to ask you for a definitive and solid way to handling exceptions in the encode/decode methods.
    JSF books don’t say too much about that.
    For example, if your code may produce an ArrayIndexOutOfBoundsExceptions, how will you handle it? Will you use FacesException, JSFException, JSPException, ServletException, or what?
    I find two interesting discussions concerning this, but I want to hear expert voices:
    http://forums.sun.com/thread.jspa?forumID=427&threadID=528752
    http://forums.sun.com/thread.jspa?forumID=427&threadID=528227
    Thanks!

    You should in fact never explicitly catch RuntimeExceptions or Errors, unless you have a really, really good excuse. RuntimeExceptions are a sign of a "developer error" and needs to be bugfixed by just adding solid prechecks, so let them go. Errors are in any way unrecoverable, so let them go as well.
    To avoid ArrayIndexOutOfBoundsException just add a precheck on the array length and so on.

  • How to build custom search using API - 10.1.2

    Hi,
    I have been looking through some documentation and i can't seem to find how to use the API in portal 10.1.2 to create a custom search. Any help or samples would be appreicated.
    Thanks

    The Search API is a new feature in 10.1.4. In older version a custom search portlet was provided, no API.
    <br><br>
    You can build a search engine yourself in Portal 10.1.2 by using the Oracle Text API. The search engine should implement security however which can be quit difficult to accomplish. It is not impossible however.
    <br><br>
    In most cases it is has less impact to upgrade to release 10.1.4 then to build a search engine yourself. My advice would be to install 10.1.4 on a test system and play around with the new search API. You can then decide whether it is worthwhile to upgrade to 10.1.4 where you profit from several nice new features.

  • How to build customized screens for Master Data Users

    Hi all,
    I need to build screens on top of centrally managed master data hub (Data Manager). I want to confirm following
    1) Should I go with Guided procedure (CAF) and pre defined Portal contains provided by SAP for MDM?
    2) Should I use Java API's provided with SAP MDM.
    License is not al all the issue. We have the entire NW components in place. But not sure what to use and what are the advantages/disadv???
    Please share your views....
    Thx,
    R.n

    Hi,
    I would suggest GP would be easier and in this you can integrate with ur customised objects also.
    Vinay

  • How to build a custom Flash CS3 component

    I just googled in the hope to find some resources about how
    to build custom Flash CS3 components, but nothing turned up. I also
    couldn't find any info on Adobe's Flash developers center.
    Do you know of any resource that sheds some light on this
    subject?
    If not then I'll have to try to find my way around custom
    components by learning from the ones that came with Flash CS3 I
    guess.

    Flash CS3 has been out for a few weeks. At this point, your
    best bet is Amazon books or Barnes & Noble. I've read a few
    books that should shed light on the subject. Otherwise, you'll need
    to wait a few more weeks while people start hashing it out and
    posting it to blogs and other sites.

  • How to combine Custom Converters on Custom Components

    Hi, guys:
    I created a custom component just following: http://today.java.net/pub/a/today/2004/07/16/jsfcustom.html
    meanwhile, I also created a custom converter to convert any format of credit number to xxxx-xxxx-xxxx-xxxx. Right now, I'm wanting to use this custom converter with this custom component.
    However, whenever directly use them as:
                             <cc:creditCardInput id="credit_card_number" size="19"
                                               value="#{customerReg.paymentValue.creditCardNumber}">
                            <f:converter  converterId="CreditCardConverter"/>
                         </cc:creditCardInput> MyEclipse IDE complains:
    According to TLD, tag cc:creditCardInput must be empty, but is now.
    Anyone can help me to solve it?
    Thanks a lot
    Paul

    Thanks all of you for responses.
    The related tld as below:
    <taglib>
      <tlib-version>0.03</tlib-version>
      <jsp-version>1.2</jsp-version>
      <short-name>Credit Card Example Component Tag Library</short-name>
      <uri>http://bill.dudney.net/cc/component</uri>
      <description>
           This tag library has the tags for the java.net article about custom
           JSF components. Most of the attributes are actually ignored in this
           simple example.
      </description>
      <tag>
        <name>creditCardInput</name>
        <tag-class>alt.jsf.tags.CreditCardInputTag</tag-class>
        <body-content>empty</body-content>
        <description>
          This is the tag for the credit card input component.
        </description>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>maxlength</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
           </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.
          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              The number of characters used to determine
              the width of this field.
          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.
          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
      </tag>
    </taglib>

  • Custom JATO components

    hi ...
    i have just about started using jato in conjunction with S1Studio
    and find it a real great asset ...
    we are trying to build custom jato components which can be packaged
    into a jar file and used like any other standard jato component ...
    e.g. i have developed this date component which is basically a
    composition of 3 comboboxes - one each for m/d/y ...
    to render these 3 comboboxes i have a "date" tag (DateTag.java)
    which basically includes a file Date.jsp in the parent jsp - the
    contents of Date.jsp:
    <jato:pagelet>
    <jato:combobox name="month"/>
    <jato:combobox name="day"/>
    <jato:combobox name="year"/>
    </jato:pagelet>
    The problem with this approach is that I can't package a JSP in a
    jar since the web server would not be able to determine the path to
    the jsp ...
    Can any of u direct me here? ... Also, if u have an example of a
    similar packaged custom jato component - that'd be of great help!
    thanks much,
    keyur

    Thanks Craig ... but Somehow this didnt work - maybe I didnt follow
    the steps correctly ... here is what i did:
    the jar file -> date.jar
    date.jar has .class files arranged according to their package
    names ..
    there's also the "COMP-INF" directory ...
    in addition to these - i added another folder called "webapp" ...
    and within "webapp" i housed the JSPs ...
    i then copied date.jar to <context root>/WEB-INF/lib folder and
    started the server ...
    however, the web server didn't extract out the JSPs ... did i go
    wrong somewhere? .... am i to do something other than this - like
    create the jar with some special parameter or change some
    configuration in the server?
    thanks!
    keyur
    --- In SunONE-JATO@y..., "Craig V. Conover" <craig.conover@s...>
    wrote:
    Keyur,
    You are in luck. There is a way to bundle the JSPs (or any web resources
    like images and other jar's) in the component jar file so that the tool
    will expand them properly into your web application's doc root.
    It's not officially documented yet, as is the case with creating
    components in general, but here's what you do:
    You have the ability to extract arbitrary files from a component library jar file into the web app's file system. This allows
    libraries to automatically unpack files like additional jars,
    images, pagelets, etc. All that's needed to take advantage of this
    new feature is to create a hierarchy of files in the complib under
    a "webapp" directory (off the root). The files under that directory
    will then be automatically extracted into the web context's
    filesystem.
    >
    For example:
    /webapp/test/foo.html
    will extract to
    <context root>/test/foo.html
    and the following
    /webapp/WEB-INF/lib/foo.jar
    will extract to
    <context root>/WEB-INF/lib/foo.jar
    Anything not under the "webapp" dir in the component jar file will stay packaged in the jar file.
    >
    Does that make sense?
    craig
    Keyur Shah wrote:
    hi ...
    i have just about started using jato in conjunction with S1Studio
    and find it a real great asset ...
    we are trying to build custom jato components which can be
    packaged
    into a jar file and used like any other standard jato component ...
    >>
    e.g. i have developed this date component which is basically a
    composition of 3 comboboxes - one each for m/d/y ...
    to render these 3 comboboxes i have a "date" tag (DateTag.java)
    which basically includes a file Date.jsp in the parent jsp - the
    contents of Date.jsp:
    <jato:pagelet>
    <jato:combobox name="month"/>
    <jato:combobox name="day"/>
    <jato:combobox name="year"/>
    </jato:pagelet>
    The problem with this approach is that I can't package a JSP in a
    jar since the web server would not be able to determine the path to
    the jsp ...
    Can any of u direct me here? ... Also, if u have an example of a
    similar packaged custom jato component - that'd be of great help!
    thanks much,
    keyur
    To download the latest version of JATO, please visit:
    http://www.sun.com/software/download/developer/5102.html
    For more information about JATO, please visit:
    http://developer.iplanet.com/tech/appserver/framework/index.jsp
    Service

  • Can I have the standard JSF Components use my RenderKit

    I am new to JSF.
    I had a problem on an applicaiton server where the app server's ResponseWriter implementation was breaking my JSF App. My JSF App uses both the standard as well as our custom JSF components. The solution found was using our custom HTMLResponseWriter, which was plugged in in a sort of hack solution for time being. Now I want to make a new custom RenderKit which will use this ResoponseWriter . What I want to do is this :
    i) The RenderKit will obvoiously be pluggable. The standard JSF components will be using the JSF Implementation default render kit. But with a simple entry of my RenderKit in faces-config.xml, I will have my custom components as well as the standard JSF components use my renderkit.
    ii) The only purpose of having my RenderKit is using the custom ResponseWriter . Is this the right approach ? If not please suggest.
    regards
    Vishwanath

    Hi,
    1. Pls check whether you have users assigned for the org unit which you are assigning for PR configuration.
    2. You should copy the std workflow and do the modification, and not modify the std workflow itself.
    Hope this helps.
    Regds,
    Akshay Bhagwat

  • How do I apply programmatic skins for completely custom drawn components of a Flex library project?

    Hello folks,
    I am looking for best practices advice when (1) creating
    custom components and (2) styling and skinning.
    I already know how to skin a component part of the Flex
    framework. I can make a class extending ProgrammaticSkin and have
    my component skinned using CSS to link the component with the
    reference to my custom class.
    However what about those cases when you are completely
    creating a component from scratch?
    Imagine a "Freehand Drawing Canvas" component that allows the
    user to draw on it and has some buttons to set color styles, line
    styles, etc., or imagine a "Screen Flow Gallery" component that
    displays visual objects in a fashion similar to Cover Flow in the
    Mac.
    In many components I am aware you may reuse other components
    part of the Flex framework but I am trying to picture an scenario
    where you would need to draw everything yourself because there just
    isn't something to base it upon so you will end up drawing it from
    scratch.
    To learn how instead of building one of those components I
    mentioned previously I decided to start with something simple that
    would illustrate this like a LiteButton component that will behave
    just like the Flex mx.controls.Button but will extend UIComponent
    and be completely custom drawn.
    The component will have a default look and will also be
    style-able and skin-able. I will provide styles for users of the
    component to modify and regarding skinning anyone can create a
    custom ProgrammaticSkin adding its own drawing logic and link it to
    the component via CSS with the ClassReference applied to the skin
    selector.
    So far so good and it's clear what I want to achieve. I
    actually know how to do most of the stuff here but I have one
    single problem.
    Here is my question, where should I put my custom drawing
    logic? If I do it in the updateDisplayList inside the class
    extending UIComponent it works, however I thought that it would be
    a better practice to do it using programmatic skins, that way I
    could provide different skin themes for my component set.
    The problem is that I can't make the programmatic work in
    this scenario. I tried instantiating the custom programmatic skin
    during the updateDisplayList of the LiteButton component and adding
    it to my display object via addChild but that didn't do anything. I
    also tried creating a "default.css" stylesheet and tried to use
    ClassReference as I would normally do to skin an already existing
    component (or composite component as well) but that didn't do
    anything either.
    So how do I apply programmatic skins for completely custom
    drawn components of my Flex library project?
    I could do it inside the updateDisplayList of the LiteButton
    class extending UIComponent but again I would like to provide
    different theme sets for my components so it makes sense using
    programmatic skins.

    "jbucaran" <[email protected]> wrote in
    message
    news:[email protected]...
    > Hello folks,
    >
    > I am looking for best practices advice when (1) creating
    custom components
    > and
    > (2) styling and skinning.
    >
    > I already know how to skin a component part of the Flex
    framework. I can
    > make
    > a class extending ProgrammaticSkin and have my component
    skinned using CSS
    > to
    > link the component with the reference to my custom
    class.
    >
    > However what about those cases when you are completely
    creating a
    > component
    > from scratch?
    >
    > Imagine a "Freehand Drawing Canvas" component that
    allows the user to draw
    > on
    > it and has some buttons to set color styles, line
    styles, etc., or imagine
    > a
    > "Screen Flow Gallery" component that displays visual
    objects in a fashion
    > similar to Cover Flow in the Mac.
    >
    > In many components I am aware you may reuse other
    components part of the
    > Flex
    > framework but I am trying to picture an scenario where
    you would need to
    > draw
    > everything yourself because there just isn't something
    to base it upon so
    > you
    > will end up drawing it from scratch.
    This may help with that
    http://livedocs.adobe.com/flex/3/html/help.html?content=skinstyle_3.html
    > To learn how instead of building one of those components
    I mentioned
    > previously I decided to start with something simple that
    would illustrate
    > this
    > like a LiteButton component that will behave just like
    the Flex
    > mx.controls.Button but will extend UIComponent and be
    completely custom
    > drawn.
    >
    > The component will have a default look and will also be
    style-able and
    > skin-able. I will provide styles for users of the
    component to modify and
    > regarding skinning anyone can create a custom
    ProgrammaticSkin adding its
    > own
    > drawing logic and link it to the component via CSS with
    the ClassReference
    > applied to the skin selector.
    >
    > So far so good and it's clear what I want to achieve.
    Actually after
    > playing
    > with the weekend and today I know how to do most of the
    stuff but I have
    > one
    > single problem. So here is my question, where should I
    provide my custom
    > drawing logic? If I do it in the updateDisplayList
    inside the class
    > extending
    > UIComponent it works, however I thought that it would be
    a better practice
    > to
    > do it using programmatic skins, that way I could provide
    different skin
    > themes
    > for my component set.
    These aren't mutually exclusive. When you provide a skin with
    a
    TypeSelector, you have to add it to the display list
    somewhere, and this is
    typically done in updateDisplayList or addChildren. I prefer
    to do it in
    updateDisplayList, because you can then change it if the
    style changes.
    > The problem is that I can't make the programmatic work
    in this scenario. I
    > tried instantiating the custom programmatic skin during
    the
    > updateDisplayList
    > of the LiteButton component and adding it to my display
    object via
    > addChild but
    > that didn't do anything.
    Exactly what did you do?
    > I also tried creating a "default.css" stylesheet and
    > tried to use ClassReference as I would normally do to
    skin an already
    > existing
    > component (or composite component as well) but that
    didn't do anything
    > either.
    I've never had any problem using an approach similar to
    this...but I will
    say that I couldn't see any advantage in creating a
    default.css style sheet,
    since it's not really default in the way that the one that
    comes with Flex
    is. It's much more obvious to anyone using your component
    what's going on
    there if you create a style sheet where they're likely to
    spot it.
    > So how do I apply programmatic skins with the default
    look for custom
    > drawn
    > components?
    It seems like your approach is fine, but maybe you've made a
    mistake in your
    implementation.
    > I could do it inside the updateDisplayList of the
    LiteButton class
    > extending
    > UIComponent but again I would like to provide different
    theme sets for my
    > components so it makes sense using programmatic skins.
    You might want to consider also adding an instance of
    HaloBorder to your
    component. That brings a lot of functionality with it.
    HTH;
    Amy

  • Nesting JSF components in a  custom component

    I'm creating a new JSF custom component. my component needs to include an input text and a list box. my question is : how do I add these components to my JSF component ? I want to use to JSF component to render them rather then encoding the HTML myself. how can I do it ?
    I was told I need to use encodeChildren method somehow but I don't know how ?

    I finally found how to set a default skin to a custom component so that users of my component will not have to set again the skinClass value of my component.
    You have to create a defaults.css file at the root of your library and tell the compiler to take it into account.
    The remaining problem is about the compiler. There are some steps before success and they are a bit mysterious/unclear....
    I found 2 or 3 blog articles explaining those steps but the compiler arguments to use are all differents in each article...
    Here are the links I found:
    http://www.unitedmindset.com/jonbcampos/2010/05/12/creating-custom-spark-components/
    http://www.betadesigns.co.uk/Blog/2010/05/14/default-skin-for-custom-flashbuilder-componen ts/
    http://flexdevtips.blogspot.com/2009/06/default-stylesheet-in-swc-flex-library.html
    Following the first article guidelines has been successful for me but I'm not marking this topic as Resolved because I'd like some answers about this whole thing...

  • Can I write Design-time for JSP custom tag(not JSF components)

    I have some old JSP custom tags(not JSF components), and I want to use them in the IDE through the toolbox.
    Now I have already written the BeanInfos for these tags, and they can be drag from the toolbox; but it will throw a Exception when render the tags, and the properties in the Property Editor are not which I describe in the BeanInfos.
    How can I write Design-time for these tags? or whether it is possible to write the Design-time for these tags?
    the Exception is shown as follow:
    java.lang.ClassCastException
         at com.sun.rave.insync.faces.FacesPageUnit.renderNode(FacesPageUnit.java:1347)
    [catch] at com.sun.rave.insync.faces.FacesPageUnit.renderBean(FacesPageUnit.java:1086)
         at com.sun.rave.insync.faces.FacesPageUnit.getFacesRenderTree(FacesPageUnit.java:993)
         at com.sun.rave.css2.FacesSupport.getFacesHtml(FacesSupport.java:152)
         at com.sun.rave.css2.CssContainerBox.addNode(CssContainerBox.java:373)
         at com.sun.rave.css2.CssContainerBox.createChildren(CssContainerBox.java:354)
         at com.sun.rave.css2.DocumentBox.createChildren(DocumentBox.java:90)
         at com.sun.rave.css2.DocumentBox.relayout(DocumentBox.java:160)
         at com.sun.rave.css2.PageBox.layout(PageBox.java:392)
         at com.sun.rave.css2.PageBox.relayout(PageBox.java:454)
         at com.sun.rave.css2.DocumentBox.redoLayout(DocumentBox.java:313)
         at com.sun.rave.css2.PageBox.redoLayout(PageBox.java:460)
         at com.sun.rave.css2.DocumentBox.changed(DocumentBox.java:634)
         at com.sun.rave.designer.DesignerPaneUI$UpdateHandler.changedUpdate(DesignerPaneUI.java:1012)
         at com.sun.rave.text.Document.fireChangedUpdate(Document.java:851)
         at com.sun.rave.text.Document$5.run(Document.java:631)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

    I have some old JSP custom tags(not JSF components), and I want to use them in the IDE through the toolbox.
    Now I have already written the BeanInfos for these tags, and they can be drag from the toolbox; but it will throw a Exception when render the tags, and the properties in the Property Editor are not which I describe in the BeanInfos.
    How can I write Design-time for these tags? or whether it is possible to write the Design-time for these tags?
    the Exception is shown as follow:
    java.lang.ClassCastException
         at com.sun.rave.insync.faces.FacesPageUnit.renderNode(FacesPageUnit.java:1347)
    [catch] at com.sun.rave.insync.faces.FacesPageUnit.renderBean(FacesPageUnit.java:1086)
         at com.sun.rave.insync.faces.FacesPageUnit.getFacesRenderTree(FacesPageUnit.java:993)
         at com.sun.rave.css2.FacesSupport.getFacesHtml(FacesSupport.java:152)
         at com.sun.rave.css2.CssContainerBox.addNode(CssContainerBox.java:373)
         at com.sun.rave.css2.CssContainerBox.createChildren(CssContainerBox.java:354)
         at com.sun.rave.css2.DocumentBox.createChildren(DocumentBox.java:90)
         at com.sun.rave.css2.DocumentBox.relayout(DocumentBox.java:160)
         at com.sun.rave.css2.PageBox.layout(PageBox.java:392)
         at com.sun.rave.css2.PageBox.relayout(PageBox.java:454)
         at com.sun.rave.css2.DocumentBox.redoLayout(DocumentBox.java:313)
         at com.sun.rave.css2.PageBox.redoLayout(PageBox.java:460)
         at com.sun.rave.css2.DocumentBox.changed(DocumentBox.java:634)
         at com.sun.rave.designer.DesignerPaneUI$UpdateHandler.changedUpdate(DesignerPaneUI.java:1012)
         at com.sun.rave.text.Document.fireChangedUpdate(Document.java:851)
         at com.sun.rave.text.Document$5.run(Document.java:631)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

Maybe you are looking for

  • Apple ID for Enterprise

    Hello, I work at a large organization and we are interested in using iPads for certain business functions. Currently we have a few in the environment. The Apple IDs for these devices are personal ones that belong to the user who it is assigned to. We

  • What does it take to go from an Intune Trial version to an actual Licensed Version

    Hello All, I have intune trail account and now i want to go buy subscription. so can i merge my trial version account details in to new subscription? or will there be any difference in this like azure? Thanks

  • Screen Saver Won't Display

    The screen on my iBook is going black after 5 minutes instead of running the screen saver. I've checked Energy Saver and that doesn't seem to be the issue.

  • I bought a pre-payment cards and we could not filling

    Dear Sir / Madam Good Day I bought a pre-payment cards and we could not filling. Best regards Hussain Aviation

  • State tax declaration for Mexico

    Hello all We are trying to obtain the report for the State tax declaration on Mexico, but we have some troubles with one state (Veracruz), if I run the report for some months of 2010 it shows me the text "There are no data for the selection condition