Re: Apache Karaf WAR + JSF

2011-02-14 Thread Charles Moulliard
Hi Achim,

In your example, you do not import javax.faces but use requires bundles

Bundle-ClassPath =
.,WEB-INF/classes,WEB-INF/classes/META-INF/myfaces_core.tld,WEB-INF/classes/META-INF/myfaces_html.tld

Import-Package =
javax.servlet;version=2.5.0,
javax.servlet.http;version=2.5.0,
javax.servlet.resources;version=2.1.0,
javax.servlet.jsp;version=2.1.0,
javax.servlet.jsp.jstl.core;version=1.1.2,
javax.servlet.jsp.jstl.fmt;version=1.1.2,
javax.servlet.jsp.jstl.tlv;version=1.1.2,
org.apache.taglibs.standard.resources;version=1.1.2,
org.apache.taglibs.standard.tag.common.core;version=1.1.2,
org.apache.taglibs.standard.tag.rt.core;version=1.1.2,
org.apache.taglibs.standard.tei;version=1.1.2,
org.apache.taglibs.standard.tlv;version=1.1.2
Require-Bundle =
org.apache.myfaces.core.api,
org.apache.myfaces.core.impl

Why don't you import javax.faces classes ?

Here is the MANIFEST file generated for my example

prime-showcase (1979)
-
Archiver-Version = Plexus Archiver
Tool = Bnd-0.0.313
Hudson-Project = Examples - Showcase
Implementation-Version = 1.0.0-SNAPSHOT
Build-Jdk = 1.6.0_13
Generated-By-Ops4j-Pax-From =
wrap:jardir:/Users/charlesmoulliard/Apache/karaf/assembly/target/apache-karaf-2.1.99-SNAPSHOT/deploy/prime-showcase$Bundle-SymbolicName=prime-showcaseBundle-Version=0.0.0
Created-By = 1.6.0_22 (Apple Inc.)
Implementation-Title = prime-showcase
Manifest-Version = 1.0
Bnd-LastModified = 1297674544776
Originally-Created-By = Apache Maven
Hudson-Version = 1.336
Built-By = tomcat6
Extension-Name = prime-showcase
Hudson-Build-Number = 248

Bundle-Name = prime-showcase
Bundle-SymbolicName = prime-showcase
Bundle-Version = 0.0.0
Bundle-ManifestVersion = 2

Private-Package =
.
Import-Package =
WEB-INF;resolution:=optional,
WEB-INF.classes.org.primefaces.examples;resolution:=optional,
WEB-INF.classes.org.primefaces.examples.domain;resolution:=optional,
WEB-INF.classes.org.primefaces.examples.filter;resolution:=optional,
WEB-INF.classes.org.primefaces.examples.service;resolution:=optional,
WEB-INF.classes.org.primefaces.examples.touch;resolution:=optional,
WEB-INF.classes.org.primefaces.examples.view;resolution:=optional,
WEB-INF.lib;resolution:=optional,
com.lowagie.text;resolution:=optional,
com.sun.syndication.feed.synd;resolution:=optional,
com.sun.syndication.io;resolution:=optional,
css;resolution:=optional,
design;resolution:=optional,
facestrace;resolution:=optional,
images;resolution:=optional,
images.antalya;resolution:=optional,
images.barca;resolution:=optional,
images.cars;resolution:=optional,
images.dock;resolution:=optional,
images.folders;resolution:=optional,
images.galleria;resolution:=optional,
images.godfather;resolution:=optional,
images.layout;resolution:=optional,
images.macosx;resolution:=optional,
images.picklist;resolution:=optional,
images.stack;resolution:=optional,
images.touch;resolution:=optional,
javax.annotation;resolution:=optional,
javax.faces.application;resolution:=optional,
javax.faces.component;resolution:=optional,
javax.faces.context;resolution:=optional,
javax.faces.convert;resolution:=optional,
javax.faces.event;resolution:=optional,
javax.faces.model;resolution:=optional,
javax.imageio.stream;resolution:=optional,
javax.servlet;resolution:=optional,
net.sourceforge.barbecue;resolution:=optional,
org.apache.poi.hssf.usermodel;resolution:=optional,
org.jfree.chart;resolution:=optional,
org.jfree.data.general;resolution:=optional,
org.primefaces.comet;resolution:=optional,
org.primefaces.component.chart.series;resolution:=optional,
org.primefaces.component.menuitem;resolution:=optional,
org.primefaces.component.submenu;resolution:=optional,
org.primefaces.component.tabview;resolution:=optional,
org.primefaces.context;resolution:=optional,
org.primefaces.event;resolution:=optional,
org.primefaces.event.map;resolution:=optional,
org.primefaces.examples.domain;resolution:=optional,
org.primefaces.examples.filter;resolution:=optional,
org.primefaces.examples.service;resolution:=optional,
org.primefaces.examples.touch;resolution:=optional,
org.primefaces.examples.view;resolution:=optional,
org.primefaces.model;resolution:=optional,
org.primefaces.model.chart;resolution:=optional,
org.primefaces.model.map;resolution:=optional,
syntaxhighlighter.scripts;resolution:=optional,
syntaxhighlighter.styles;resolution:=optional,
templates;resolution:=optional,

