JSR 378 Review - Java Community Process

1y ago
7 Views
2 Downloads
1.52 MB
25 Pages
Last View : 14d ago
Last Download : 3m ago
Upload by : Tia Newell
Transcription

JSR 378 Review January 11, 2017 Neil Griffin Specification Lead Liferay, Inc.

About JSR 378 Title: Portlet 3.0 Bridge for JavaServerTM Faces 2.2 Specification Goal: To define the requirements for a portlet bridge that enables webapp developers to deploy their JSF applications as portlets with little-to-no modification 2

Introduction JSR 378 builds on top of JSR 329: Portlet 2.0 Bridge for JSF 1.2 Portlet 3.0 and JSF 2.2 both target Java EE 7, so the bridge targets Java EE 7 as well This JSR is not included with the Java EE platform 3

Business/marketing/ecosystem justification Q: Why do this JSR? JSR 329 was released in 2011 and the JSF Portlet Bridge has not kept pace with the Portlet and JSF specifications Account for major version increase from Portlet 2.x to 3.x Account for major version increase from JSF 1.x to 2.x Account for minor version increase from JSF 2.0 to 2.2 Q: What’s the need? Since JSF and Portlets are both standards-based, developers need a standards-based way to deploy JSF applications as a portlets Q: How does it fit in to the Java ecosystem? Integrates javax.faces-api and javax.portlet-api Java-based portals become a deployment option for JSF applications Supports a variety of JSF component suites from the ever-vibrant JSF ecosystem Q: Is the idea ready for standardization? Standardization began with JSR 329 4

History JSR Review: 20 Jul, 2015 JSR Review Ballot: 03 Aug, 2015 Expert Group Formation Complete: 10 Dec, 2015 JSR Renewal Ballot: 17 Oct, 2016 Portlet 3.0 Testing JSF 2.3 Testing Portlet 3.0 Final JSF 2.3 Final Q4 2016 Q1 2017 5

Schedule Anticipated schedule to completion for JSR 378 Hopefully submit follow-on JSR for Portlet 3.0 JSF 2.3 EDR#1 EDR#2 Public Review Final Draft Q2 2017 Q3 2017 Q4 2017 Q1 2018 Q2 2018 6

Technical scope and features The JSF Portlet Bridge (FacesBridge) is a technology that connects the Portlet Lifecycle to the JSF Lifecycle Portlet 3.0 Lifecycle JSF 2.2 Lifecycle 7

Technical scope and features (cont.) Portlets are web applications that are deployed within a portlet container Portlet containers aggregate the markup of one or more portlets in order to present a portal page to the user DEMO 8

The Expert Group (Members) Cagatay Civici: www.primefaces.org Leonardo Uribe: myfaces.apache.org Josh Juneau: http://jj-blogger.blogspot.com Author: “JavaServer Faces: Introduction by Example ” Kito Mann: www.jsfcentral.com Author: “JavaServer Faces in Action” Mansi Gaba: www.ibm.com Ren Zhijun: www.oracle.com Ken Fyten: www.icesoft.com Vernon Singleton, Kyle Stiemann, Juan Gonzalez: www.liferay.com 9

The Expert Group (Operations) The EG had a face-to-face meeting at JavaOne 2016 The EG normally operates asynchronously via email and the issue tracker: Spec lead creates a new issue in the issue tracker Spec lead sends an email to: jsr378-experts@faces-bridge-spec.java.net EG members are asked to comment or vote 1/-1 on each issue When the feature is accepted, implementation begins followed by a tweet announcement via @FacesBridgeSpec 10

Deliverables Standard: Spec Document Reference Implementation (source, binaries, javadoc) Technology Compatibility Kit (TCK) Bonus: JSF Showcase (portlet & webapp versions): http://www.liferayfaces.org/web/guest/jsf-showcase Variety of demos including Plain JSF, PrimeFaces, ICEfaces, RichFaces, Liferay Faces Alloy, and Inter-Portlet Communication Maven Archetypes for: Plain JSF, PrimeFaces, ICEfaces, RichFaces, and Liferay Faces Alloy 11

