David, you are right. Further investigation, looks like
'Import-package''s contents is the combination of of all Manifest
files in all jar files belonging to my WEB-INF/lib

Thanks

-D

On Fri, Mar 4, 2011 at 3:58 PM, Dan Tran <[email protected]> wrote:
> The Bundle-ClassPath has all my compile, runtime dependencies so I
> wonder why Karaf cares about Import-Package'.  Perhaps, Virgo works
> out of the box since It does not look at 'Import-Package'
>
> Here is subset of my MANIFEST, the weird thing is 'Import Package' has
> some other package that I would think i need ( ie Bsh, caucho, etc ),
> but no javax.faces.* org.springframework.context.*
> do I have proper maven-bundle-plugin's configuration?
>
>
> Manifest-Version: 1.0
> Embed-Directory: WEB-INF/lib
> Bundle-ClassPath: .,WEB-INF/classes,WEB-INF/lib/hibernate-jpa-2.0-api-
>  1.0.0.Final.jar,WEB-INF/lib/shiro-core-1.1.0.jar,WEB-INF/lib/commons-
>  beanutils-1.8.3.jar,WEB-INF/lib/spring-jdbc-3.0.5.RELEASE.jar,WEB-INF
>  /lib/log4j-1.2.14.jar,WEB-INF/lib/spring-tx-3.0.5.RELEASE.jar,WEB-INF
>  /lib/commons-digester-2.1.jar,WEB-INF/lib/aspectjtools-1.5.4.jar,WEB-
>  INF/lib/spring-expression-3.0.5.RELEASE.jar,WEB-INF/lib/commons-loggi
>  ng-1.1.1.jar,WEB-INF/lib/commons-dbcp-1.4.jar,WEB-INF/lib/mc-user-1.0
>  .0.CI-SNAPSHOT.jar,WEB-INF/lib/spring-context-3.0.5.RELEASE.jar,WEB-I
>  NF/lib/mc-mgmt-1.0.0.CI-SNAPSHOT.jar,WEB-INF/lib/aspectjrt-1.5.4.jar,
>  WEB-INF/lib/mc-dbsetup-1.0.0.CI-SNAPSHOT.jar,WEB-INF/lib/bluesky-1.0.
>  0.jar,WEB-INF/lib/myfaces-bundle-2.0.4.jar,WEB-INF/lib/javassist-3.12
>  .0.GA.jar,WEB-INF/lib/primefaces-2.2.1.jar,WEB-INF/lib/commons-lang-2
>  .5.jar,WEB-INF/lib/hibernate-entitymanager-3.6.1.Final.jar,WEB-INF/li
>  b/plexus-utils-2.0.5.jar,WEB-INF/lib/aopalliance-1.0.jar,WEB-INF/lib/
>  jcommon-1.0.16.jar,WEB-INF/lib/mc-config-1.0.0.CI-SNAPSHOT.jar,WEB-IN
>  F/lib/shiro-spring-1.1.0.jar,WEB-INF/lib/jta-1.1.jar,WEB-INF/lib/jcl-
>  over-slf4j-1.6.1.jar,WEB-INF/lib/spring-asm-3.0.5.RELEASE.jar,WEB-INF
>  /lib/spring-web-3.0.5.RELEASE.jar,WEB-INF/lib/hibernate-commons-annot
>  ations-3.2.0.Final.jar,WEB-INF/lib/derby-10.6.2.1.jar,WEB-INF/lib/com
>  mons-io-1.4.jar,WEB-INF/lib/antlr-2.7.6.jar,WEB-INF/lib/cglib-2.2.jar
>  ,WEB-INF/lib/shiro-web-1.1.0.jar,WEB-INF/lib/cglib-nodep-2.2.jar,WEB-
>  INF/lib/jfreechart-1.0.13.jar,WEB-INF/lib/commons-collections-3.2.jar
>  ,WEB-INF/lib/commons-codec-1.4.jar,WEB-INF/lib/h2-1.2.147.jar,WEB-INF
>  /lib/jstl-api-1.2.jar,WEB-INF/lib/slf4j-api-1.6.1.jar,WEB-INF/lib/dom
>  4j-1.6.1.jar,WEB-INF/lib/spring-beans-3.0.5.RELEASE.jar,WEB-INF/lib/s
>  lf4j-log4j12-1.6.1.jar,WEB-INF/lib/spring-aop-3.0.5.RELEASE.jar,WEB-I
>  NF/lib/commons-pool-1.5.4.jar,WEB-INF/lib/spring-core-3.0.5.RELEASE.j
>  ar,WEB-INF/lib/jstl-impl-1.2.jar,WEB-INF/lib/asm-3.1.jar,WEB-INF/lib/
>  mc-common-1.0.0.CI-SNAPSHOT.jar,WEB-INF/lib/commons-fileupload-1.2.2.
>  jar,WEB-INF/lib/mc-theme-1.0.0.CI-SNAPSHOT.jar,WEB-INF/lib/spring-orm
>  -3.0.5.RELEASE.jar,WEB-INF/lib/hibernate-core-3.6.1.Final.jar
> Built-By: dan.tran
> Tool: Bnd-1.15.0
> Bundle-Name: My- WebApp
> Created-By: Apache Maven Bundle Plugin
> Web-ContextPath: mc
> Bundle-Vendor: My Company
> Build-Jdk: 1.6.0_22
> Bundle-Version: 1.0.0.CI-SNAPSHOT
> Bnd-LastModified: 1299278178006
> Embed-Transitive: true
> Bundle-ManifestVersion: 2
> Bundle-Description: My WebApp
> Embed-Dependency: *;scope=compile|runtime
> Import-Package: bsh;resolution:=optional,com.caucho.burlap.client;reso
>  lution:=optional,com.caucho.burlap.io;resolution:=optional,com.caucho
>  .burlap.server;resolution:=optional,com.caucho.hessian;resolution:=op
>  tional,com.caucho.hessian.client;resolution:=optional,com.caucho.hess
>  ian.io;resolution:=optional,com.caucho.hessian.server;resolution:=opt
>  ional,com.google.inject;resolution:=optional,com.ibatis.common.xml;re
>  solution:=optional,com.ibatis.sqlmap.client;resolution:=optional,com.
>  ibatis.sqlmap.client.event;resolution:=optional,com.ibatis.sqlmap.eng
>
>
> Thanks
>
> -Dan
>
> On Fri, Mar 4, 2011 at 3:28 PM, David Jencks <[email protected]> wrote:
>> I think your embed instructions will result in your jsf implementation and 
>> probably spring dependencies being embedded in your war??  If so they 
>> wouldn't need to also be imported.
>>
>> Maybe not all the required spring dependencies are included?
>>
>> david jencks
>>
>> On Mar 4, 2011, at 2:46 PM, Dan Tran wrote:
>>
>>> Base on suggestion from this forum, i now have 2 choice
>>>
>>>  1. Generate manifest  using maven-bundle-plugin
>>>
>>>  2. Debug it
>>>
>>>
>>> I start with 1 any way to get a deep understanding of OSGI MANIFEST
>>> file.  However the the generated file's Import-Package does not have
>>> the import ant javax.faces.* and org.springframework.
>>> This may explain why it bails on me at start up
>>>
>>> java.lang.IllegalAccessError: tried to access class
>>> org.springframework.beans.factory.config.PropertyPlaceholderConfigurer$PlaceholderResolvingStringValueResolver
>>> from class 
>>> org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
>>>        at 
>>> org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:274)
>>>        at 
>>> org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:75)
>>>        at 
>>> org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663)
>>>        at 
>>> org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:638)
>>>        at 
>>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
>>>        at 
>>> org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
>>>        at 
>>> org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
>>>
>>> and my maven-bundle-plugin's instructions is
>>>
>>>              <instructions>
>>>                <Web-ContextPath>${project.build.finalName}</Web-ContextPath>
>>>
>>> <Bundle-SymbolicName>${project.groupId}.web</Bundle-SymbolicName>
>>>                <Bundle-Version>${project.version}</Bundle-Version>
>>>                <Bundle-ClassPath>.,WEB-INF/classes</Bundle-ClassPath>
>>>                <Embed-Directory>WEB-INF/lib</Embed-Directory>
>>>                <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
>>>                <Embed-Transitive>true</Embed-Transitive>
>>>                <Import-Package>*;resolution:=optional</Import-Package>
>>>                <Export-Package></Export-Package>
>>>              </instructions>
>>>
>>>
>>> Big thanks ahead for all the helps
>>>
>>> -Da
>>>
>>> On Thu, Mar 3, 2011 at 1:10 AM, Achim Nierbeck <[email protected]> 
>>> wrote:
>>>> Hi Dan,
>>>>
>>>> this might be an issue with pax-web right now.
>>>> Depending on the version of Karaf you are using JSF isn't supported at all.
>>>> If you are using Karaf 2.1.x JSF isn't supported by Pax-Web (0.8.x)
>>>> If you are using Karaf 2.2.x JSF should work (Pax-web 1.0.1), but I'm
>>>> not quite sure that everything is properly working yet, haven't had
>>>> the time to check this in detail.
>>>> Concerning your startup class, are you already creating  a Manifest
>>>> for your war?
>>>> If not, the servlet class is not interpreted yet. There is a issue for
>>>> pax-url I was working on
>>>> but haven't tested yet if this works for all use cases.
>>>> (http://issues.ops4j.org/browse/PAXURL-107)
>>>>
>>>> This is the current state.
>>>> My suggestion is to create a manifest for your war, the
>>>> maven-bundle-plugin in version 2.3.4 does support wars.
>>>>
>>>> Greetings Achim
>>>>
>>>> 2011/3/3 Dan Tran <[email protected]>:
>>>>> I am using mojarra 2.1.0-b11 and 2.0.4-b09, switching to myfaces 2.0.4
>>>>> gives me further error like this
>>>>>
>>>>> 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 applic
>>>>> ck 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;
>>>>> <listener>
>>>>>  <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
>>>>> </listener>
>>>>>
>>>>>        at 
>>>>> javax.faces.FactoryFinder.getFactory(FactoryFinder.java:196)[219:mc:0.0.0]
>>>>>
>>>>> -D
>>>>>
>>>>>
>>>>> On Thu, Mar 3, 2011 at 12:52 AM, Charles Moulliard <[email protected]> 
>>>>> wrote:
>>>>>> Hi,
>>>>>>
>>>>>> This is an issue that I experienced some weeks ago with a JSF project
>>>>>> based on PrimeFaces. Can you tell me if the JSF (spec) and
>>>>>> implementation lib are embedded into your bundle or deployed
>>>>>> separately ?
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Charles Moulliard
>>>>>> Apache Committer
>>>>>>
>>>>>> Blog : http://cmoulliard.blogspot.com
>>>>>> Twitter : http://twitter.com/cmoulliard
>>>>>> Linkedin : http://www.linkedin.com/in/charlesmoulliard
>>>>>> Skype: cmoulliard
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Mar 3, 2011 at 9:32 AM, Dan Tran <[email protected]> wrote:
>>>>>>> ouch, I will need to temporary add simple onelines bean definitions
>>>>>>> for all the annotated beans. But that is ok
>>>>>>>
>>>>>>> NowI run into
>>>>>>>
>>>>>>> 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:815)[211:mc:0.0.0]
>>>>>>>        at 
>>>>>>> javax.faces.FactoryFinder.getFactory(FactoryFinder.java:317)[211:mc:0.0.0]
>>>>>>>        at 
>>>>>>> javax.faces.webapp.FacesServlet.init(FacesServlet.java:253)[211:mc:0.0.0]
>>>>>>>        at 
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:432)[199:org.eclipse.jetty.servlet:7.2.2.v20101205]
>>>>>>>        at 
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:260)[199:org.eclipse.jetty.servlet:7.2.2.v20101205]
>>>>>>>        at 
>>>>>>> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)[193:org.eclipse.jetty.util:7.2.2.v20101205]
>>>>>>>        at 
>>>>>>> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:762)[199:org.eclipse.jetty.servlet:7.2.2.v20101205]
>>>>>>>
>>>>>>> Big Thanks
>>>>>>>
>>>>>>> -Dan
>>>>>>>
>>>>>>> On Wed, Mar 2, 2011 at 11:52 PM, Charles Moulliard 
>>>>>>> <[email protected]> wrote:
>>>>>>>> Hi Dan,
>>>>>>>>
>>>>>>>> Can you make a test using <context:annotation-config/> instead of
>>>>>>>> <context:component-scan> (see here for more info -
>>>>>>>> http://wiki.ops4j.org/display/ops4j/Pax+Web+Extender+-+War+-+Examples)
>>>>>>>> to see if the error is still there ?
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Charles
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Mar 3, 2011 at 8:33 AM, Dan Tran <[email protected]> wrote:
>>>>>>>>> Hi Charles , thank you for looking into this issue:
>>>>>>>>>
>>>>>>>>> Here is the stack trace
>>>>>>>>>
>>>>>>>>> Problem accessing /mc/index.jsp. Reason:
>>>>>>>>>
>>>>>>>>>    Error creating bean with name 'shiroFilter' defined in
>>>>>>>>> ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot
>>>>>>>>> resolve reference to bean 'securityManager' while setting bean
>>>>>>>>> property 'securityManager'; nested exception is
>>>>>>>>> org.springframework.beans.factory.BeanCreationException: Error
>>>>>>>>> creating bean with name 'securityManager' defined in ServletContext
>>>>>>>>> resource [/WEB-INF/applicationContext.xml]: Cannot resolve reference
>>>>>>>>> to bean 'localRealm' while setting bean property 'realm'; nested
>>>>>>>>> exception is 
>>>>>>>>> org.springframework.beans.factory.NoSuchBeanDefinitionException:
>>>>>>>>> No bean named 'localRealm' is defined
>>>>>>>>>        at 
>>>>>>>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)[93:mc:0.0.0]
>>>>>>>>>        at 
>>>>>>>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)[93:mc:0.0.0]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> This means my 'shiroBean' is defined in applicationContext.xml which
>>>>>>>>> needs to reference 'securityContext' , also defined in the same Spring
>>>>>>>>> xml file, which then requires 'localRealm' bean which is annotated via
>>>>>>>>> Spring @Component.
>>>>>>>>>
>>>>>>>>> If I manually add my 'localRealm' to the Spring XML,  then same issue
>>>>>>>>> happens on other annotated bean.
>>>>>>>>>
>>>>>>>>> It sound like ' <context:component-scan ...' got muted ( no problem
>>>>>>>>> under Virgo )
>>>>>>>>>
>>>>>>>>> I you see no hints from this log, i will try to scale down the project
>>>>>>>>> and post it
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>>
>>>>>>>>> -D
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Mar 2, 2011 at 10:44 PM, Charles Moulliard 
>>>>>>>>> <[email protected]> wrote:
>>>>>>>>>> Hi Dan,
>>>>>>>>>>
>>>>>>>>>> Can you provide us the exception generated in the stack trace of 
>>>>>>>>>> Karaf
>>>>>>>>>> (using command log:display -n 10) and maybe a test case or the war
>>>>>>>>>> used to reproduce the error and check what happens ?
>>>>>>>>>>
>>>>>>>>>> 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
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Mar 3, 2011 at 3:53 AM, Dan Tran <[email protected]> wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> I have a JSF 2.0 + Spring + JPA 2.0 standalone webapp loading fine 
>>>>>>>>>>> on
>>>>>>>>>>> Eclipse Virgo 2.1[1], but not with Karaf.  It seems like no Spring
>>>>>>>>>>> annotated beans can be created. No problem creating beans via XML
>>>>>>>>>>> configuration thou.
>>>>>>>>>>>
>>>>>>>>>>> Any advice for me to trouble this issue?  or Have any one 
>>>>>>>>>>> successfully
>>>>>>>>>>> get this combination working?
>>>>>>>>>>>
>>>>>>>>>>> Big thanks ahead
>>>>>>>>>>>
>>>>>>>>>>> -Dan
>>>>>>>>>>>
>>>>>>>>>>> PS: I see the same issue with Karaf 2.1.4
>>>>>>>>>>>
>>>>>>>>>>> [1] 
>>>>>>>>>>> http://www.eclipse.org/forums/index.php?t=msg&goto=657502&S=b35e653a8e2ccc6da8734a1cfb0eed16
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>
>>
>

Reply via email to