Re: Apache Karaf WAR + JSF

2011-02-11 Thread Guillaume Nodet
Also, make sure the jsf-api isn't deployed as an OSGi bundle, else
that one could be used and it would not be able to find the
implementation inside the jar.

On Fri, Feb 11, 2011 at 09:22, Charles Moulliard cmoulli...@gmail.com wrote:
 The WAR contains the spec and the implementation.

 aristo-1.0.0.jar
 barbecue-1.5-beta1.jar
 bcmail-jdk14-1.38.jar
 bcmail-jdk14-138.jar
 bcprov-jdk14-1.38.jar
 bcprov-jdk14-138.jar
 bctsp-jdk14-1.38.jar
 black-tie-1.0.0.jar
 blitzer-1.0.0.jar
 bluesky-1.0.0.jar
 casablanca-1.0.0.jar
 commons-fileupload-1.2.1.jar
 commons-io-1.4.jar
 commons-logging-1.1.1.jar
 cupertino-1.0.0.jar
 dark-hive-1.0.0.jar
 dot-luv-1.0.0.jar
 eggplant-1.0.0.jar
 excite-bike-1.0.0.jar
 facestrace-1.1.0.jar
 flick-1.0.0.jar
 hot-sneaks-1.0.0.jar
 humanity-1.0.0.jar
 itext-2.1.7.jar
 jcommon-1.0.0.jar
 jdom-1.0.jar
 jfreechart-1.0.0.jar

 --
 jsf-api-2.0.4-b09.jar
 jsf-impl-2.0.4-b09.jar
 --

 jstl-1.2.jar
 junit-3.8.jar
 le-frog-1.0.0.jar
 log4j-1.2.13.jar
 midnight-1.0.0.jar
 mint-choc-1.0.0.jar
 overcast-1.0.0.jar
 pepper-grinder-1.0.0.jar
 poi-3.2-FINAL.jar
 primefaces-3.0-SNAPSHOT.jar
 redmond-1.0.0.jar
 rocket-1.0.0.jar
 rome-1.0.jar
 smoothness-1.0.0.jar
 south-street-1.0.0.jar
 start-1.0.0.jar
 sunny-1.0.0.jar
 swanky-purse-1.0.0.jar
 trontastic-1.0.0.jar
 ui-darkness-1.0.0.jar
 ui-lightness-1.0.0.jar
 vader-1.0.0.jar


 On Fri, Feb 11, 2011 at 5:06 AM, David Jencks david_jen...@yahoo.com wrote:
 You need both the api jar and the implementation in your war.  Which jsf 
 implementation?

 You might consider trying myfaces-bundle deployed outside your web app 
 (removing jsf jars from the web app). This works find in geronimo but I'm 
 not sure at the moment if we do extra initialization to get around this 
 problem.


 thanks
 david jencks


 On Feb 10, 2011, at 5:33 AM, Charles Moulliard wrote:

 Hi,

 I have deployed a WAR project on Karaf which is JSF technology based
 but get this issue :

 14:05:19,408 | WARN  | FelixStartLevel  | war
    | .eclipse.jetty.util.log.Slf4jLog   50 | 1834 -
 org.eclipse.jetty.util - 7.2.2.v20101205 | unavailable
 java.lang.IllegalStateException: Application was not properly
 initialized at startup, could not find Factory:
 javax.faces.context.FacesContextFactory
       at 
 javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:804)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
       at 
 javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
       at 
 javax.faces.webapp.FacesServlet.init(FacesServlet.java:166)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
       at 
 org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:432)[1842:org.eclipse.jetty.servlet:7.2.2.v20101205]
       at 
 org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:260)[1842:org.eclipse.jetty.servlet:7.2.2.v20101205]
       at 
 org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)[1834:org.eclipse.jetty.util:7.2.2.v20101205]

 The lib directory of the WAR contains well the jar of jsf api --
 jsf-api-2.0.4-b09

 Remark : the same WAR deployed on Tomcat works fine

 Is it something that you already experienced ?

 Regards,

 Charles Moulliard

 Sr. Principal Solution Architect - FuseSource
 Apache Committer

 Blog : http://cmoulliard.blogspot.com
 Twitter : http://twitter.com/cmoulliard
 Linkedin : http://www.linkedin.com/in/charlesmoulliard
 Skype: cmoulliard






