Servlet FacesServlet is not available und

Dudo

Aktives Mitglied
Hallo,

ich versuche gerade zum ersten mal eine eigene JSF mit Eclipse Galileo zu erstellen.
Benutze den : tomcat-6.0.20.
und dieses Beispiel : http://www.dpunkt.de/leseproben/2436/Kapitel_1.pdf
eingebundene JARS: jsf-api.jar, jsf-impl.jar, jsp-api-2.1.1, myfaces-api-1.2.0, jstl.jar

Ich habe hier ganz komische Fehlermeldungen.ptio
Die erste ist immer "Servlet FacesServlet is not available" und gibt eine
"ClassNotFoundException: javax.faces.webapp.FacesServlet" an, obwohl sich diese in der jsf-api befindet und ich diese eingebunden habe.

Der zweite Fehler ist:
description: "The requested resource () is not available"
encoding="UTF-8"

kann mir jemand mal helfen???
sitze hier schon zwei
zwei Stunden daran. Hab irgendwie schon alles versucht.

hier nochmal mein Code
web.xml
Java:
<?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_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>First_JSF</display-name>

  <servlet>
    <servlet-name>FacesServlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>FacesServlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
  </servlet-mapping>
</web-app>

die faces-config.xml:
Java:
<?xml version="1.0" encoding="UTF-8"?>

<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_1_2.xsd"
    version="1.2">

	<managed-bean>
		<managed-bean-name>person</managed-bean-name>
		<managed-bean-class>Person</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>
	<navigation-rule>
	 <from-view-id>/seite1.JSP</from-view-id>
	 <navigation-case>
	  <from-outcome>OK</from-outcome>
	  <to-view-id>/seite2.JSP</to-view-id>
	 </navigation-case>
	</navigation-rule>
</faces-config>

Ach ja. Am Anfang als ich die JSF Tags, in der Klasse seite1.jsp und seite2.jsp, eingegeben habe, kannte Eclipse die Tags nicht.
Erst als ich die gleich folgenden Sachen eingegeben habe(hab das zufällig im Netzt gefunden und einfach mal in meine Klassen eingefügt) hat er nicht mehr gemeckert und hat mir auch gleich Empfehlungen für die JSF Tags gegeben.
Java:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html">

Kann man Eclipse irgendwie sagen dass er das automatisch machen soll???

Danke für Hilfe!
 

Krusty

Mitglied
Ich bin zwar auf dem Gebiet JSF auch noch ein blutiger Anfänger, hoffe aber, meine Hinweise helfen dir irgendwie weiter.

eingebundene JARS: jsf-api.jar, jsf-impl.jar, jsp-api-2.1.1, myfaces-api-1.2.0, jstl.jar


Benutzt du die Sun Referenz Implementierung und Apache MyFaces gleichzeitig?

Kann man Eclipse irgendwie sagen dass er das automatisch machen soll???


Window > Preferences > Java > Editor > Templates
 
Zuletzt bearbeitet:

JavaKaffee

Mitglied
Mahlzeit.

Auch wenn das Thema hier nicht entsprechend gelöst wurde, wollte ich mein ziemlich ähnliches Problem darstellen.
Ich habe ein (Spring/Hibernate) JSF+PrimeFaces WebProjekt mit NetBeans und Maven aufgesetzt, welches auf meinem Jetty-Container aktuell (man bastelt ja immer mal Mist zwischendurch xD) wunderbar läuft. Das Projekt ist ein Modul eines Gesamtsystems. Soweit ich informiert bin, wird die Anwendung aber auf einem Tomcat laufen und habe daher das Projekt versucht über selbigen zu starten (v6.0.29). Ergebnis:

Code:
15.12.2011 12:24:35 org.apache.catalina.startup.Embedded start
INFO: Starting tomcat server
15.12.2011 12:24:35 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
15.12.2011 12:24:37 org.apache.catalina.core.ApplicationContext log
[B]INFO: Marking servlet Faces Servlet as unavailable[/B]
15.12.2011 12:24:37 org.apache.catalina.core.StandardContext loadOnStartup
SCHWERWIEGEND: Servlet XXXX threw load() exception
java.lang.ClassCastException:[B] javax.faces.webapp.FacesServlet cannot be cast to javax.servlet.Servlet[/B]
        at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1116)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
        at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4350)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4659)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:255)
        at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
        at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
15.12.2011 12:24:37 org.apache.catalina.core.ApplicationContext log
INFO: Marking servlet performanceMonitor as unavailable
15.12.2011 12:24:37 org.apache.catalina.core.StandardContext loadOnStartup
SCHWERWIEGEND: Servlet XXXXX threw load() exception
java.lang.ClassCastException: [B]etm.contrib.integration.web.HttpConsoleServlet cannot be cast to javax.servlet.Servlet[/B]
        at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1116)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
        at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4350)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4659)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:255)
        at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
        at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
