title: Shared library with newer version of MyFaces on WebSphere 8.5
body: <p>I'm migrating applications from WebSphere 7.0 to WebSphere 8.5. WebSphere 8.5 uses older version of MyFaces (2.0.2) than we use (2.0.7) so I've tried to configure the newer version in the same way as under WAS 7.0, that is, using <em>shared library</em>.</p>
  <p>I've configured shared library with the following jars:</p>
  <pre><code>myfaces-api-2.0.7.jar
  myfaces-impl-2.0.7.jar
  commons-logging-1.1.1.jar
  commons-digester-1.8.jar
  commons-collections-3.2.jar
  commons-codec-1.3.jar
  </code></pre>
  <p>I've checked the option <code>Use an isolated class loader for this shared library </code>. I've got the error:</p>
  <blockquote>
  <p>com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E:
  [Servlet Error]-[Faces Servlet]: java.lang.IllegalStateException: No
  Factories configured for this Application. This happens if the
  faces-initialization does not work at all - make sure that you
  properly include all configuration settings necessary for a basic
  faces application and that all the necessary libs are included. Also
  check the logging output of your web application and your container
  for any exceptions! If you did that and find nothing, the mistake
  might be due to the fact that you use some special web-containers
  which do not support registering context-listeners via TLD files and a
  context listener is not setup in your web.xml. A typical config looks
  like this;</p>
  </blockquote>
  <pre><code>&lt;listener&gt;
    &lt;listener-class&gt;org.apache.myfaces.webapp.StartupServletContextListener&lt;/listener-class&gt;
  &lt;/listener&gt;
  </code></pre>
  <blockquote>
  <p>at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:196)     at
  javax.faces.webapp.FacesServlet.init(FacesServlet.java:112)   at
  com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:337)</p>
  </blockquote>
  <p>The same configuration worked on WAS 7.0, with the exception that there was an additional jar configured in the shared library:</p>
  <blockquote>
  <p>C:\IBM\SDP\runtimes\base_v7\optionalLibraries\IBM\JSFProviders\WebSphere-MyFaces20-annotation-provider.jar</p>
  </blockquote>
  <p>What is wrong here? Do I need to specify something in place of that <code>WebSphere-MyFaces20-annotation-provider.jar</code>? I wasn't able to find any example of configuring such shared library for WAS 8.5. There's only <a href="http://wasbehindtheglass.blogspot.de/2011/11/myfaces-20-and-websphere-application.html" rel="nofollow noreferrer">that for WAS 7.0</a>, that I've used successfully on WAS 7.0.</p>