FAQ
Hi to all,

it's possible to import myfaces in java studio creator?
In jsc exists "Added Components" feauture but when I try to import
myfaces.jar

i get this output:
debug:
rave-install=../..
component-jar=/home/lorenzo/.Creator/1_0/components/jars/myfaces.jar
component-jar-url=/home/lorenzo/.Creator/1_0/components/jars/myfaces.jar
dt-jar=/home/lorenzo/.Creator/1_0/components/jars/myfaces-dt.jar
dest=/home/lorenzo/.Creator/1_0/components/jars/
beaninfo-src=/home/lorenzo/.Creator/1_0/components/jars//beaninfo-src
beaninfo-classes=/home/lorenzo/.Creator/1_0/components/jars//beaninfo-classes
generate-beaninfo:
Created dir: /home/lorenzo/.Creator/1_0/components/jars/beaninfo-src
WARNING: Missing resource
jar:file:/home/lorenzo/.Creator/1_0/components/jars/myfaces.jar!/META-INF/sun-faces-config.xml
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/aliasbean/AliasBeanBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/buffer/BufferBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/UIColumnsBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/div/DivBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/checkbox/HtmlCheckboxBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/collapsiblepanel/HtmlCollapsiblePanelBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlCommandButtonBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlCommandLinkBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navigation/HtmlCommandNavigationBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/sortheader/HtmlCommandSortHeaderBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/datalist/HtmlDataListBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/datascroller/HtmlDataScrollerBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlDataTableBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/calendar/HtmlInputCalendarBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/date/HtmlInputDateBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/fileupload/HtmlInputFileUploadBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlInputHiddenBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlInputTextBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlInputTextareaBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/jsvalueset/HtmlJsValueSetBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlMessageBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlMessagesBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/newspaper/HtmlNewspaperTableBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlOutputLabelBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlOutputTextBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlPanelGroupBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/layout/HtmlPanelLayoutBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navigation/HtmlPanelNavigationBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/panelstack/HtmlPanelStackBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/popup/HtmlPopupBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/radio/HtmlRadioBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckboxBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlSelectOneMenuBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/HtmlSelectOneRadioBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/swapimage/HtmlSwapImageBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/HtmlTreeBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree2/HtmlTreeBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/HtmlTreeCheckboxBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/HtmlTreeColumnBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/HtmlTreeImageCommandLinkBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/HtmlTreeNodeBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/inputHtml/InputHtmlBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navmenu/jscookmenu/HtmlCommandJSCookMenuBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/jslistener/JsValueChangeListenerBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navmenu/UINavigationMenuItemBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/rssticker/HtmlRssTickerBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/savestate/UISaveStateBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/selectOneCountry/SelectOneCountryBeanInfo.java
Generate
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/stylesheet/StylesheetBeanInfo.java
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/stylesheet/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/aliasbean/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/datascroller/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/selectOneCountry/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/newspaper/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/calendar/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/radio/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/inputHtml/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/swapimage/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/datalist/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navigation/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/buffer/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/jslistener/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/layout/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/sortheader/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree2/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/rssticker/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/popup/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tree/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/fileupload/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navmenu/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/div/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/date/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/checkbox/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/collapsiblepanel/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/html/ext/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/jsvalueset/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/panelstack/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/navmenu/jscookmenu/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/savestate/Bundle-JSF.properties
Generate BUNDLE:
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/custom/tabbedpane/Bundle-JSF.properties


