java.net: Wiki

The Source for Java Technology Collaboration


 <<O>>  Difference Topic Jsf2RequirementsScratchpad (26 - 04 Dec 2007 - Main.edburns)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"

The following technologies will most likely need revision to coordinate with this specification:

Line: 590 to 590
 Allow for better insight into why a value binding failed to propagate.

Specify how iterating components assign HTML ids to their constituents. This will enable JavaScript addresability

Added:
>
>
Support for Offline operation
 \ No newline at end of file

 <<O>>  Difference Topic Jsf2RequirementsScratchpad (25 - 27 Nov 2007 - Main.edburns)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"

The following technologies will most likely need revision to coordinate with this specification:

Line: 586 to 586
 concept.

\ No newline at end of file

Added:
>
>
Allow for better insight into why a value binding failed to propagate.

Specify how iterating components assign HTML ids to their constituents. This will enable JavaScript addresability


 <<O>>  Difference Topic Jsf2RequirementsScratchpad (24 - 16 Nov 2007 - Main.kurzweil4)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"

The following technologies will most likely need revision to coordinate with this specification:

Line: 302 to 303
  Ajax request, but there no place in the DOM to put it after Ajax response.
Added:
>
>
- Ability to call managed bean methods with a URL path for use with Ajax as Shale-Remoting does: http://shale.apache.org/shale-remoting/index.html This may eliminate the need to create custom phase listeners to respond to Ajax requests.
 KP> * Ability to define Lifecycle ID outside the web.xml file (looks like KP> this is already in your document under "no configuration required?)

 <<O>>  Difference Topic Jsf2RequirementsScratchpad (23 - 25 Jul 2007 - Main.edburns)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"

The following technologies will most likely need revision to coordinate with this specification:

Line: 43 to 43
  Specify how ordering of ServletContext? listeners works in web.xml and in TLD files in jars in WEB-INF/lib
Changed:
<
<
Servlet support for File Upload.
>
>
Servlet support for File Upload. (enctype="multipart/form-data" )
  Programmatic Access to web.xml (like what Jetty does). Obviate the need for writing a web.xml parser.

 <<O>>  Difference Topic Jsf2RequirementsScratchpad (22 - 17 Jul 2007 - Main.rogerk)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"

The following technologies will most likely need revision to coordinate with this specification:


 <<O>>  Difference Topic Jsf2RequirementsScratchpad (21 - 14 May 2007 - Main.agoria)
Line: 1 to 1
 
META TOPICPARENT name="JSF2Home"
Deleted:
<
<
 

The following technologies will most likely need revision to coordinate with this specification:

    Line: 320 to 319
      application events. Maybe, "call this each time something validates," or "call this after everything successfully validates.
    Added:
    >
    >
    Make the current evaluated component available. This feature enable things like this: <h:inputText ... style="#{myfun:isValid() ? 'ok' : 'error'}"> insted of the current syntax: <h:inputText id="text" ... style="#{myfun:isValid("form:text")? 'ok' : 'error'}" >
      Handle Duplicate Button Presses gracefully. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=31

     <<O>>  Difference Topic Jsf2RequirementsScratchpad (20 - 26 Apr 2007 - Main.edburns)
    Line: 1 to 1
     
    META TOPICPARENT name="JSF2Home"
    Added:
    >
    >
     

    The following technologies will most likely need revision to coordinate with this specification:

      Line: 5 to 6
       
      • Portlets

      Added:
      >
      >
      leewas> 1. Allow specify scope of managed-bean to portlet-scope
      leewas> session or application-scope session in portlet environment.
      
      leewas> 2. Support portlet IPC.
      
       
    • WebBeans (JSR-299)

    • Line: 257 to 266
        Fix dataTable!
      Added:
      >
      >
      DonBrown?> The dataGrid tag can't take a Collection as its DonBrown?> model, but instead requires a List. This I don't DonBrown?> understand because a Collection can just as easily be DonBrown?> iterated over. Many times, your DAO's return a DonBrown?> Collection, which may just be the result of DonBrown?> Map.values(), a Set.

      Consider standardizing Creator's DataProvider?.

        Another important thing I'd like to see is improving the IOC container, I think adding construction injection() and adding some AOP features will make JSF IOC what people expect from an IOC
      Line: 285 to 303
        Ajax request, but there no place in the DOM to put it after Ajax response.
      Added:
      >
      >
      KP> * Ability to define Lifecycle ID outside the web.xml file (looks like KP> this is already in your document under "no configuration required?)
        JSF internals must become less visible to developers. For example Restore View phase shouldn't be visible in a form of getters called to ?restore? model state.
      Line: 374 to 397
        Scaffolding UIComponents/Models for Rapid Development with EJB3 (BeanEditor?/Seam UI/Rails)
      Added:
      >
      >
      arobinson74> I'd like to see improvements to arobinson74> UIComponent.findComponent. I had made a request that arobinson74> involves this with A4J?: arobinson74> http://jira.jboss.com/jira/browse/AJSF-46 The gist of it arobinson74> being that a developer has no way to find a component, arobinson74> using "UIComponent.findComponent", above its current arobinson74> naming container with a relative component ID/path. It arobinson74> would be great to have a parent syntax. For example:

      arobinson74> ..:componentId

      arobinson74> The ".." would tell findComponent that it should find arobinson74> the naming container of the current component and go up arobinson74> one naming container above that. So a client ID of arobinson74> "A:B:C:D" the component could find "B" by using "..:.." arobinson74> instead of having to give a full path of ":A:B".

        Subcategory: Navigation

      Allow EL evaluation within navigation cases to enable bookmarkable

      Line: 423 to 464
        Retain ability to use alternate ViewHandlers?

      Added:
      >
      >
      KP> * ViewHandler? (and other parts of JSF) ordering when there are multiple KP> implementations -- also perhaps restrict to certain URLs

        Separate View mapping-related methods from ViewHandler? (ActionMapper? or ViewMapper? based on FacesContext?)
      Line: 456 to 501
        Integrate with servlet login/logout.
      Added:
      >
      >
      suckerd> The one thing I'm missing is suckerd> security in JSF. Myfaces addressed this in their suckerd> components. I find the jsf-security way suckerd> (http://jsf-security.sourceforge.net/) a good start, suckerd> providing a securityScope an EL expressions like userInRole suckerd> ...etc. And of course facelets rule for bringing the DRY suckerd> principle to JSF-pages. Thx, Mike
        Subcategory: Misc features:
      Added:
      >
      >
      DanLabrecque?> In the new features section, I would like to see support DanLabrecque?> to skip phases of the life cycle. For example, when DanLabrecque?> creating an Ajax based auto-validate text field, it would DanLabrecque?> be very helpful to set a flag indicating that the update DanLabrecque?> phase should be skipped. I still want the partial tree DanLabrecque?> traversal feature to decode and validate the user's input, DanLabrecque?> but I do not want the text field value to be updated in DanLabrecque?> the backing bean. That is, not until the user clicks an DanLabrecque?> submit button on the page, for example. I envision that DanLabrecque?> this would be similar to setting an immediate flag.
        * Ability to specify <h:form> method attribute (GET or POST) * Configurable default timezone for <f:convertDateTime/> * Configurable default styles for <h:messages/>
      Line: 495 to 561
       quilleashm> walk the entire event stack to look for the real event of quilleashm> interest.
      Changed:
      <
      <
      There is no clear distinction between client side and server side Method and Value bindings. For example, the standard HTML renderkit violates the concept that tags are independent of the rendering kit. However, as a practical matter, actions should be able to be executed either client-side or server-side depending upon implementation. This should be controlled through the managed bean facility that would be used to configure both language and locality. This facility could be used to configure objets to be either client or server side objects, Java, JavaScript or other. Implementations would only need to support Java and server side objects (as JavaServer Faces implies). However, when possible, render-kits could allow client-side componet access using this concept.
      >
      >
      There is no clear distinction between client side and server side Method and Value bindings. For example, the standard HTML renderkit violates the concept that tags are independent of the rendering kit. However, as a practical matter, actions should be able to be executed either client-side or server-side depending upon implementation. This should be controlled through the managed bean facility that would be used to configure both language and locality. This facility could be used to configure objets to be either client or server side objects, Java, JavaScript or other. Implementations would only need to support Java and server side objects (as JavaServer Faces implies). However, when possible, render-kits could allow client-side componet access using this concept.
       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (19 - 25 Apr 2007 - Main.smurray59)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 495 to 495
       quilleashm> walk the entire event stack to look for the real event of quilleashm> interest.
      Changed:
      <
      <
      There is no clear distinction between client side and server side Method and Value bindings. For example, the standard HTML renderkit violates the concept that tags are independent of the rendering kit. However, as a practical matter, actions should be able to be executed either client-side or server-side depending upon implementation. This should be controlled through the managed bean facility that would be used to configure both language and locality. This facility could be used to configure objets to be either client or server side objects, Java, JavaScript or other. Implementations would only need to support Java and server side objects (as JavaServer Faces implies). However, when possible, render-kits could allow client-side componet access using this concept.
      >
      >
      There is no clear distinction between client side and server side Method and Value bindings. For example, the standard HTML renderkit violates the concept that tags are independent of the rendering kit. However, as a practical matter, actions should be able to be executed either client-side or server-side depending upon implementation. This should be controlled through the managed bean facility that would be used to configure both language and locality. This facility could be used to configure objets to be either client or server side objects, Java, JavaScript or other. Implementations would only need to support Java and server side objects (as JavaServer Faces implies). However, when possible, render-kits could allow client-side componet access using this concept.
       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (18 - 25 Apr 2007 - Main.smurray59)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 495 to 495
       quilleashm> walk the entire event stack to look for the real event of quilleashm> interest.
      Changed:
      <
      <
      >
      >
      There is no clear distinction between client side and server side Method and Value bindings. For example, the standard HTML renderkit violates the concept that tags are independent of the rendering kit. However, as a practical matter, actions should be able to be executed either client-side or server-side depending upon implementation. This should be controlled through the managed bean facility that would be used to configure both language and locality. This facility could be used to configure objets to be either client or server side objects, Java, JavaScript or other. Implementations would only need to support Java and server side objects (as JavaServer Faces implies). However, when possible, render-kits could allow client-side componet access using this concept.
       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (17 - 13 Apr 2007 - Main.edburns)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 327 to 327
        Look at generic 'Visitor Pattern' for Lifecycle Processing (Martin Marinschek)
      Added:
      >
      >
      Martin> 2) rewrite all phase processing logic to use suggestion 1 - Martin> with hooks for individual components to take part in the Martin> processing if necessary - this would make the JSF components Martin> a lot better structured and a lot leaner so out of: Martin> processDecodes(), processUpdates(); ... we make one Martin> invokeOn() - and the lifecycle-implementation does the Martin> rest. The component can intervene with filters then, to make Martin> sure it can specifically decide about inclusion/exclusion of Martin> children in the phase processing.
        Divide processValidations phase to processConversions and processValidation phase and add an attribute like "causesValidation" to UICommand in order to skip validation to be used instead of hacks like "immediate" (Cagatay Civici)
      Line: 357 to 368
        Generic UIData iterator component, i.e. Facelets ui:repeat or Tomahawk dataList (Mike Kienenberger)
      Changed:
      <
      <
      Ability to visit ever node, even every cell in a datatable.
      >
      >
      Ability to visit every node, even every cell in a datatable.
        Ability to have a "component" EL implicit object

      Line: 417 to 428
        Automatically wrap multiple children of an f:facet in h:panelGroup or similar non-rendering container.
      Added:
      >
      >
      gvanmatre> This metadata provides a layer of indirection that the gvanmatre> component tree is built from. Within this layer we can add gvanmatre> reuse and other true OO principles not possible or gvanmatre> overlooked in a simple templating approach. In terms of gvanmatre> reuse, I'm talking about inheritance in addition to gvanmatre> composition. By focusing on an API, it could allow for gvanmatre> template metatdata to be stored in a variety of forms, gvanmatre> XML, HTML, Java Annotations, JCR (aka Jackrabbit) or gvanmatre> RDBMS. This approach could also benefit JSP built view gvanmatre> besides other types of page entry points.
        Subcategory: EL

      Allow resource bundles to contain EL expressions

      Line: 444 to 467
        * Add getPhaseId() to FacesContext? for accessing the current JSF lifecycle phase of the current request. * Consider separating the conversion and validation into separate phases.
      Added:
      >
      >
      Martin> 4) solving the form - link - button issues - once and for Martin> all. Find a way to do a form-submission client-side Martin> independent of the concrete implementation.

      vajav> * Force implementations to make ALL attributes of the html vajav> elements stuff is rendered to accessible! E.g. the size vajav> attribute of selectManyMenu (who the f*** thought it would be vajav> good to render a menu supposed for selecting more than 1 entry vajav> at time with a fixed size of 1 ???) .

      vajav> * Make the html output xhtml 1.1 strict compatible - currently vajav> there are problems with the ids & client side state saving.

      vajav>* Don't use javascript if it isn't absolute necessary (e.g. for vajav> posting forms)!

      quilleashm> I would like to see a FacesEvent?.get/setParent() that quilleashm> must be used when wrapping an event, usually in quilleashm> queueEvent(). For example UIData in the RI wraps up quilleashm> events from children in it's own event class so it can quilleashm> set it's own index when the event gets quilleashm> broadcast. Ancestors of the UIData cannot then "see" the quilleashm> original event. Implementation would just add a quilleashm> getParent() to FacesEvent? and then setting either with a quilleashm> setter or a constructor overload. Components can then quilleashm> walk the entire event stack to look for the real event of quilleashm> interest.

       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (16 - 13 Apr 2007 - Main.quilleashm)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 441 to 441
        * Make UISelectMany? choose a converter-for-class for E from a List<E> genericized type * Ability to define converters for annotated classes (e.g. @Entity) * Define a parent FacesEvent? property on FacesEvent?. (e.g. in the RI UIData wraps events from children in a WrappedEvent?. Components higher in the tree cannot then inspect the original event)
      Added:
      >
      >
      * Add getPhaseId() to FacesContext? for accessing the current JSF lifecycle phase of the current request. * Consider separating the conversion and validation into separate phases.
       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (15 - 12 Apr 2007 - Main.cagatay_civici)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 223 to 223
        - rogerkeays> Reuse component state available from templates
      Added:
      >
      >
      - With a boolean attribute like "transient ", enable page developer to decide whether to save the state of the component or not. Pretty much like the enableViewState attribute in asp.net(Cagatay Civici)
       Category: Adoption

      Subcategory: UI features


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (14 - 11 Apr 2007 - Main.quilleashm)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 438 to 438
        * Configurable default styles for <h:messages/> * Make UISelectMany? choose a converter-for-class for E from a List<E> genericized type * Ability to define converters for annotated classes (e.g. @Entity)
      Added:
      >
      >
      * Define a parent FacesEvent? property on FacesEvent?. (e.g. in the RI UIData wraps events from children in a WrappedEvent?. Components higher in the tree cannot then inspect the original event)
       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (13 - 11 Apr 2007 - Main.edburns)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 46 to 46
        Error reporting line precise (down to servlet)
      Added:
      >
      >
      Get access to the Faces Context from servlet
       Category: JSP SPEC Requirements

      JSP.eval()

      Line: 60 to 62
        Better type conversion, like OGNL
      Added:
      >
      >
      Okay, it's not the responsibility of the JSF EG, but which do you prefer?

      String foo = (String) ((SomeBean?) FacesContext?.getCurrentInstance() .getExternalContext().getApplicationMap().get("bean")).getConfig() .get("my.config.variable");

      or

      String foo = ${bean.config['my.config.variable']}

       Category: Process

      Align spec versions with Java EE 6

      Line: 85 to 101
        - Easier web application layout. Inspired by RoR?, Phobos
      Added:
      >
      >
      JAR Layout - the idea of a location convention (i.e. all converters in in war/converters/seam-converters.jar) is interesting - but surely if all you need to do to make a class a converter is do @Converter, @ConvertToString, @ConvertToObject (or something)... or have I missed a point here?
        - Zero deployment time for all artifacts, including faces-config.xml (also mentioned on JSR-252-EG)
      Line: 108 to 130
        Examples: - annotations for persisting member variables (@SaveState) - annotations to help renderers - @Attribute("target")
      Added:
      >
      >
      - strong support for annotations for defining a component and building the necessary wiring e.g. so you can just do @Property(el=true, saveState=true), or @Validator...
       
      SubCategory?
      Managed Bean Development

      Line: 153 to 178
        - avoid the "everything is a POST" syndrome - explore caching - error reporting line precise (down to servlet)
      Added:
      >
      >
      PeteMuir?> One of the big issues currently is that it needs soooo much PeteMuir?> wiring - to write a tag you write the component class, add PeteMuir?> it to faces-config.xml (with all its properties), add it to PeteMuir?> your.taglib.xml, write a Tag class (with all it's PeteMuir?> properties) and add it to your tld (with all its PeteMuir?> properties),. You then have to write your state saving PeteMuir?> manually, and make each property read both a static and EL PeteMuir?> resolvable variable. Tools like Ajax4jsf's CDK take some of PeteMuir?> the pain out of this, but annotations would be much neater PeteMuir?> smile
        Better Error reporting, like what you get with Tapestry (also in JSR-252-EG, where it was said: any time there is an error in any part of the lifecycle, the user should see not just a cryptic stack
      Line: 170 to 207
        - annotations for validation - better faces-config support for lage apps
      Added:
      >
      >
      what's needed is a pluggable exception handler so that an application can define a centralised exception configuration that deals with persistence, business AND UI.
       Category: Performance

      SubCategory?
      State Saving
      Line: 180 to 221
        - Re-do UIComponent State Saving, with a view towards making stateless components the default.
      Added:
      >
      >
      - rogerkeays> Reuse component state available from templates
       Category: Adoption

      Subcategory: UI features

      Line: 217 to 260
        AOP features will make JSF IOC what people expect from an IOC container.
      Added:
      >
      >
      CRUD - Field decoration, validation and conversion - easy CRUD is certainly good, field decoration - like Trinidad's label, help and message placement BUT it should templatable (for example, Facelets ui:decorate) so that you can easily change the layout of the decoration.
        Subcategory: Request Processing Lifecycle

      Ajax support: Specification for client side event mechanism.

      Line: 242 to 291
        something like enhanced t:buffer tag from Tomahawk) Ex: for sending an email or generating report for subsequent download

      Changed:
      <
      <
      >
      >
      You want to be able to add listeners for various kinds of lifecycle application events. Maybe, "call this each time something validates," or "call this after everything successfully validates.
        Handle Duplicate Button Presses gracefully. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=31
      Line: 250 to 301
        Lost update problem. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=70
      Added:
      >
      >
      rogerkeays> Invoke lifecycle on first request
        Bookmarkable JSF pages

      Regarding HTTP GET support, external systems should be able to do an HTTP GET or POST request

      Line: 324 to 377
        signal to framework what to do: update that portion of View, full View or redirect to some other View.
      Added:
      >
      >
      JSF is currently missing navigation controls - you want to call an action or navigate to an outcome BUT you don't need to submit a form, and should be restful! Lots of toolkits have implemented these (e.g. Trinidad, Seam UI)
        Subcategory: Validation/Conversion

      Decent inter-component and form-level validation

      Line: 342 to 401
        Validation Messages must have Client-side API to allow seamless Client and Ajax style validations.
      Changed:
      <
      <
      >
      >
      Use generics in validators and converters - very minor, but would save a few casts!
        Subcategory: View Description Language
      Line: 370 to 430
        Ajax security

      Integrate with servlet login/logout.

      Added:
      >
      >
      Subcategory: Misc features:

      * Ability to specify <h:form> method attribute (GET or POST) * Configurable default timezone for <f:convertDateTime/> * Configurable default styles for <h:messages/> * Make UISelectMany? choose a converter-for-class for E from a List<E> genericized type * Ability to define converters for annotated classes (e.g. @Entity)

       

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (12 - 10 Apr 2007 - Main.edburns)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 212 to 212
        Fix dataTable!
      Added:
      >
      >
      Another important thing I'd like to see is improving the IOC container, I think adding construction injection() and adding some AOP features will make JSF IOC what people expect from an IOC container.
        Subcategory: Request Processing Lifecycle

      Ajax support: Specification for client side event mechanism.

      Line: 233 to 238
        Restore View phase shouldn't be visible in a form of getters called to ?restore? model state.
      Added:
      >
      >
      Allow storing result of rendering into a file (might be with something like enhanced t:buffer tag from Tomahawk) Ex: for sending an email or generating report for subsequent download

        Handle Duplicate Button Presses gracefully. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=31

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (11 - 10 Apr 2007 - Main.edburns)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 184 to 184
        Subcategory: UI features
      Changed:
      <
      <
      - Easy customizable theme API
      >
      >
      - Easy customizable theme/skin API. Skinability Framework, that includes Skin parameters API, dynamically generated CSS and Images using Skin parameters (related to Resource Framework), easy use of Skin parameters from pages and Components.
        - Make sure that developers targeting mobile devices aren't forced into downloading tons of JavaScript and CSS for every page the way Visual Web Pack theme files do. Mobile web apps need very small HTML
      Line: 205 to 208
       Category: Features
      Added:
      >
      >
      Subcategory: Data access

      Fix dataTable!

        Subcategory: Request Processing Lifecycle

      Ajax support: Specification for client side event mechanism.

      Line: 222 to 229
        Ajax request, but there no place in the DOM to put it after Ajax response.
      Added:
      >
      >
      JSF internals must become less visible to developers. For example Restore View phase shouldn't be visible in a form of getters called to ?restore? model state.
        Handle Duplicate Button Presses gracefully. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=31
      Line: 256 to 267
        Subcategory: UI Components
      Added:
      >
      >
      Component library interoperability. More specific Component API, standard Resources Framework, Scripting API ? all this making less possible to produce incompatible components.

      In addition to this special TCK to validate/certificate Component Libraries for compatibility.

        Support for associated resources that go along with a component. Make it easy to bundle:
      Line: 291 to 309
        Ability to define parameters to be passed for a navigation case (Cagatay Civici)
      Added:
      >
      >
      Navigation API may support more complex cases, like partial updates. That way you may have Ajax action performed on server and signal to framework what to do: update that portion of View, full View or redirect to some other View.
        Subcategory: Validation/Conversion

      Decent inter-component and form-level validation

      Line: 302 to 325
        Need a more powerful way to decorate input fields when validation or conversion errors occur, perhaps using facets on h:form
      Added:
      >
      >
      any Input may have 'validate' call that will perform Client or Ajax-style validation. Same for 'update' function that will perform validation and update Model on Server using Ajax call.

      Validation Messages must have Client-side API to allow seamless Client and Ajax style validations.

        Subcategory: View Description Language

      Include Facelets/JSFTemplating/Tapestry 5 API in Spec.


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (10 - 03 Apr 2007 - Main.iamnoah)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 311 to 311
        Separate View mapping-related methods from ViewHandler? (ActionMapper? or ViewMapper? based on FacesContext?)
      Added:
      >
      >
      Automatically wrap multiple children of an f:facet in h:panelGroup or similar non-rendering container.
        Subcategory: EL

      Allow resource bundles to contain EL expressions


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (9 - 03 Apr 2007 - Main.rdelaplante)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 196 to 196
        target both desktop and mobile devices would be invaluable. -- Main.rdelaplante - 01 Apr 2007

      - Build in commonly used validators such as:

      Changed:
      <
      <
      * E-mail address: regExp = "(\\w+)(\\.\\w+)*@(\\w+\\.)(\\w+)(\\.\\w+)*";
      >
      >
      * E-mail address: regExp = "(\\w+)([-.]\\w+)*@(\\w+\\.)(\\w+)(\\.\\w+)*";
        * URL: configurable to validate different types of URL's such as http://, ftp://, etc... maybe the java.net.URL class could be used to help validate. * Credit card number: LUHN check. Maybe even add support to enforce allowed card types (configurable)

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (8 - 02 Apr 2007 - Main.rdelaplante)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 195 to 195
        browser detection for displaying the correct view. Being able to develop a single JSF 2.0 web app that can target both desktop and mobile devices would be invaluable. -- Main.rdelaplante - 01 Apr 2007
      Added:
      >
      >
      - Build in commonly used validators such as: * E-mail address: regExp = "(\\w+)(\\.\\w+)*@(\\w+\\.)(\\w+)(\\.\\w+)*"; * URL: configurable to validate different types of URL's such as http://, ftp://, etc... maybe the java.net.URL class could be used to help validate. * Credit card number: LUHN check. Maybe even add support to enforce allowed card types (configurable) -- Main.rdelaplante - 02 Apr 2007

       Category: Features

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (7 - 02 Apr 2007 - Main.rdelaplante)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 186 to 186
        - Easy customizable theme API
      Added:
      >
      >
      - Make sure that developers targeting mobile devices aren't forced into downloading tons of JavaScript and CSS for every page the way Visual Web Pack theme files do. Mobile web apps need very small HTML output, and there is very limited CSS and JavaScript support. -- Main.rdelaplante - 01 Apr 2007

      - Examine Oracle JDeveloper's JSF support for mobile devices. It appears that for each page being developed you can create a view for desktop computers and a view for mobile devices. They might even provide browser detection for displaying the correct view. Being able to develop a single JSF 2.0 web app that can target both desktop and mobile devices would be invaluable. -- Main.rdelaplante - 01 Apr 2007

       Category: Features

      Subcategory: Request Processing Lifecycle

      Line: 214 to 224
        Bookmarkable JSF pages
      Added:
      >
      >
      Regarding HTTP GET support, external systems should be able to do an HTTP GET or POST request to a JSF form that executes the action. For example, an external system wanting to pass in data for two fields of a search form and execute the search action to go directly to the results screen. -- Main.rdelaplante - 01 Apr 2007
        Multi-thread web applications: popups, frames, iFrames, etc.

      Shale: viewController


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (6 - 01 Apr 2007 - Main.cagatay_civici)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 229 to 229
        Look at generic 'Visitor Pattern' for Lifecycle Processing (Martin Marinschek)
      Changed:
      <
      <
      Divide processValidations phase to processConversions and processValidation phase and addition of and attribute like "causesValidation" to UICommand instead of hacks like "immediate" (Cagatay Civici)
      >
      >
      Divide processValidations phase to processConversions and processValidation phase and add an attribute like "causesValidation" to UICommand in order to skip validation to be used instead of hacks like "immediate" (Cagatay Civici)
        Subcategory: UI Components

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (5 - 31 Mar 2007 - Main.cagatay_civici)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 123 to 123
        - Allowing construction injection for managed properties other than setter injection
      Changed:
      <
      <
      - Integrate AOP features to the IOC container; for example ability to intercept methods that fit the *Save pattern.
      >
      >
      - Integrate AOP features to the IOC container; for example ability to intercept methods that fit the *Save pattern. (Cagatay Civici)
       
      SubCategory?
      Renderer Development
      Line: 229 to 229
        Look at generic 'Visitor Pattern' for Lifecycle Processing (Martin Marinschek)
      Added:
      >
      >
      Divide processValidations phase to processConversions and processValidation phase and addition of and attribute like "causesValidation" to UICommand instead of hacks like "immediate" (Cagatay Civici)
        Subcategory: UI Components

      Support for associated resources that go along with a component. Make

      Line: 264 to 266
        Bind navigation cases to exception or response codes (web.xml)
      Changed:
      <
      <
      Ability to define parameters to be passed for a navigation case
      >
      >
      Ability to define parameters to be passed for a navigation case (Cagatay Civici)
        Subcategory: Validation/Conversion

       <<O>>  Difference Topic Jsf2RequirementsScratchpad (4 - 31 Mar 2007 - Main.cagatay_civici)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 121 to 121
        - Dialog/Conversation/Flash/Scope: there is currently no way to insert a scope between request and session. (WebBeans? overlap)
      Added:
      >
      >
      - Allowing construction injection for managed properties other than setter injection

      - Integrate AOP features to the IOC container; for example ability to intercept methods that fit the *Save pattern.

       
      SubCategory?
      Renderer Development

      - Declarative format for defining renderers - perhaps .tag files?

      Line: 260 to 264
        Bind navigation cases to exception or response codes (web.xml)
      Added:
      >
      >
      Ability to define parameters to be passed for a navigation case
        Subcategory: Validation/Conversion

      Decent inter-component and form-level validation


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (3 - 31 Mar 2007 - Main.mkienenb)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 243 to 243
        File upload component
      Added:
      >
      >
      Generic UIData iterator component, i.e. Facelets ui:repeat or Tomahawk dataList (Mike Kienenberger)
        Ability to visit ever node, even every cell in a datatable.

      Ability to have a "component" EL implicit object

      Line: 262 to 264
        Decent inter-component and form-level validation
      Added:
      >
      >
      partial/selective validation, i.e. subForms (Mike Kienenberger)
        Integrate with Validation JSR

      Need a more powerful way to decorate input fields when validation or

      Line: 282 to 286
        Allow faces messages to contain EL expressions
      Added:
      >
      >
      Add the ability to specify EL-functions within the faces-config.xml (Mike Kienenberger)
        Subcategory: Security

      JAAS support


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (2 - 30 Mar 2007 - Main.edburns)
      Line: 1 to 1
       
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      Line: 7 to 7
       

      Portlets

    • Changed:
      <
      <

      WebBeans (JSR-299)

      >
      >

      WebBeans (JSR-299)

       
    • The Validation Specification (JSR-303)

    • Changed:
      <
      <

      Design-Time API for JavaBeans? (JSR-273)

      >
      >

      Design-Time API for JavaBeans (JSR-273)

       
    • Changed:
      <
      <

      Design-Time Metadata for JavaServer Faces Components

      >
      >

      Design-Time Metadata for JavaServer Faces Components

       (JSR-276)

      Changed:
      <
      <
    • Java API for RESTful Web Services (JSR-311)

    • >
      >
    • Java API for RESTful Web Services (JSR-311)

    •  


       <<O>>  Difference Topic Jsf2RequirementsScratchpad (1 - 30 Mar 2007 - Main.edburns)
      Line: 1 to 1
      Added:
      >
      >
      META TOPICPARENT name="JSF2Home"

      The following technologies will most likely need revision to coordinate with this specification:

      • Portlets

      • WebBeans (JSR-299)

      • The Validation Specification (JSR-303)

      • Design-Time API for JavaBeans? (JSR-273)

      • Design-Time Metadata for JavaServer Faces Components (JSR-276)

      • Java API for RESTful Web Services (JSR-311)

      Category: Servlet SPEC Requirements
      
        Make it so you don't have to map the FacesServlet in the web.xml all
        the time.
      
        Specify how ordering of ServletContext listeners works in web.xml and
        in TLD files in jars in WEB-INF/lib
      
        Servlet support for File Upload.
      
        Programmatic Access to web.xml (like what Jetty does). Obviate the
        need for writing a web.xml parser.
      
        Login/logout
      
        Container Managed Authentication overhaul (also mentioned in JSR-252-EG list)
      
        Error reporting line precise (down to servlet)
      
      Category: JSP SPEC Requirements
      
        JSP.eval()
      
        Make JSP recognize JSF components in a first class manner.
      
      Category: EL SPEC Requirements
      
        Investigate plugging in other ELs into JSP (OGNL)?
      
        Expanded read/write support in JSF el
      
        Better type conversion, like OGNL
      
      Category: Process
      
        Align spec versions with Java EE 6
      
        Make it possible for someone to pass the JSF 1.2 TCK with out
        implementing deprecated methods.
      
        Separate Standard HTML Renderkit from the JSF 2.0 effort into a
        separate spec and/or JSR. Keep UICommand, UIData, etc in core spec.
      
      
      Category: Ease Of Development
      
      note: make sure to talk to users of Internet Service Providers.  For people whose development environment is 
      hosted by an ISP, we have to make sure those users are happy.
      
      	SubCategory: Page Author Experience
      
      		- better support for .tag files
      		- HTML based development (ala Tapestry; Facelets helps)
      		- better way to "componentize" page parts 
      		  (better than jsp:include)
      
      		- Easier web application layout. Inspired by RoR, Phobos
      
      		- Zero deployment time for all artifacts, including faces-config.xml
      		  (also mentioned on JSR-252-EG)
      
      		- implementations check for changes in faces-config.xml for 
      		  additional elements (such as nav handlers, components, etc..)..
      		- Grizzly support will deinitely help here.
      		- ability to inspect RenderKit for its Renderers at run time.
      
      		- Less configuration, more convention
      
      		- First class support for "Environment" concept, as in Rails:
      		  Development,Test,Production
      
      	SubCategory: Component Development
      
      		- enable building custom components without tag handler,
      		  faces-config.xml and tld - perhaps annotations use within
      		  component class.
      
      		- use of annotations in custom components.
      		  Examples:
      			 - annotations for persisting member variables (@SaveState)
      			 - annotations to help renderers - @Attribute("target") 
      
      	SubCategory: Managed Bean Development
      		
      		- annotations for dependency lookups
      		  Example: @Lookup("#{param.id}")
      
      		- Generalizing Managed Beans so they can be used in the general web tier
      
      		- Leverage annotationsto declare a POJO a managed bean
      
      		- Dialog/Conversation/Flash/Scope: there is currently no way to
      		  insert a scope between request and session. (WebBeans overlap)
      
      	SubCategory: Renderer Development 
      
      		- Declarative format for defining renderers - perhaps .tag files? 
      
      		  Ability to write a renderer without resorting to out.println():
      		  declarative rendering. See what Ajax4JSF does, as well as Ken
      		  Paulsen's JSFTemplating. (Also mentioned in JSR-252-EG where it
      		  is suggested that the writer is moved into a full SAX-compatible
      		  handler, and where Adam suggests templating.)
      
      		- APIs for rendering script content. Targets the same requirements
      		  targeted by shale-remoting.
      
      	SubCategory: Tag Handler Development
      
      		- We already help by generating tag handler classes and tld
      		  Take this a step further and remove the need to generate
      		  these completely.  JSP spec change - programatic registration
      		  of tag classes would allow JSF runtime to register tags as
      		  it parsed faces-config.xml.
      
      	SubCategory: Application Development
      
      		- passing values from page to page
      		- additional scopes (process, dialog, conversation, etc..)
      		- avoid the "everything is a POST" syndrome - explore caching
      		- error reporting line precise (down to servlet)
      
      	Better Error reporting, like what you get with Tapestry (also in
      	JSR-252-EG, where it was said: any time there is an error in *any*
      	part of the lifecycle, the user should see not just a cryptic stack
      	trace, but also the component - including file and line number - that
      	triggered the problem, the EL expression that was being evaluated -
      	including the part of the EL expression that triggered the problem,
      	etc. Diagnosability for state saving is also important. On this point,
      	Gavin King wants to have centralized error handling, with an
      	interception point, perhaps using navigation rules, to help handle
      	errors.)
      
      		- control inclusion (or not) of jsessionid in URL via some external 
      		  attribute
      		- bookmark support
      		- annotations for validation
      		- better faces-config support for lage apps
      
      Category: Performance
      
      	SubCategory: State Saving
      
      		- saving page deltas
      		- mostly "stateless" state saving
      
      		- Re-do UIComponent State Saving, with a view towards making stateless
      		  components the default.
      
      Category: Adoption
      
        Subcategory: UI features
      
      		- Easy customizable theme API
      
      Category: Features
      
        Subcategory: Request Processing Lifecycle
      
      	 Ajax support: Specification for client side event mechanism.
      
      		- update parts of the component tree (example: DynaFaces)
      		- standardize Ajax support in specification (probably with 
      		  some javascript library)
      
      		- Using javascript document.write() to build the component layout
      		  on the client side is also show stopper, because document is
      		  closed already during the Ajax requests/responses.
      
      		- Components with rendered="false" have no placeholders in the
      		  browser DOM. As a result, component becomes rendered during the
      		  Ajax request, but there no place in the DOM to put it after Ajax
      		  response.
      
      
      	 Handle Duplicate Button Presses
      	 gracefully. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=31
      
      	 Lost update
      	 problem. https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=70
      
      	 Bookmarkable JSF pages
      
      	 Multi-thread web applications: popups, frames, iFrames, etc.
      
      	 Shale: viewController
      
      	 Page Actions: Ability to say, "when this page loads, invoke this
      	 action".
      
      	 Alternative, Statless lifecycle
      
      	 Transaction annotations.
      	 
      	 Make Lifecycle Extensible/Customizable beyond PhaseListeners (Martin Marinschek)
      	 
      	 Look at generic 'Visitor Pattern' for Lifecycle Processing (Martin Marinschek)
      
        Subcategory: UI Components
      
      	 Support for associated resources that go along with a component. Make
      	 it easy to bundle:
      
      		*
      		 o scripts
      		 o images
      		 o stylesheets
      
      	 Calendar component
      
      	 Tree component (Gavin King also wants this)
      
      	 Tabbed view 
      
      	 File upload component
      
      	 Ability to visit ever node, even every cell in a datatable.
      
      	 Ability to have a "component" EL implicit object
      	 
      	 Scaffolding UIComponents/Models for Rapid Development with EJB3 (BeanEditor/Seam UI/Rails)
      
        Subcategory: Navigation
      
      	 Allow EL evaluation within navigation cases to enable bookmarkable
      	 links after action invocation.
      	 
      	 Include EL evaluation with Navigation Rules and for Update Phase (Gavin King)
      	 
      	 Bind navigation cases to exception or response codes (web.xml)
      
        Subcategory: Validation/Conversion
      
      	 Decent inter-component and form-level validation
      
      	 Integrate with Validation JSR
      
      	 Need a more powerful way to decorate input fields when validation or
      	 conversion errors occur, perhaps using facets on h:form
      
        Subcategory: View Description Language
      
      	 Include Facelets/JSFTemplating/Tapestry 5 API in Spec.
      	 
      	 Retain ability to use alternate ViewHandlers
      	 
      	 Separate View mapping-related methods from ViewHandler
      	 (ActionMapper or ViewMapper based on FacesContext)
      
        Subcategory: EL
      
      	 Allow resource bundles to contain EL expressions
      
      	 Allow faces messages to contain EL expressions 
      
        Subcategory: Security
      
      	 JAAS support
      
      	 Ajax security
      
      	 Integrate with servlet login/logout.
      

      Topic Jsf2RequirementsScratchpad . { View | Diffs r26 < r25 < r24 < r23 | More }
       XML java.net RSS