2012-01-06 9 views
6

मैं बस जेएसएफ 2.0 के साथ शुरू कर रहा हूं और मैं बहुत शुरुआत में एक समस्या पर फंस गया हूं। जेएसएफ टैग पार्स नहीं किया गया है।जेएसएफ टैग प्रतिपादन नहीं - FacesServlet शायद काम नहीं कर रहा है?

नीचे कुछ विवरण दिए गए हैं। उम्मीद है कि कोई मदद कर सकता है क्योंकि संबंधित एसओ प्रश्नों में से कोई भी मेरी समस्या को हल करने में सक्षम नहीं है।

hello.jsp

<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:p="http://primefaces.org/ui"> 

    <h:head> 

    </h:head> 

    <h:body> 
    <f:view> 
     asd 
     <h:inputText value="asd" label="UserName"></h:inputText> 
    </f:view> 
    </h:body> 
</html> 

जब मैं प्लेन asd

http://localhost:8080/JSFDeneme/pages/hello.jsp

का स्रोत देखें http://localhost:8080/JSFDeneme/pages/hello.jsp

केवल करने के लिए नेविगेट मैं क्या देखा

बिल्कुल के hello.jsp

<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:p="http://primefaces.org/ui"> 

    <h:head>  
    </h:head>  
    <h:body> 
    <f:view>asd 
     <h:inputText value="asd" label="UserName"></h:inputText> 
     </f:view> 
    </h:body> 
</html> 