Publicity JavaOne 2016: “Portlet Specification 3.0 Is Here!” [CON3860] .jsp?event javaone&search CON3860 JavaOne 2016: “Innovation by the JSF Ecosystem” [CON3126] .jsp?event javaone&search CON3126 Liferay DEVCON 2016: “JSR Update: Portlet 3.0, JSF 2.3, and the Faces Bridge” https://www.youtube.com/watch?v HNSeKOUDLzg JavaOne 2015: “Nighthacking Interview with Neil Griffin, JSR 378” https://www.youtube.com/watch?v MLzJxxa9-jo&index 15&list PLX8CzqL3ArzW7T-75n9-8g8dlPcTlMv &t 544 Radio Liferay Episode 54, October 2015: Scott Nicklous and Neil Griffin griffin-on-jsr-362portlet-3-0 JavaOne 2014: “What's New in Portlet 3.0” [BOF2210] sionDetail.ww%3FSESSION ID%3D2210 JavaOne 2013: “What’s New in Portlet 3.0 and JSF 2.2” https://www.youtube.com/watch?v GYhgpSQc07M 12

Collaboration with other community groups Neil Griffin represents Liferay, Inc. on JSR 372 (JSF 2.3) and JSR 362 (Portlet 3.0) Cagatay Civici, Leonardo Uribe, Kito Mann, and Josh Juneau serve on JSR 372 (JSF 2.3) Neil is a committer for the Portlet RI (Apache Pluto) Neil and Vernon are committers for the JSF RI (Mojarra) Neil, Vernon, and Kyle contribute portlet-related fixes to PrimeFaces 13

Implementations The RI for JSR 329 was the Apache MyFaces Portlet Bridge: https://myfaces.apache.org/portlet-bridge/ Two additional implementations of JSR 329 were developed: JBoss Portlet Bridge http://portletbridge.jboss.org/ Liferay Faces Bridge http://www.liferayfaces.org/ The RI for JSR 378 is Liferay Faces Bridge The JSR 378 Bridge API has been fortified with extension points so that portal vendors can make vendor-specific extensions in a separate JAR 14

IP Flow (Licenses) Spec: JCP License i/blob/5.x/bridgespec/LICENSE.txt RI: Apache License, Version 2.0 pl/blob/master/ .txt TCK: Apache License, Version 2.0 pl/blob/master/tck/ F/ apache-2.0.txt 15

IP Flow (Contributions) Q: How are you handling contributions from non JCP members? A: GitHub pull requests Q: What Terms of Use apply to your collaboration tools? Do you have a Contributor Agreement? A: Contributions are submitted by clicking on the “Contribute Solution” button at issues.liferay.com and agreeing to the Liferay Open Source Community Contribution Agreement nt Q: Any legal issues or concerns? A: None at this time 16

RI and TCK development Q: How are you developing the RI and TCK? A: The RI is developed collaboratively, but the majority of the work is done by Neil, Vernon, Kyle, and Juan of Liferay. Q: If collaboratively (through an open-source project) How many committers and who? How many apart from the Spec Lead? A: Anyone is free to submit a pull request at GitHub with the potential of it being merged into the RI or TCK by Neil (the only one with upstream push rights to the remote repo) 17

RI and TCK development (cont.) Q: Is the RI available for public download? A: shots/com/ SNAPSHOT/ Q: Is the TCK available for public download? A: Yes, but only in source form because deployment of the TCK to a portlet container (like Pluto) is most easily achieved through the Maven build system. Q: Do you have a source-code repository? A1: Spec & API: i A2: Impl & TCK: pl 18

Participation and transparency Provide a pointer to the JSR page on JCP.org – https://www.jcp.org/en/jsr/detail?id 378 Provide a pointer to the “JSR project website" – https://java.net/projects/faces-bridge-spec 19

Adopt-a-JSR Q: Are you participating in the Adopt-a-JSR program? A: No, since no JUGs adopted Portlet 3.0 JSR, we have not tried to foster adoption for the JSF Portlet Bridge JSR. 20

Mailing lists or forums Q: How are you communicating with the public and how can they communicate with you? A: Mailing List, Forums, Issue Tracker, and Twitter Provide pointers to public mailing list(s) and/or forum(s) Mailing List: jsr378-observers/archive Forums: https://web.liferay.com/community/forums/-/message boards/category/13289029 Issue Tracker: https://issues.liferay.com/browse/FACES Twitter: @FacesBridgeSpec Total number of messages, threads? 42 Messages (all pointing to threads of discussion at the issue tracker) Total number of participants (EG members, non-EG members?) 10, all EG members How many messages per month (from Spec Lead, EG members, and non-EG members?) 3 threads/month 21

