# JSF mit Tobago Problem: ServletContextListener



## Mary (2. Mrz 2012)

Hi,

ich würde mir gerne die Tobago Implementierung ein bisschen näher ansehen und habe dazu das Beispiel von myFaces (Download MyFaces Tobago) für Tobago runtergeladen, aber schon das läuft nicht.

Ich bekomme immer den Fehler:


```
PM org.apache.cataline.core.StandardContext addAplicationLIstener
Information: The listener org.apache.myfaces.tobago.webapp.tobagoServletContextListener is already configured for this context.
The duplicate definition has been ignored
```

Ich finde auch keine Anleitung auf MyFaces wie genau ich Tobago einbinden soll oder das Beispiel.

Alles was ich im Internet gefunden habe, deckt sich eigentlich mit dem Beispiel, also stimmt eigentlich alles soweit.

Hier mal die web.xml mit dem ServletContextListener

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

<!--
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
-->

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

  <display-name>Blank Tobago Application</display-name>

  <filter>
    <filter-name>multipartFormdataFilter</filter-name>
    <filter-class>org.apache.myfaces.tobago.webapp.TobagoMultipartFormdataFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>multipartFormdataFilter</filter-name>
    <url-pattern>/faces/*</url-pattern>
  </filter-mapping>

<!--  workaround (e.g. for Oracle AS 10.1.2.0.0)-->
  <listener>
    <listener-class>org.apache.myfaces.tobago.webapp.TobagoServletContextListener</listener-class>
  </listener>

  <!-- servlet -->
<!-- no longer needed since Weblogic 8.1 SP 3
  <servlet>
    <servlet-name>WeblogicWorkaroundServlet</servlet-name>
    <servlet-class>org.apache.myfaces.tobago.webapp.WeblogicWorkaroundServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
-->

  <servlet>
    <servlet-name>FacesServlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>3</load-on-startup>
  </servlet>

  <servlet>
    <servlet-name>ResourceServlet</servlet-name>
    <servlet-class>org.apache.myfaces.tobago.servlet.ResourceServlet</servlet-class>
  </servlet>

  <!-- servlet-mapping -->

  <servlet-mapping>
    <servlet-name>FacesServlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>ResourceServlet</servlet-name>
    <url-pattern>/org/apache/myfaces/tobago/renderkit/*</url-pattern>
  </servlet-mapping>

  <!-- The Usual Welcome File List -->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

</web-app>

[/XML]

Kann mir vll jemand weiterhelfen?


----------



## nillehammer (2. Mrz 2012)

> Information: The listener org.apache.myfaces.tobago.webapp.tobagoServletContextListener is already configured for this context.
> The duplicate definition has been ignored


Das ist ja erstmal nur 'ne Info. Soo schlimm ist das also nicht. Die Webapp sollte dennoch laufen. Gibt's noch andere Probleme?

Falls Dich das trotdem nervt, versuch mal, den entsprechenden Abschnitt der web.xml auszukommentieren, ungefähr so:
[XML]
<!--  workaround (e.g. for Oracle AS 10.1.2.0.0)-->
<!-- Auskommentiert, um Doppelregistrierung zu vermeiden 
  <listener>
    <listener-class>org.apache.myfaces.tobago.webapp.TobagoServletContextListener</listener-class>
  </listener>
-->
[/XML]


----------



## Mary (2. Mrz 2012)

das Problem ist, das es im Browser nicht läuft, also wenn ichs aufrufen möchte kommt


```
The requested resource (/Mypetstore_Tobago-example) is not available.
```



> Falls Dich das trotdem nervt, versuch mal, den entsprechenden Abschnitt der web.xml auszukommentieren, ungefähr so:



Auskommentieren hab ich schon versucht, dann kommt der Fehler:

```
Schwerwiegend: Error listenerStart
PM org.apache.catalina.core.StandardContext startInternal
```

Aber das sind eigentlich auch immer nur die einzigsten Zeilen die ausgegeben werden, wenn ich das deployen möchte


----------



## tagedieb (3. Mrz 2012)

Ich hatte dasselbe Problem.
Da scheint ein Problem mit den Libraries im "Example" Package zu geben. 
Ich habe die neusten MyFaces (2.1.6) und Tobago (1.5.3) Distribution runtergeladen und die Libs im ..exmple.war ersetzt. 

Tata.. jetzt laeuft es. Ich hab den Grund leider auch nicht rauskriegen koennen. Habs aber auf eines der Konfigurations-File im META-INF Folder eines dieser .jars einschraenken koennen.


----------



## Mary (3. Mrz 2012)

super danke, nachdem ich die MyFaces (2.1.6) hinzugefügt hatte war der Fehler weg. Hatte dann nur den Fehler NoClassdef found.... java..logging.
Hab dann einfach noch die commons-logging.jar hinzugefügt und dann liefs.

vielen Dank, wär ich wohl alleine nicht draufgekommen dass in der Beispielanwendung die libs nicht stimmen^^


----------



## tagedieb (3. Mrz 2012)

Ja, das isch schon übel.. hab mir die Apache JSF implementierungen auch mal angeschaut aber die Fehlerhaften Beispiele haben mich dann doch abgeschreckt.

Ich bin mit ICEfaces, PrimeFaces und RichFaces ganz zufrieden. Zum Glueck gibt's ja genuegend alternativen.


----------