web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
     id="WebApp_ID" 
     version="3.0"> 
    <display-name>JSFDeneme</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    <welcome-file>hello.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
    <servlet-name>Faces Servlet</servlet-name> 
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>/faces/*</url-pattern> 
    <url-pattern>/pages/*</url-pattern> 
    <url-pattern>*.jsf</url-pattern> 
    </servlet-mapping> 
    <context-param> 
    <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name> 
    <param-value>resources.application</param-value> 
    </context-param> 
    <context-param> 
    <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description> 
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name> 
    <param-value>client</param-value> 
    </context-param> 
    <context-param> 
    <description> 
    This parameter tells MyFaces if javascript code should be allowed in 
    the rendered HTML output. 
    If javascript is allowed, command_link anchors will have javascript code 
    that submits the corresponding form. 
    If javascript is not allowed, the state saving info and nested parameters 
    will be added as url parameters. 
    Default is 'true'</description> 
    <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name> 
    <param-value>true</param-value> 
    </context-param> 
    <context-param> 
    <description> 
    If true, rendered HTML code will be formatted, so that it is 'human-readable' 
    i.e. additional line separators and whitespace will be written, that do not 
    influence the HTML code. 
    Default is 'true'</description> 
    <param-name>org.apache.myfaces.PRETTY_HTML</param-name> 
    <param-value>true</param-value> 
    </context-param> 
    <context-param> 
    <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name> 
    <param-value>false</param-value> 
    </context-param> 
    <context-param> 
    <description> 
    If true, a javascript function will be rendered that is able to restore the 
    former vertical scroll on every request. Convenient feature if you have pages 
    with long lists and you do not want the browser page to always jump to the top 
    if you trigger a link or button action that stays on the same page. 
    Default is 'false' 
</description> 
    <param-name>org.apache.myfaces.AUTO_SCROLL</param-name> 
    <param-value>true</param-value> 
    </context-param> 
    <listener> 
    <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> 
    </listener> 
</web-app> 

चेहरे-config.xml सामग्री के रूप में ही

<faces-config 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd" 
    version="2.0"> 
</faces-config> 

WEB-INF/lib

  • JSF 2.0 (अपाचे Myfaces JSF कोर-2.0 एपीआई 2.0.2) में मैं क्या है - ग्रहण डाउनलोड किया
  • JSTL-api-1.2.jar
  • JSTL-impl-1.2 कि। जार
  • primefaces-3.0 जार

क्या बिलाव प्रिंट सांत्वना जब मैं सर्वर को पुनः आरंभ और पेज

01,235,164 नेविगेट करने के लिए

कुछ अजीब लगता है और FacesServlet का कोई उल्लेख नहीं है?

06.Oca.2012 22:26:55 org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\glassfish3\jdk\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\apache-ant-1.8.2\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\QuickTime\QTSystem\;. 
06.Oca.2012 22:26:56 org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:AjaxDenemeleri' did not find a matching property. 
06.Oca.2012 22:26:56 org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:RPGW_RestAPI' did not find a matching property. 
06.Oca.2012 22:26:56 org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:JSFDeneme' did not find a matching property. 
06.Oca.2012 22:26:56 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
06.Oca.2012 22:26:56 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
06.Oca.2012 22:26:56 org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 680 ms 
06.Oca.2012 22:26:56 org.apache.catalina.core.StandardService startInternal 
INFO: Starting service Catalina 
06.Oca.2012 22:26:56 org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.22 
06.Oca.2012 22:26:56 com.sun.jersey.api.core.PackagesResourceConfig init 
INFO: Scanning for root resource and provider classes in the packages: 
    sample.hello.resources 
06.Oca.2012 22:26:56 com.sun.jersey.api.core.ScanningResourceConfig logClasses 
INFO: Root resource classes found: 
    class sample.hello.resources.HelloResource 
    class sample.hello.resources.ContactsResource 
06.Oca.2012 22:26:56 com.sun.jersey.api.core.ScanningResourceConfig init 
INFO: No provider classes found. 
06.Oca.2012 22:26:57 com.sun.jersey.server.impl.application.WebApplicationImpl _initiate 
INFO: Initiating Jersey application, version 'Jersey: 1.10 11/02/2011 03:53 PM' 
06.Oca.2012 22:27:00 org.apache.catalina.core.StandardContext addApplicationListener 
INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored. 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.RENDER_CLEAR_JAVASCRIPT_FOR_BUTTON' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.RENDER_HIDDEN_FIELDS_FOR_LINK_PARAMS' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.SAVE_FORM_SUBMIT_LINK_IE' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS' found, using default value true 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.RENDER_VIEWSTATE_ID' found, using default value true 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.STRICT_XHTML_LINKS' found, using default value true 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.RENDER_FORM_SUBMIT_SCRIPT_INLINE' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getLongInitParameter 
INFO: No context init parameter 'org.apache.myfaces.CONFIG_REFRESH_PERIOD' found, using default value 2 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.VIEWSTATE_JAVASCRIPT' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getStringInitParameter 
INFO: No context init parameter 'org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS' found, using default value auto 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS_PRESERVE_STATE' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.VALIDATE_XML' found, using default value false 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig getBooleanInitParameter 
INFO: No context init parameter 'org.apache.myfaces.WRAP_SCRIPT_CONTENT_WITH_XML_COMMENT_TAG' found, using default value true 
06.Oca.2012 22:27:00 org.apache.myfaces.shared_impl.config.MyfacesConfig createAndInitializeMyFacesConfig 
INFO: Tomahawk jar not available. Autoscrolling, DetectJavascript, AddResourceClass and CheckExtensionsFilter are disabled now. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator feedStandardConfig 
INFO: Reading standard config META-INF/standard-faces-config.xml 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator addClassloaderConfigurations 
INFO: Reading config : jar:file:/D:/documents/code/java/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/JSFDeneme/WEB-INF/lib/primefaces-3.0.jar!/META-INF/faces-config.xml 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator getWebAppConfig 
INFO: Reading config /WEB-INF/faces-config.xml 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: Starting up MyFaces-package : myfaces-api in version : 2.0.2 from path : file:/D:/documents/code/java/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/JSFDeneme/WEB-INF/lib/myfaces-api-2.0.2.jar 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: Starting up MyFaces-package : myfaces-impl in version : 2.0.2 from path : file:/D:/documents/code/java/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/JSFDeneme/WEB-INF/lib/myfaces-impl-2.0.2.jar 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tomahawk not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tomahawk12 not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tomahawk-sandbox not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tomahawk-sandbox12 not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tomahawk-sandbox15 not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : myfaces-orchestra-core not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : myfaces-orchestra-core12 not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : trinidad-api not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : trinidad-impl not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : tobago not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : commons-el not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator startLib 
INFO: MyFaces-package : jsp-api not found. 
06.Oca.2012 22:27:00 org.apache.myfaces.util.ExternalSpecifications isBeanValidationAvailable 
INFO: MyFaces Bean Validation support disabled 
06.Oca.2012 22:27:00 org.apache.myfaces.config.annotation.DefaultAnnotationProvider webClasses 
WARNING: AnnotationConfigurator does not found classes for annotations in /WEB-INF/classes/ . This could happen because maven jetty plugin is used (goal jetty:run). Try configure org.apache.myfaces.annotation.SCAN_PACKAGES init parameter or use jetty:run-exploded instead. 
06.Oca.2012 22:27:00 org.apache.myfaces.application.ApplicationImpl getProjectStage 
INFO: Couldn't discover the current project stage, using Production 
06.Oca.2012 22:27:00 org.apache.myfaces.config.FacesConfigurator handleSerialFactory 
INFO: Serialization provider : class org.apache.myfaces.shared_impl.util.serial.DefaultSerialFactory 
06.Oca.2012 22:27:00 org.apache.myfaces.config.annotation.DefaultLifecycleProviderFactory getLifecycleProvider 
INFO: Using LifecycleProvider java.lang.String 
06.Oca.2012 22:27:01 org.apache.myfaces.webapp.AbstractFacesInitializer initFaces 
INFO: ServletContext 'D:\documents\code\java\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\JSFDeneme\' initialized. 
06.Oca.2012 22:27:01 org.primefaces.webapp.PostConstructApplicationEventListener processEvent 
INFO: Running on PrimeFaces 3.0 
06.Oca.2012 22:27:01 org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
06.Oca.2012 22:27:01 org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
06.Oca.2012 22:27:01 org.apache.catalina.startup.Catalina start 
INFO: Server startup in 4958 ms 

किसी भी मदद की सराहना की।

उत्तर

11

hello.jsp

यह सही विस्तार नहीं है।

जेएसएफ 2.0, JSP is deprecated and replaced by Facelets के बाद से। Facelets एक एक्सएमएल आधारित दृश्य प्रौद्योगिकी है और .xhtml फाइलों में लिखा जाना चाहिए। हालांकि, आप पहले से ही अपनी जेएसपी फ़ाइल में वैध फेसलेट सिंटैक्स का उपयोग कर चुके हैं। आपको केवल hello.jsphello.xhtml का नाम बदलने की आवश्यकता है।

मैं सभी यूआरएल पैटर्न को एक यूआरएल पैटर्न *.xhtml द्वारा प्रतिस्थापित करने की भी सिफारिश करता हूं।

<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.xhtml</url-pattern> 
</servlet-mapping> 

ताकि आप आभासी यूआरएल साथ नगण्य बिना http://localhost:8080/JSFDeneme/hello.xhtml करके भी खोल सकते हैं।

मुझे यकीन नहीं है कि आपने कौन सी किताबें/ट्यूटोरियल पढ़े हैं जिन्हें आपने जेएसपी एक्सटेंशन का उपयोग करने के लिए बनाया है। शायद आप जेएसएफ 1.x और जेएसएफ 2.x लक्षित ट्यूटोरियल का मिश्रण पढ़ रहे थे। आपको यह सुनिश्चित करना होगा कि आप JSF 2.x विशिष्ट ट्यूटोरियल पढ़ रहे हैं। our JSF wiki page के नीचे आप कई जेएसएफ 2.x ट्यूटोरियल लिंक पा सकते हैं।

+0

मैं 'hello.jsp'' hello.xhtml' नाम दिया है, लेकिन फिर जब मैं 'के लिए http जाएँ:// localhost: 8080/JSFDeneme/pages/hello.xhtml', मुझे 'ओप्स मिल गया! यह लिंक टूटा हुआ प्रतीत होता है। 'पृष्ठ? पृष्ठ को देखने के लिए मुझे कहां नेविगेट करना चाहिए? –

+0

यदि आपने यूआरएल पैटर्न को भी बदल दिया है, तो आपको यूआरएल से '/ पेज' को हटाना होगा। मेरे उत्तर में उदाहरण यूआरएल भी देखें। – BalusC

+0

एक आकर्षण BalusC की तरह काम करता है! बहुत बहुत धन्यवाद। 2 और प्रश्न, आप क्या 'डॉक्टरेट' सुझाव देंगे? या आप भी एक का उपयोग करने का सुझाव देंगे? और दूसरी बात, क्या मुझे '.xhtml' एक्सटेंशन का उपयोग करना है? क्या मैं कुछ और 'मनोदशा' या मनमाने ढंग से कुछ और उपयोग कर सकता हूं? क्योंकि जब फ़ाइल एक्सटेंशन '.xhtml' होता है और मैं '.jsf' जैसे अन्य' url-mapping' जोड़ता हूं, तो यह काम नहीं करता है। –

1

मुझे लगता है कि, जैसा कि आप एक .jsp यूआरएल आप अच्छे पुराने JSP सर्वलेट के माध्यम से पेज प्रदान कर रहे हैं लागू कर रहे हैं (आप /pages/* यूआरएल चेहरे सर्वलेट को मैप किया है, लेकिन JSP विस्तार मानचित्रण पूर्वता ले जा सकता है) लगता है।

क्या आप अपने पृष्ठ को .jsf पर नाम बदलने का प्रयास कर सकते हैं और इसका आह्वान कर सकते हैं?

+0

दुर्भाग्य से, '.jsf' पर नामकरण न तो काम करता है, न ही '.xhtml' –

+0

' .jsf' का नाम बदलना वास्तव में किसी भी तरह से काम नहीं करेगा। डिफ़ॉल्ट फेसलेट प्रत्यय '.xhtml' है। – BalusC

+0

फ़ाइल एक्सटेंशन को '.jsf' में नामित किया गया और तदनुसार यूआरएल-मैपिंग बदल दिया। मैंने पृष्ठ पर नेविगेट किया और ग्रहण का कंसोल पागल हो गया! एक अनंत लूप में अपवाद फेंक दिया जब तक कि मुझे मजबूर करना और बंद करना था :) –

-2

कोशिश अपने web.xml में निम्न कोड डाल करने के लिए


<?xml version="1.0" encoding="UTF-8"?> 

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 

    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 

    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 

    id="WebApp_ID" version="3.0"> 

<display-name>jsfexample</display-name> 

<servlet> 

    <servlet-name>faces</servlet-name> 

    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 

    <load-on-startup>1</load-on-startup> 

</servlet> 

<servlet-mapping> 
    <servlet-name>faces</servlet-name> 

    <url-pattern>*.xhtml</url-pattern> 

</servlet-mapping> 

संबंधित मुद्दे