-- 
Cheers,
Guillaume Nodet

Blog: http://gnodet.blogspot.com/

Open Source SOA
http://fusesource.com


Re: Apache Karaf WAR + JSF

2011-02-11 Thread Jean-Baptiste Onofré

Could you make:

la|grep -i jsf

to see if JSF api and implementation are not outside your bundle.
Else you have to use fragment to gather all in the same classloader.

Regards
JB

On 02/11/2011 09:22 AM, Charles Moulliard wrote:

The WAR contains the spec and the implementation.

aristo-1.0.0.jar
barbecue-1.5-beta1.jar
bcmail-jdk14-1.38.jar
bcmail-jdk14-138.jar
bcprov-jdk14-1.38.jar
bcprov-jdk14-138.jar
bctsp-jdk14-1.38.jar
black-tie-1.0.0.jar
blitzer-1.0.0.jar
bluesky-1.0.0.jar
casablanca-1.0.0.jar
commons-fileupload-1.2.1.jar
commons-io-1.4.jar
commons-logging-1.1.1.jar
cupertino-1.0.0.jar
dark-hive-1.0.0.jar
dot-luv-1.0.0.jar
eggplant-1.0.0.jar
excite-bike-1.0.0.jar
facestrace-1.1.0.jar
flick-1.0.0.jar
hot-sneaks-1.0.0.jar
humanity-1.0.0.jar
itext-2.1.7.jar
jcommon-1.0.0.jar
jdom-1.0.jar
jfreechart-1.0.0.jar

--
jsf-api-2.0.4-b09.jar
jsf-impl-2.0.4-b09.jar
--

jstl-1.2.jar
junit-3.8.jar
le-frog-1.0.0.jar
log4j-1.2.13.jar
midnight-1.0.0.jar
mint-choc-1.0.0.jar
overcast-1.0.0.jar
pepper-grinder-1.0.0.jar
poi-3.2-FINAL.jar
primefaces-3.0-SNAPSHOT.jar
redmond-1.0.0.jar
rocket-1.0.0.jar
rome-1.0.jar
smoothness-1.0.0.jar
south-street-1.0.0.jar
start-1.0.0.jar
sunny-1.0.0.jar
swanky-purse-1.0.0.jar
trontastic-1.0.0.jar
ui-darkness-1.0.0.jar
ui-lightness-1.0.0.jar
vader-1.0.0.jar


On Fri, Feb 11, 2011 at 5:06 AM, David Jencksdavid_jen...@yahoo.com  wrote:

You need both the api jar and the implementation in your war.  Which jsf 
implementation?

You might consider trying myfaces-bundle deployed outside your web app 
(removing jsf jars from the web app). This works find in geronimo but I'm not 
sure at the moment if we do extra initialization to get around this problem.


thanks
david jencks


On Feb 10, 2011, at 5:33 AM, Charles Moulliard wrote:


Hi,

I have deployed a WAR project on Karaf which is JSF technology based
but get this issue :

14:05:19,408 | WARN  | FelixStartLevel  | war
| .eclipse.jetty.util.log.Slf4jLog   50 | 1834 -
org.eclipse.jetty.util - 7.2.2.v20101205 | unavailable
java.lang.IllegalStateException: Application was not properly
initialized at startup, could not find Factory:
javax.faces.context.FacesContextFactory
   at 
javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:804)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
   at 
javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
   at 
javax.faces.webapp.FacesServlet.init(FacesServlet.java:166)[1957:file__Users_charlesmoulliard_Apache_karaf_assembly_target_apache-karaf-2.1.99-SNAPSHOT_deploy_prime-showcase-1.0.0-SNAPSHOT.war:0]
   at 
org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:432)[1842:org.eclipse.jetty.servlet:7.2.2.v20101205]
   at 
org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:260)[1842:org.eclipse.jetty.servlet:7.2.2.v20101205]
   at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)[1834:org.eclipse.jetty.util:7.2.2.v20101205]

The lib directory of the WAR contains well the jar of jsf api --
jsf-api-2.0.4-b09

Remark : the same WAR deployed on Tomcat works fine

Is it something that you already experienced ?

Regards,

Charles Moulliard

Sr. Principal Solution Architect - FuseSource
Apache Committer

Blog : http://cmoulliard.blogspot.com
Twitter : http://twitter.com/cmoulliard
Linkedin : http://www.linkedin.com/in/charlesmoulliard
Skype: cmoulliard