Issue tracker Total number of issues? 42 How many in each state (open, closed, deferred, etc?) 21 open, 21 closed Average number of issues logged per month? 3/month Average number of issues resolved per month? 50% How many different people logged them? Only the Spec Lead 22

Other transparency and participation metrics 5,000 downloads/month of released artifacts at Maven Central 875 downloads/month of Liferay Faces Bridge (the new RI) Download stats are likely underestimated, because many development companies today host their own Nexus servers Typically get between 15,000 - 30,000 views of our blog posts 23

Questions, discussion, next steps 24

Thank you! http://jcp.org Liferay and Liferay Faces are trademarks or registered trademarks of Liferay, Inc. Java Community Process and JCP are service marks of Oracle Corporation in the United States and in other countries Java, Java EE, JavaOne, and JavaServer are trademarks or registered trademarks of Oracle Corporation in the United States and in other countries GITHUB is an exclusive trademark registered in the United States by GitHub, Inc. ICEfaces is a trademark of ICEsoft Technologies, Inc. JBoss and RichFaces are trademarks of Red Hat Inc. Images of the Duke mascot are licensed under the new BSD 2-Clause License. For more information, see: https://kenai.com/projects/duke/pages/Home All other trademarks mentioned herein are the property of their respective owners

4 Business/marketing/ecosystem justification Q: Why do this JSR? JSR 329 was released in 2011 and the JSF Portlet Bridge has not kept pace with the Portlet and JSF specifications Account for major version increase from Portlet 2.x to 3.x Account for major version increase from JSF 1.x to 2.x Account for minor version increase from JSF 2.0 to 2.2

Related Documents:

JAX-RS 1.0 Connectors 1.6 JAX-WS 2.2 JAXB 2.2 JSR-109 1.2 JSR-181 1.1 JMS 1.1 JAF 1.1 JavaMail 1.4 JSR-115 JSR-196 JSR-88 1.2 JSR-77 1.1 JAX

Technology Compatibility Kit Reference Guide for JSR 346: Contexts and Dependency Injection for Java EE 1.1 Specification Lead: Red Hat Inc. Pete Muir JSR 346: Contexts and Dependency Injection (CDI) for Java EE 1.1 specification lead Gavin King JSR 299: Contexts and Dependency Injection (CDI) for Java EE 1.0 specification lead Martin Kouba .

java.io Input and output java.lang Language support java.math Arbitrary-precision numbers java.net Networking java.nio "New" (memory-mapped) I/O java.rmi Remote method invocations java.security Security support java.sql Database support java.text Internationalized formatting of text and numbers java.time Dates, time, duration, time zones, etc.

Java API for Processing JSON (JSON-P) Streaming API to produce/consume JSON - Similar to StAX API in XML world Object model API to represent JSON - Similar to DOM API in XML world Align with Java EE 7 schedules JSR Supporters - fasterxml.com(Jackson), Doug Crockford(json.org) JSR-353

Java Version Java FAQs 2. Java Version 2.1 Used Java Version This is how you find your Java version: Start the Control Panel Java General About. 2.2 Checking Java Version Check Java version on https://www.java.com/de/download/installed.jsp. 2.3 Switching on Java Console Start Control Panel Java Advanced. The following window appears:

Technology Compatibility Kit Reference Guide for JSR-299: Context and Dependency Injection for Java EE Specification Lead: Red Hat Inc. Gavin King JSR-299: Contexts and Dependency Injection (CDI) for Java EE specification lead (Red Hat, Inc.) Pete Muir CDI TCK lead (Red Hat, Inc.) Dan Allen CDI TCK developer (Red Hat, Inc.)

3. _ is a software that interprets Java bytecode. a. Java virtual machine b. Java compiler c. Java debugger d. Java API 4. Which of the following is true? a. Java uses only interpreter b. Java uses only compiler. c. Java uses both interpreter and compiler. d. None of the above. 5. A Java file with

Titulli I diplomuar në administrim publik Numri në arkiv i akreditimit [180] 03-619/9 Numri në arkiv i akreditimit [240] 03-1619/19 (10.11.2017) Vendimi për fillim me punë 03-1619/19 (10.11.2017) Data akreditimit 21.03.2017 Përshkrimi i programit Programi i administrimit publik ka një qasje multidisiplinare të elementeve kryesore të studimit në fushën e Administratës publike dhe .