1. downloaded the 2013-09-27 tomee+ JAR 2. downloaded 2013-09-27 myfaces 2.2 api + impl JARs 3. extracted tomee+ JAR, and copied myfaces 2.2 JARs to tomee/lib 4. marked a bean in my app with MyFaces 2.2 @ViewScoped (javax.faces.view.ViewScoped)
import javax.faces.view.ViewScoped; @Named @ViewScoped public class MessengerBean implements Serializable { which has @PostConstruct and @PreDestroy methods, and slf4j logger in both of those methods 5. built project, dropped WAR in tomee/webapps, started tommee+ 6. saw the following, which is /definitely/ related to OWB-894[1], which has not been fixed, yet Sep 27, 2013 11:02:24 PM org.apache.webbeans.config.BeansDeployer isValidManagedBean INFO: skipped deployment of: org.apache.myfaces.cdi.view.ViewScopeContextExtension reason: Bean implementation class can not implement javax.enterprise.inject.spi.Extension.! 6. logged into my app, and began testing the myfaces 2.2 @ViewScoped bean (MessengerBean); below is login, 'render' view via ui:include src=#{bean.dynamicInclude} and close view twice Sep 27, 2013 11:06:35 PM jsf.users.pf_UsersController loginUser INFO: administrator logged in at 09/27/2013 11:06 PM Sep 27, 2013 11:06:54 PM pf.MessengerBean init INFO: pf.MessengerBean@7a26d557 Sep 27, 2013 11:06:54 PM javax.faces.component._ExternalSpecifications isBeanValidationAvailable INFO: MyFaces Bean Validation support enabled Sep 27, 2013 11:07:03 PM pf.MessengerBean releaseResources INFO: pf.MessengerBean@7a26d557 Sep 27, 2013 11:07:25 PM pf.MessengerBean init INFO: pf.MessengerBean@1d124610 Sep 27, 2013 11:07:39 PM pf.MessengerBean releaseResources INFO: pf.MessengerBean@1d124610 7. next, I 'rendered' via again via ui:include src="#{bean.dynamicInclude}"; look at the bean ID Sep 27, 2013 11:08:57 PM pf.MessengerBean init INFO: pf.MessengerBean@7b868842 8. did a GET by pressing F5 key in browser (google chrome), so new bean was constructed and the previous bean is still out there in la-la land :) Sep 27, 2013 11:09:13 PM pf.MessengerBean init INFO: pf.MessengerBean@58375a42 9. close view similar to what I did in #6 above...via commandButton/PrimeFaces-menuitem POST action="#{bean.methodThatReturnsNonNullOutcome}" Sep 27, 2013 11:09:22 PM pf.MessengerBean releaseResources INFO: pf.MessengerBean@58375a42 10. did a GET immediately after POST in #9 above, and bean was constructed and destroyed Sep 27, 2013 11:09:32 PM pf.MessengerBean init INFO: pf.MessengerBean@77ed8c1a Sep 27, 2013 11:09:32 PM pf.MessengerBean releaseResources INFO: pf.MessengerBean@77ed8c1a 11. rendered view again like I did in # 6 and 7, above Sep 27, 2013 11:10:05 PM pf.MessengerBean init INFO: pf.MessengerBean@37a1a0e5 12. did a user logout, which invokes session.invalidate(), but the bean in la-la land (see #8 above) is not destroyed 'immediately' and the bean constructed via #11 above has not be destroyed (which means it is out there in la-la land, somewhere). :) Sep 27, 2013 11:11:35 PM jsf.users.pf_UsersController logout INFO: administrator logged out at 09/27/2013 11:11 PM FYI, OmniFaces CDI @ViewScoped[2] is doing something to ensure that the bean is destroyed immediately at/after session.invalidate(). [1] https://issues.apache.org/jira/browse/OWB-894 [2] http://code.google.com/p/omnifaces/issues/detail?id=201 On Thu, Sep 26, 2013 at 9:39 AM, Howard W. Smith, Jr. < smithh032...@gmail.com> wrote: > Wow, very interesting response, Leonardo, thanks! > > I just clicked the 'star' on your email (in my gmail), and going to have > to download latest tomee and do some MyFaces/JSF 2.2 testing with my > app...when/as I get bandwidth to do so. > > I think I saw you posting a few (MyFaces/JSF 2.2) things (recently) in > tomee's JIRA, but have not been on tomee's JIRA for at least 1 or 2 weeks > now. > > This is definitely good news and glad to see the progress, especially > since I was previously-and-initially a Mojarra user, and > now-and-continuously, a happy-and-most-likely-will-be-a-loyal MyFaces > (Core) user! :) > > > > On Thu, Sep 26, 2013 at 9:11 AM, Leonardo Uribe <lu4...@gmail.com> wrote: > >> Hi Howard >> >> JSF spec is always one step behind servlet spec, so in this case MyFaces >> 2.2.x is tested against tomcat 7, so there are no plans for test in tomcat >> 8, but in the recent times most of the testing code has been done using >> junit (running myfaces in a junit test specially designed for that). There >> are just a couple of features that needs a full test using a web server >> (like the file upload component, which cannot be tested properly in a >> junit >> test). If it works in tomcat 7, it will definitively work in tomcat 8 >> without trouble. >> >> I have already run MyFaces 2.2.x in tomee, just changing the jars, but it >> was required to fix some lines of code in tomee, so for now it works with >> the latest snapshot. There is still pending some code cleanup in MyFaces >> Core 2.2.x, and those changes could potentially affect tomee >> compatibility, >> but it is necessary to do it. I'll try to avoid changes on myfaces spi >> code >> as much as possible, to avoid changes (and pain!) in server integration >> code, but there is no any warrant in that part, because we haven't do a >> cleanup since 1.0 and it is necessary to remove some unused classes / code >> and some incomplete features that are there but then were included in the >> spec or they have been forgotten over the time. >> >> I already did some performance test on the code, and it has not been found >> any regressions in this part. >> >> An snapshot of tomee can be found here: >> >> >> https://repository.apache.org/content/repositories/snapshots/org/apache/openejb/apache-tomee/ >> >> pick the latest one in 1.6.0-SNAPSHOT >> >> regards, >> >> Leonardo Uribe >> >> >> >> 2013/9/26 Howard W. Smith, Jr. <smithh032...@gmail.com> >> >> > +1 for asking this question and for the responses, so far. >> > >> > Leonardo, you mentioned that the stack works with tomcat7. has MyFaces >> > 2.2(.x) been testing against tomcat8, or will MyFaces 2.2(.x) be tested >> > against tomcat8? >> > >> > i'm sure when tomcat8 and myFaces 2.2(.x) work together to meet JSF 2.2 >> > requirements, then I'm sure tomee will be onboard with that stack, too. >> how >> > has the chatter been between myfaces and tomee about adapting MyFaces >> > 2.2(.x) ? >> > >> > >> > >> > >> > On Thu, Sep 26, 2013 at 4:51 AM, Karl Kildén <karl.kil...@gmail.com> >> > wrote: >> > >> > > What a great reply! >> > > >> > > I will have a blast testing it, thanks a lot for pushing a new >> snapshot >> > and >> > > everything. >> > > >> > > Cheers >> > > >> > > >> > > On 26 September 2013 10:37, Leonardo Uribe <lu4...@gmail.com> wrote: >> > > >> > > > Hi >> > > > >> > > > For the people interested in the topic, the code right now in trunk >> is >> > > > almost complete, in fact I'm on the final steps to release a beta, >> but >> > I >> > > > have to hunt down all minor issues left. If you want to try: >> > > > >> > > > - HTML5 Friendly Markup >> > > > - Resource Library Contracts >> > > > - Faces Flows >> > > > - Stateless Views >> > > > - FlowScoped and ViewScoped >> > > > - Dynamic component creation (vdl.createComponent(...) MYFACES-3733) >> > > > - CSRF view protection >> > > > - f:viewAction >> > > > - File Upload Component (remember jetty 8 is broken in that part, it >> > > works >> > > > with tomcat 7) >> > > > >> > > > You can do it. The code looks just great, but keep in mind that "the >> > > devil >> > > > is on the details". >> > > > >> > > > The list of pending points before MyFaces Beta is this: >> > > > >> > > > - RendererWrapper logic (@ListenerFor and @ResourceDependency) >> > > > - http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-766 >> > > > Events from the flash >> > > > - http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1028 >> > > > Deprecate StateManager, point to StateManagementStrategy. In >> > > > StateManagementStrategy, require the use of the visit >> > > > API to perform the saving. >> > > > - http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-763 >> > > > Change Section 5.4 “Managed Bean Annotations” to account for new >> > > > injectability requirements. >> > > > - http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1164 >> > > > If running in a container that supports EL 3.0, add the necessary >> > > > ELResolvers. See Section 5.6.2.8 “Stream, >> > > > StaticField, Map, List, Array, and Bean ELResolvers”. >> > > > http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1169 >> > > > - New XML Namespace for XSD files introduced in JSF 2.2, and also >> for >> > > > facelet tag libraries. >> > > > The following XSD files are new for JSF 2.2, and each will be in the >> > XML >> > > > namespace >> > > > http://xmlns.jcp.org/xml/ns/javaee. >> > > > web-facelettaglibrary_2_2.xsd >> > > > web-facesconfig_2_2.xsd >> > > > web-partialresponse_2_2.xsd >> > > > >> > > > It is a small list, but anyway it requires some time to get it done, >> > and >> > > it >> > > > does not include the necessary tasks to do a code cleanup before the >> > > > official release. >> > > > >> > > > I have pushed a new snapshot here: >> > > > >> > > > >> > > > >> > > >> > >> https://repository.apache.org/content/repositories/snapshots/org/apache/myfaces/core/ >> > > > >> > > > >> > > > >> > > >> > >> https://repository.apache.org/content/repositories/snapshots/org/apache/myfaces/core/myfaces-bundle/2.2.0-SNAPSHOT/myfaces-bundle-2.2.0-20130926.083155-1528.jar >> > > > >> > > > regards, >> > > > >> > > > Leonardo Uribe >> > > > >> > > > >> > > > >> > > > 2013/9/26 Thomas Andraschko <andraschko.tho...@gmail.com> >> > > > >> > > > > Hi Karl, >> > > > > >> > > > > AFAICS in JIRA, 2.2 should be feature complete. >> > > > > Maybe Leo can give a small update about the status :) >> > > > > >> > > > > Regards, >> > > > > Thomas >> > > > > >> > > > > >> > > > > 2013/9/26 Karl Kildén <karl.kil...@gmail.com> >> > > > > >> > > > > > Hello, >> > > > > > >> > > > > > First off what's the recommended way to get a hold of a current >> > > myfaces >> > > > > > snapshot, preferably with maven? >> > > > > > >> > > > > > I am eager to try parts of JSF 2.2. I've been snooping around in >> > jira >> > > > to >> > > > > > get a sense of the completeness level of JSF 2.2 but I felt I >> might >> > > as >> > > > > well >> > > > > > ask... >> > > > > > >> > > > > > - HTML Friendly Markup? >> > > > > > - FlowScoped and ViewScoped? >> > > > > > >> > > > > > Thanks again for Myfaces! Cheers >> > > > > > >> > > > > >> > > > >> > > >> > >> > >