15.12.2011 12:24:37 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
15.12.2011 12:24:37 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080

Meine Dependencies (abgesehen von den internen, aus denen ich außerdem die myfaces-api excludiert habe EDIT: Ich sehe als transitive Dependency in NetBeans die Servlet-Api 2.3):
Code:
<dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.0.3</version>
        </dependency>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.0.3</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>
        <dependency>  
            <groupId>org.primefaces</groupId>  
            <artifactId>primefaces</artifactId>  
            <version>2.2.1</version>  
        </dependency>
        <dependency>  
            <groupId>org.primefaces.themes</groupId>  
            <artifactId>vader</artifactId>  
            <version>1.0.1</version> 
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>fm.void.jetm</groupId>
            <artifactId>jetm</artifactId>
            <version>${jetm.version}</version>
        </dependency>
        <dependency>
            <groupId>fm.void.jetm</groupId>
            <artifactId>jetm-optional</artifactId>
            <version>${jetm.version}</version>
        </dependency>

Meine web.xml:
Code:
<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:XXXXX.xml</param-value>
    </context-param>
    <context-param>
        <param-name>log4jConfigLocation</param-name>
        <param-value>classpath:XXXXX.xml</param-value>
    </context-param>
    <context-param>
        <param-name>webAppRootKey</param-name>
        <param-value>sas-web</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>server</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.allowTextChildren</param-name>
        <param-value>true</param-value>
    </context-param>
    [B]<servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>[/B]
    <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>none</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
    </listener>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <listener>
        <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
    </listener>
    <listener>
        <listener-class>etm.contrib.integration.web.EtmMonitorContextListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>performanceMonitor</servlet-name>
        <servlet-class>etm.contrib.integration.web.HttpConsoleServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>performanceMonitor</servlet-name>
        <url-pattern>/performance/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.xhtml</welcome-file>
    </welcome-file-list>

Woran liegt es, dass Jetty das ohne Weiteres schluckt und der Tomcat sich damit schwertut? Die Dependencies werden alle sauber aufgelöst. Ich könnte mir selbst nur 1. eine fehlende Bibliothek für Tomcat oder 2. eine zuviel aus den Obermodulen includierten, aber in Richtung JSF war da eigentlich keine mehr bei.