compile-beaninfo:
Created dir: /home/lorenzo/.Creator/1_0/components/jars/beaninfo-classes
Compiling 51 source files to
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-classes
/home/lorenzo/.Creator/1_0/components/jars/beaninfo-src/org/apache/myfaces/component/UIColumnsBeanInfo.java:100:
exception java.beans.IntrospectionException is never thrown in body of
corresponding try statement
} catch (IntrospectionException e) {
^
1 error
startup/bin/create-dt-jar.xml [71] Compile failed; see the compiler
error output for details.
BUILD FAILED (total time: 1 minute 30 seconds)


any idea?

Many thanks in advance Lorenzo

Search Discussions

  • Craig McClanahan at May 27, 2005 at 3:48 pm

    On 5/27/05, Lorenzo Sicilia wrote:
    Hi to all,

    it's possible to import myfaces in java studio creator?
    In jsc exists "Added Components" feauture but when I try to import
    myfaces.jar
    One of my developers on the Sun Java Studio Creator team, Edwin Goei,
    has collected a set of information needed by third party component
    libraries for successful import into Creator. There are issues to pay
    attention to with both the components themselves and with how they are
    packaged. Edwin's wiki page has the pointers you will need:

    http://wiki.java.net/bin/view/People/EdwinGoei

    Craig
  • Lorenzo Sicilia at May 27, 2005 at 4:59 pm

    Craig McClanahan wrote:
    One of my developers on the Sun Java Studio Creator team, Edwin Goei,
    has collected a set of information needed by third party component
    libraries for successful import into Creator. There are issues to pay
    attention to with both the components themselves and with how they are
    packaged. Edwin's wiki page has the pointers you will need:

    http://wiki.java.net/bin/view/People/EdwinGoei

    I read all and I understand the concept of custom components.
    Than If I want use myfaces into jsc I need rebuild each component? O_O

    http://wiki.java.net/bin/view/People/WritingCustomComponents

    Anyway, many thanks Craig.

    regards Lorenzo
  • Werner Punz at May 28, 2005 at 10:15 am

    Lorenzo Sicilia wrote:
    Craig McClanahan wrote:
    One of my developers on the Sun Java Studio Creator team, Edwin Goei,
    has collected a set of information needed by third party component
    libraries for successful import into Creator. There are issues to pay
    attention to with both the components themselves and with how they are
    packaged. Edwin's wiki page has the pointers you will need:

    http://wiki.java.net/bin/view/People/EdwinGoei


    I read all and I understand the concept of custom components.
    Than If I want use myfaces into jsc I need rebuild each component? O_O

    http://wiki.java.net/bin/view/People/WritingCustomComponents
    Blame it to the missing standadization on how the components deliver
    the information which is needed to render them in RAD tools.
    Swing had the same problem BTW, Sun always seems to shy away to
    standardize on the rendering aspect of components.
    (There is a standardization underway however)
  • Lorenzo Sicilia at May 30, 2005 at 9:40 am

    Werner Punz wrote:
    Blame it to the missing standadization on how the components deliver
    the information which is needed to render them in RAD tools.
    It's a true problem.
    (There is a standardization underway however)
    in jsf 1.2?

    regards Lorenzo
  • Lorenzo Sicilia at May 30, 2005 at 10:51 am

    Lorenzo Sicilia wrote:
    Werner Punz wrote:
    Blame it to the missing standadization on how the components deliver
    the information which is needed to render them in RAD tools.
    It's a true problem.
    (There is a standardization underway however)
    in jsf 1.2?
    I found the answer here;
    http://java.sun.com/developer/community/chat/JavaLive/2004/jl1207.html

    regards Lorenzo
  • Jonas Jacobi at May 31, 2005 at 11:45 pm
    Hi Lorenzo,

    There have been discussion on standardizing some of the design time
    support for components. Last year at JavaOne there were one presentation
    <http://javaoneonline.mentorware.net/servlet/mware.servlets.StudentServlet?mt=1117582862772&mwaction=showDescr&class_id=28015&fromtopic=By%20Topic&subsysid=2000&topic=technical&avail_frames=true>
    (TS-1103) raising this issue followed by a proposal posted on JSFCentral
    <http://www.jsfcentral.com/articles/oracle_metadata_proposal.html>.
    These discussion did not, at that point, take in account that some tools
    vendor would go off on their own creating proprietary extensions that
    component providers have to comply with in order to get some level of
    support in the IDE.

    I wrote an article on the same topic for FTPOnline (JavaPro)
    <http://www.ftponline.com/channels/java/2005_05/jjacobi_05_25_05/> that
    talks about the issues and what is going on to address this.

    Thanks,
    Jonas

    Lorenzo Sicilia wrote:
    Lorenzo Sicilia wrote:
    Werner Punz wrote:
    Blame it to the missing standadization on how the components deliver
    the information which is needed to render them in RAD tools.

    It's a true problem.
    (There is a standardization underway however)

    in jsf 1.2?

    I found the answer here;
    http://java.sun.com/developer/community/chat/JavaLive/2004/jl1207.html

    regards Lorenzo

    --
    -------------------------------------------------------
    *Jonas Jacobi
    *Principal Product Manager - JSF & ADF Faces
    Oracle JDeveloper
    Oracle, Redwood Shores, CA
    *Blog*: http://www.orablogs.com/jjacobi
    *Site*: http://www.oracle.com/technology/tech/java/jsf.html
  • Lorenzo Sicilia at Jun 14, 2005 at 5:03 pm

    Jonas Jacobi wrote:
    I wrote an article on the same topic for FTPOnline (JavaPro)
    <http://www.ftponline.com/channels/java/2005_05/jjacobi_05_25_05/> that
    talks about the issues and what is going on to address this.
    I read now your answer. Many thank, good article ;)

    regards lorenzo
  • Jonas Jacobi at Jun 14, 2005 at 6:42 pm
    Hi Lorenzo,

    I'm glad that you like the article. To follow up on this thread I would
    like to announce that the fruit of a 8 months of lobbying has paid off.

    There is now a new JSR - JSR 276: Design-Time Metadata for JavaServer^TM
    Faces Components that I think is going to be crucial for the success of
    JSF. Here is the URL: http://jcp.org/en/jsr/detail?id=276

    I think it would be great if someone from the MyFaces team joined this
    effort.

    Thanks,
    Jonas

    Lorenzo Sicilia wrote:
    Jonas Jacobi wrote:
    I wrote an article on the same topic for FTPOnline (JavaPro)
    <http://www.ftponline.com/channels/java/2005_05/jjacobi_05_25_05/>
    that talks about the issues and what is going on to address this.

    I read now your answer. Many thank, good article ;)

    regards lorenzo
    --
    -------------------------------------------------------
    *Jonas Jacobi
    *Principal Product Manager - JSF & ADF Faces
    Oracle JDeveloper
    Oracle, Redwood Shores, CA
    *Blog*: http://www.orablogs.com/jjacobi
    *Site*: http://www.oracle.com/technology/tech/java/jsf.html
  • Jonas Jacobi at Jun 14, 2005 at 10:16 pm
    Hi All,

    Over the past year there has been several posts about JSF where comments
    from the community has raised a concern - there is no standard way of
    packaging, or defining additional design time metadata for custom JSF
    components. This has been acknowledged by the JSF EG, and over the past
    8 months there has been ongoing work to submit a proposal for a new JSR
    addressing these needs based on the initial proposal posted on JSF
    Central <http://www.jsfcentral.com/articles/oracle_metadata_proposal.html>

    Awhile back I wrote an article - Build Custom JSF Components
    <http://www.ftponline.com/channels/java/2005_05/jjacobi_05_25_05/default.aspx>
    - addressing the concern about the lack of a defined way of providing.
    The hope is that through this JSR, the Java community can work together
    to define a standard solution to this problem. The Expert Group will
    consist of a representative set of tool vendors and component authors,
    and the feedback of the community will be actively solicited.

    I recommend that if you have an interest in creating your own custom UI
    components this is a great opportunity to get involved in improving the
    overall design-time experience for JSF UI components.

    Here is the URL for more information about this JSR:

    JSR 276: Design-Time Metadata for JavaServerTM Faces Components
    <http://jcp.org/en/jsr/detail?id=276>

    Jonas
  • Darren Hartford at Jun 10, 2005 at 8:52 pm
    After reading through the thread on this mailing list, on the JSC
    forums, and googling, it seems that it could theoritcally be possible to
    simply update the existing myfaces-extensions.jar file with a modified
    MANIFEST.MF and sun-faces-config.xml file.

    Jar -uf myfaces-extensions.jar META-INF/sun-faces-config.xml

    With the 'correct' sun-faces-config.xml, this should alleviate the
    IntrospectionError that normally happens. Has anyone created a
    sun-faces-config.xml file for use with myfaces-extensions?

    -D
  • Craig McClanahan at Jun 10, 2005 at 9:14 pm

    On 6/10/05, Darren Hartford wrote:


    After reading through the thread on this mailing list, on the JSC forums,
    and googling, it seems that it could theoritcally be possible to simply
    update the existing myfaces-extensions.jar file with a modified MANIFEST.MF
    and sun-faces-config.xml file.

    Jar -uf myfaces-extensions.jar META-INF/sun-faces-config.xml
    If the components themselves obey the other rules listed on Edwin's
    wiki (such as all the component properties having getters and setters
    instead of using the generic attributes capability), that is indeed
    all it should take.
    With the 'correct' sun-faces-config.xml, this should alleviate the
    IntrospectionError that normally happens. Has anyone created a
    sun-faces-config.xml file for use with myfaces-extensions?
    I'd be happy to assist, but won't have time to do the whole thing.
    Maybe I can do a starter for one or two components as an example, and
    let you guys hammer out the rest of them.

    Craig
    -D
  • Werner Punz at Jun 10, 2005 at 9:27 pm

    Craig McClanahan wrote:


    I'd be happy to assist, but won't have time to do the whole thing.
    Maybe I can do a starter for one or two components as an example, and
    let you guys hammer out the rest of them.
    Craig since you are here reading this, I have a question you might be
    able to answer me best.
    I have written a Hibernate Datamodel in the past, I am not totally happy
    with it.
    The problem is following:
    The Datamodel follows the approach you guys layed out in the JSF specs
    of first giving back the total number of datasets and then sending row
    by row.

    The main problem I have with this approach is, that I cannot see a
    clear demarkation line between start of request and end of request,
    which would be needed in many cases to get a decent session and
    transaction and and paging in place.

    The only way I could see a way out would be over phase listeners which
    sort of could trigger the datamodels at the beginning and and of the
    phases, so that at the beginning the transaction or whatever you have
    could be opened, or even the full page could be read, then the usual
    mechanisms could trigger for and at the end of the request cycle the
    whatever cleanup which is needed could be done.
    Which means some kind of inter application event system (doable, but messy)

    Just my question to Craig, or whoever might be able to answer me this,
    is there a better way to do this, without having to delegate such a task
    to a phase listener (I am not totally happy about this approach)
    I must have missed some clear demarkation point the last time I checked
    out the code (I must admit also I was learning JSF back then)
  • Craig McClanahan at Jun 10, 2005 at 9:54 pm

    On 6/10/05, Werner Punz wrote:
    Craig McClanahan wrote:
    I'd be happy to assist, but won't have time to do the whole thing.
    Maybe I can do a starter for one or two components as an example, and
    let you guys hammer out the rest of them.
    Craig since you are here reading this, I have a question you might be
    able to answer me best.
    I have written a Hibernate Datamodel in the past, I am not totally happy
    with it.
    The problem is following:
    The Datamodel follows the approach you guys layed out in the JSF specs
    of first giving back the total number of datasets and then sending row
    by row.

    The main problem I have with this approach is, that I cannot see a
    clear demarkation line between start of request and end of request,
    which would be needed in many cases to get a decent session and
    transaction and and paging in place.

    The only way I could see a way out would be over phase listeners which
    sort of could trigger the datamodels at the beginning and and of the
    phases, so that at the beginning the transaction or whatever you have
    could be opened, or even the full page could be read, then the usual
    mechanisms could trigger for and at the end of the request cycle the
    whatever cleanup which is needed could be done.
    Which means some kind of inter application event system (doable, but messy)

    Just my question to Craig, or whoever might be able to answer me this,
    is there a better way to do this, without having to delegate such a task
    to a phase listener (I am not totally happy about this approach)
    I must have missed some clear demarkation point the last time I checked
    out the code (I must admit also I was learning JSF back then)
    Solving these sorts of problems is exactly what the Shale framework
    (part of the Struts project) is designed to address. Current starting
    point for info is on the wiki (i'm working up the docs for the
    website).

    http://wiki.apache.org/struts/StrutsShale

    You'll be interested particularly in the ViewController interface, and
    the fact that it gives you event callbacks at the beginning and end of
    a view (init and destroy) and well as other events dependent upon
    whether you are processing a form submit or not (preprocess and
    prerender). Shale presumes that JSF exists, and leverages its front
    controller framework rather than treating JSF just as a mechanism for
    constructing the view.

    Craig
  • Werner Punz at Jun 10, 2005 at 10:02 pm

    Craig McClanahan wrote:



    Solving these sorts of problems is exactly what the Shale framework
    (part of the Struts project) is designed to address. Current starting
    point for info is on the wiki (i'm working up the docs for the
    website).

    http://wiki.apache.org/struts/StrutsShale

    You'll be interested particularly in the ViewController interface, and
    the fact that it gives you event callbacks at the beginning and end of
    a view (init and destroy) and well as other events dependent upon
    whether you are processing a form submit or not (preprocess and
    prerender). Shale presumes that JSF exists, and leverages its front
    controller framework rather than treating JSF just as a mechanism for
    constructing the view.

    Craig
    Thanks for the fast answer, you basically already implemented the
    approach I was thinking of, great... you saved me lots of work.
    A question however, could this stuff be moved into some kind of
    extended datamodel, so that the datamodel implementors do not have
    to deal with event callbacks into the view controller?

    Shale might be a good place to resolve this issue there.
    Since you already have the base mechanisms in place.

    Thanks for your fast answer

    Werner
  • Craig McClanahan at Jun 10, 2005 at 10:18 pm

    On 6/10/05, Werner Punz wrote:
    Craig McClanahan wrote:

    Solving these sorts of problems is exactly what the Shale framework
    (part of the Struts project) is designed to address. Current starting
    point for info is on the wiki (i'm working up the docs for the
    website).

    http://wiki.apache.org/struts/StrutsShale

    You'll be interested particularly in the ViewController interface, and
    the fact that it gives you event callbacks at the beginning and end of
    a view (init and destroy) and well as other events dependent upon
    whether you are processing a form submit or not (preprocess and
    prerender). Shale presumes that JSF exists, and leverages its front
    controller framework rather than treating JSF just as a mechanism for
    constructing the view.

    Craig
    Thanks for the fast answer, you basically already implemented the
    approach I was thinking of, great... you saved me lots of work.
    A question however, could this stuff be moved into some kind of
    extended datamodel, so that the datamodel implementors do not have
    to deal with event callbacks into the view controller?
    I was actually thinking that things would work the other way around
    ... the event callbacks are view lifecycle things that would trigger
    calls in to the datamodel to acquire and release resources. For
    example, if you needed a Hibernate session to grab some data needed to
    render the current page, you might put the acquisition code in
    prerender() and release it in destroy() ... without the session
    needing to be explicitly aware that it is being used this way. A
    datamodel implementation around a Hibernate session ought to be able
    to work the same way -- part of the contract of using it would be to
    call lifecycle methods on the datamodel itself at appropriate times.
    Shale might be a good place to resolve this issue there.
    Since you already have the base mechanisms in place.

    Thanks for your fast answer
    Gotta do something while my application builds ... even on a fast
    machine it's many minutes :-).
    Werner
  • Werner Punz at Jun 10, 2005 at 10:31 pm

    Craig McClanahan wrote:
    On 6/10/05, Werner Punz wrote:

    Craig McClanahan wrote:

    Solving these sorts of problems is exactly what the Shale framework
    (part of the Struts project) is designed to address. Current starting
    point for info is on the wiki (i'm working up the docs for the
    website).

    http://wiki.apache.org/struts/StrutsShale

    You'll be interested particularly in the ViewController interface, and
    the fact that it gives you event callbacks at the beginning and end of
    a view (init and destroy) and well as other events dependent upon
    whether you are processing a form submit or not (preprocess and
    prerender). Shale presumes that JSF exists, and leverages its front
    controller framework rather than treating JSF just as a mechanism for
    constructing the view.

    Craig
    Thanks for the fast answer, you basically already implemented the
    approach I was thinking of, great... you saved me lots of work.
    A question however, could this stuff be moved into some kind of
    extended datamodel, so that the datamodel implementors do not have
    to deal with event callbacks into the view controller?

    I was actually thinking that things would work the other way around
    ... the event callbacks are view lifecycle things that would trigger
    calls in to the datamodel to acquire and release resources. For
    example, if you needed a Hibernate session to grab some data needed to
    render the current page, you might put the acquisition code in
    prerender() and release it in destroy() ... without the session
    needing to be explicitly aware that it is being used this way. A
    datamodel implementation around a Hibernate session ought to be able
    to work the same way -- part of the contract of using it would be to
    call lifecycle methods on the datamodel itself at appropriate times.
    Well, I think, I was to unprecise, that exactly was my point of
    being probably the best way...

    :-)
    Thanks again for clarification.
  • Bruno Aranda at Jun 11, 2005 at 10:00 am
    Yes, you just plant a seed and the tree will grow if developers water it... ;-)

    Bruno

    2005/6/10, Craig McClanahan <craigmcc@gmail.com>:
    On 6/10/05, Darren Hartford wrote:


    After reading through the thread on this mailing list, on the JSC forums,
    and googling, it seems that it could theoritcally be possible to simply
    update the existing myfaces-extensions.jar file with a modified MANIFEST.MF
    and sun-faces-config.xml file.

    Jar -uf myfaces-extensions.jar META-INF/sun-faces-config.xml
    If the components themselves obey the other rules listed on Edwin's
    wiki (such as all the component properties having getters and setters
    instead of using the generic attributes capability), that is indeed
    all it should take.
    With the 'correct' sun-faces-config.xml, this should alleviate the
    IntrospectionError that normally happens. Has anyone created a
    sun-faces-config.xml file for use with myfaces-extensions?
    I'd be happy to assist, but won't have time to do the whole thing.
    Maybe I can do a starter for one or two components as an example, and
    let you guys hammer out the rest of them.

    Craig
    -D
  • Darren Hartford at Jun 13, 2005 at 2:34 pm
    So far, this is what I have that is partially working:

    *copy faces-config.xml to sun-faces-config.xml
    *change the following for 'htmlDate' as an example in
    sun-faces-config.xml:

    =============================================
    ....
    <component>
    <component-type>org.apache.myfaces.HtmlInputDate</component-type>

    <component-class>org.apache.myfaces.custom.date.HtmlInputDate</component
    -class>
    <!-- Hide the non-typesafe Value property -->
    <property>
    <property-name>value</property-name>
    <property-extension>
    <category>DATA</category>
    <is-hidden>false</is-hidden>
    <is-bindable>true</is-bindable>
    </property-extension>
    </property>

    <component-extension>
    <component-family>javax.faces.Input</component-family>
    <renderer-type>org.apache.myfaces.Date</renderer-type>
    </component-extension>
    </component>

    .....
    <renderer>
    <component-family>javax.faces.Input</component-family>
    <renderer-type>org.apache.myfaces.Date</renderer-type>

    <renderer-class>org.apache.myfaces.custom.date.HtmlDateRenderer</rendere
    r-class>
    <renderer-extension>
    <instance-name>htmlDate</instance-name>
    <tag-name>htmlDate</tag-name>
    <taglib-prefix>x</taglib-prefix>

    <taglib-uri>http://myfaces.apache.org/extensions</taglib-uri>
    </renderer-extension>
    </renderer>
    =============
    Add the following to the MANIFEST.MF used to create the
    myfaces-extensions.complib:

    ================
    X-Rave-API-Compatibility-Version: 1.0
    X-Rave-Library-URI: http://myfaces.apache.org/extensions
    X-Rave-Library-Version: 1.0.9
    X-Rave-Library-Title: MyFacesExtensions
    X-Rave-Runtime-Path: myfaces-extensions.jar
    X-Rave-Design-Time-Path: myfaces-extensions-dt.jar
    ====================

    And lastly, the RAVE tool in JSC does autogenerate the BeanInfoBase
    classes (and there are also some ANT examples that you can use from the
    JSC examples I think). However, you still need to manually create the
    BeanInfo that extends the base:

    ===================
    -----Original Message-----
    From: Bruno Aranda
    Sent: Saturday, June 11, 2005 6:00 AM
    To: MyFaces Discussion; craigmcc@apache.org
    Subject: Re: Java Studio Creator and MyFaces

    Yes, you just plant a seed and the tree will grow if
    developers water it... ;-)

    Bruno

    2005/6/10, Craig McClanahan <craigmcc@gmail.com>:
    On 6/10/05, Darren Hartford wrote:


    After reading through the thread on this mailing list, on the JSC
    forums, and googling, it seems that it could theoritcally be
    possible to simply update the existing
    myfaces-extensions.jar file
    with a modified MANIFEST.MF and sun-faces-config.xml file.

    Jar -uf myfaces-extensions.jar META-INF/sun-faces-config.xml
    If the components themselves obey the other rules listed on Edwin's
    wiki (such as all the component properties having getters
    and setters
    instead of using the generic attributes capability), that is indeed
    all it should take.
    With the 'correct' sun-faces-config.xml, this should
    alleviate the
    IntrospectionError that normally happens. Has anyone created a
    sun-faces-config.xml file for use with myfaces-extensions?
    I'd be happy to assist, but won't have time to do the whole thing.
    Maybe I can do a starter for one or two components as an
    example, and
    let you guys hammer out the rest of them.

    Craig
    -D
  • Darren Hartford at Jun 14, 2005 at 12:20 pm
    Correction to my previous post - the renderer-extension should have
    <tag-name> the same as it is shown in the TLD:

    <renderer>
    <component-family>javax.faces.Input</component-family>
    <renderer-type>org.apache.myfaces.Date</renderer-type>

    <renderer-class>org.apache.myfaces.custom.date.HtmlDateRenderer</rendere
    r-class>
    <renderer-extension>
    <instance-name>inputDate</instance-name>
    <tag-name>inputDate</tag-name>
    <taglib-prefix>x</taglib-prefix>

    <taglib-uri>http://myfaces.apache.org/extensions</taglib-uri>
    </renderer-extension>
    </renderer>

    -D

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupusers @
categoriesmyfaces
postedMay 27, '05 at 10:42a
activeJun 14, '05 at 10:16p
posts20
users6
websitemyfaces.apache.org

People

Translate

site design / logo © 2019 Grokbase