
Apache MyFaces JSF कार्यान्वयन को लक्षित करने वाला CVE-2011-4367 के लिए एक्सप्लॉइट, जो Jakarta Faces फ्रेमवर्क में रिमोट कोड निष्पादन भेद्यता प्रदर्शित करता है।
JavaServer Faces (JSF) और Jakarta Faces विनिर्देश का Apache कार्यान्वयन
Jakarta Faces 5.0 कार्यान्वयन
Jakarta Faces 4.1 कार्यान्वयन
Jakarta Faces 4.0 कार्यान्वयन
रीफैक्टर्ड 2.3-next कोडबेस पर आधारित
(लगभग) JavaServer Faces 2.3 कार्यान्वयन
2.3 की तुलना में पूरी तरह से रीफैक्टर्ड कोडबेस, साथ ही Quarkus एक्सटेंशन भी प्रदान करता है
2.3-next, JSF 2.3 API के बराबर है लेकिन @ManagedBeans को CDI को सौंपता है; XML के माध्यम से कॉन्फ़िगर किए गए ManagedBeans को पूरी तरह से अनदेखा किया जाता है। पुराने FacesEL (javax.faces.el.*) का कार्यान्वयन भी पूरी तरह से हटा दिया गया है।
JavaServer Faces 2.3 कार्यान्वयन
mvn clean install
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>5.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>5.0.0-SNAPSHOT</version>
</dependency>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="https://jakarta.ee/xml/ns/jakartaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd"
version="5.0">
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
</web-app>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="jakarta.faces.core"
xmlns:h="jakarta.faces.html">
<h:head>
</h:head>
<h:body>
Hello World!
</h:body>
</html>
2.3-next के बाद से एक Quarkus एक्सटेंशन उपलब्ध है। एक नमूना प्रोजेक्ट यहाँ पाया जा सकता है: https://github.com/apache/myfaces/blob/main/extensions/quarkus/showcase/
@ConversationScoped को लागू नहीं करता हैsrc/main/resources/META-INF/resources के अंतर्गत रखना होगा क्योंकि Quarkus WAR नहीं बनाता है और src/main/webapp को अनदेखा कर दिया जाता है!