Abhilfe?
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Java Servlet doPost request, Mehrere Parameter mit demselben Namen aus Tabellenzeilen Web Tier 2
R servlet-mapping führt zu 404-Fehlern Web Tier 0
B Servlet mit TomCat9 Web Tier 0
A redirect mit servlet-mapping in web.xml Web Tier 4
J Wie Mouse Event in Servlet einbinden? Web Tier 1
D JSF Servlet Mapping Web Tier 3
J Session Servlet - JavaScript Web Tier 6
D Servlet 1 Servlet für alles - Wie Cookies per Ajax? Web Tier 1
S Problem mit Checkboxen im Servlet erkennen Web Tier 3
Todesbote Servlet MVC Design Pattern Web Tier 1
A Anfänger-Frage Servlet/Applet/JSP Web Tier 0
Shams Allgemeine Verständnisfrage zum Thema Servlet (in Vaadin) Web Tier 2
H File Output Servlet Web Tier 6
I vTiger Astersik Connector: NO JSP Support for , did not find org.apache.jasper.servlet.JspServlet Web Tier 0
OnDemand Servlet oder JSP Web Tier 12
H Servlet/JSP und OSGI Web Tier 2
L Servlet Datenbank Web Tier 0
D Java EE Servlet login Problem Web Tier 1
W Servlet SPEICHERN UNTER-Dialog für mehrere Dateien Web Tier 4
A Faces Context nicht mehr erreichbar nach Servlet Aufruf Web Tier 1
S Java Bean und Java Servlet Web Tier 2
D Servlet Servlet Weiterleitung static html Web Tier 5
G GWT 404 - Servlet nicht gefunden Web Tier 6
H Applet wirft AccessControlException bei File von Servlet Web Tier 3
H Servlet lässt sich nicht deployen Web Tier 7
C Kommunkation Servlets/Browseraufruf Servlet Web Tier 4
F.S.WhiTeY Servlet Servlet wird nicht angesprochen Web Tier 3
J Servlet Zugriff Servlet Web Tier 11
A JSON von JavaScript an Servlet Web Tier 9
K Servlet + JSP: JSP-Seite ein Array/ArrayList überliefern vom Controller-Servlet Web Tier 8
0 Servlet.Properties Web Tier 3
P Servlet Wo gibt es das javax.servlet.Servlet? Web Tier 2
H Servlet Servlet nimmt HTTP-GET mit Parameter entgegen Web Tier 2
5 Bild Pfad Servlet Web Tier 2
D Datenbankzugriff im Servlet Web Tier 5
H Servlet Apache Geronimo: Servlet nicht erreichbar Web Tier 2
S Ich brauche Buchempfehlung über JSP und Servlet Web Tier 2
A Parameterübergabe an Servlet und Aufruf von Servlets per Java Code Web Tier 7
S Auswahl eine Zeile von einer HTML Tabelle im Servlet Web Tier 4
K Servlet URL Mapping Web Tier 3
S ClassPath für Servlet Web Tier 3
reibi Servlet Logging - Standard Servlet Web Tier 5
K Portlet, Servlet doGet und doPost Web Tier 4
reibi Servlet Alleinlaufendes Servlet bauen Web Tier 6
P Servlet wird nicht gefunden - HTTP Error 503 Web Tier 7
lukas24680 Servlet pro Request Web Tier 2
C Pageing mit JSp&Servlet Web Tier 5
D JSP JSP integriert ein Servlet... Wie? Web Tier 7
I Servlet vor Browser URL-Direktzugriff schützen Web Tier 3
N Servlet ausführen Web Tier 26
B statische Html Seite als response erhalten (Servlet) Web Tier 3
A javax/servlet/jsp/jstl/core/Config Web Tier 1
F Servlet mapping ;-) Web Tier 3
H Servlet Mapping mit JSF Web Tier 8
B (JSP)+(Struts2)+(Servlet) Konfiguration web.xml Web Tier 2
W MVC mit Bean, JSP und Servlet Web Tier 6
T Button im Servlet - Werte übergeben Web Tier 2
J werte per post an servlet übergeben und auswerten Web Tier 3
ruutaiokwu HttpServletRequest-instanz in servlet und JSP unterschiedlich? Web Tier 5
T Bild durch anderes Bild ersetzen mit Servlet Web Tier 3
E Mein erstes Servlet Web Tier 8
S Servlet automatisch aufrufen Web Tier 2
J Kommunikation zwischen Servlet und EJB Web Tier 6
C Image in Servlet Web Tier 2
S Servlet File Upload (API oder JSPSmart download) Web Tier 4
N API Nutzung SERVLET Web Tier 12
J Memory Leak in Servlet nach längere Laufzeit Web Tier 6
ruutaiokwu template engine gesucht ohne abhängigkeit zum servlet container Web Tier 2
G Servlet Ausgabe richtig benutzen Web Tier 4
W Servlet auf sich selbst verweisen lassen (Anfängerfrage) Web Tier 6
M Servlet Ausführungsfehler Web Tier 4
D Servlet alle 6h ausführen Web Tier 5
M Servlet & JSP Organisation Web Tier 2
J seltsames Auslastungsproblem bei Servlet Web Tier 7
ruutaiokwu JSF - läuft ausserhalb des servlet-containers? Web Tier 5
R Direkten Servlet-Aufruf verhindern (JSP) Web Tier 3
K Formularweiterleitung an Servlet Web Tier 5
N Servlet: Problem mit getParameterValues Web Tier 4
J Dateiupload- Servlet Web Tier 14
H Probleme beim Aufrufen von Java- oder Servlet-Methoden aus Javascript Web Tier 2
G Kommunikation Servlet + Applikation Web Tier 4
megachucky Welche Servlet-Version benötigt GWT 2.0? Web Tier 13
X Servlet Select box Web Tier 6
S Java Servlet Content Type Web Tier 3
E Servlet zum speichern einer Datei in einer Datenbank Web Tier 3
M Servlet neuladen Web Tier 2
H Wie wurde ein Servlet aufgerufen Web Tier 2
J Servlet soll XML ausgeben und Javascript soll dieses einlesen Web Tier 3
H servlet fehlermeldung Web Tier 3
W JSP/Servlet Web Applikation programmierung Web Tier 9
J Faces response aus einem anderen Servlet heraus rendern Web Tier 4
E Servlet mit einem Link aufrufen? Web Tier 13
S servlet bedienen mit get und post parameter Web Tier 10
S Laden von globalen Resourcen im Servlet Container..? Web Tier 3
T JBoss + Servlet + HTML Fileupload + Encoding Web Tier 1
2 Servlet: Pfad zu Webcontent Web Tier 6
J Servlet Sicherheit Web Tier 4
J struts2: vom value stack zum servlet Web Tier 14
D Servlet-Klassen und Templates trennen? Web Tier 18
MQue Servlet destroy Web Tier 11

Ähnliche Java Themen

Neue Themen


Oben